Kullanıcıların aşağıdaki işlemleri yapabilmesi için Wear OS uygulamalarının telefondan bağımsız olarak çalışmasını öneririz: Android veya iOS telefona erişmeden kol saatinde görevleri tamamlayabilir. Saat uygulamanız telefon etkileşimi gerektirdiğinden, Wear OS uygulamanızı bağımsız değil olarak işaretlemeniz gerekir ve kullanıcının telefon uygulamasını kullanabileceğinden emin olmak için gerekli adımları atın.
Uygulamanızı planlayın
Android App Bundle'ı kullanabilirsiniz Android Package Kit'leri (APK'lar), en iyi uygulamaları gözden geçiriyorum. Bu sayede kullanıcılar yalnızca indirmeleri gereken kod ve kaynakları yardımcı olabilir.
Uygulamanızı Google Ads için bkz. Wear OS Uygulamalarını paketleme ve dağıtma ile birlikte kullanmaya başlama kılavuzu Android App Bundle'ları
Yeni uygulamalar için hedef API düzeyi 30 veya daha yüksek olmalıdır. Daha fazla bilgi için bkz.
Google Play'in hedef API'siyle tanışın
düzeyi şartı hakkında daha fazla bilgi edinin. Ayarlayın:
Uygulamanızın iyi çalıştığından emin olmak için targetSdkVersion
ile API düzeyi 30'a (Wear OS 3) geçiş
sürümünü kullanabilirsiniz.
Ağ istekleri ve yüksek bant genişlikli ağ erişimi hakkında bilgi için bkz. Wear OS'te ağ erişimi ve senkronizasyonu.
Bir uygulamayı Wear OS uygulaması olarak tanımlama
<uses-feature>
etiketini, uygulamanızın Android manifest dosyasında tanımlamanız gerekir.
Bunun bir saat uygulaması olduğunu belirtmek için aşağıdaki gibi bir giriş ekleyin:
<manifest> ... <uses-feature android:name="android.hardware.type.watch" /> ... </manifest>
Bir uygulamayı bağımsız veya bağımsız değil olarak tanımlama
Saat uygulaması bağımsız veya bağımsız değil olarak kabul edilir:
- Bağımsız: Temel uygulama için telefon uygulaması gerektirmeyen, tamamen bağımsız bir uygulama. özellikleri. "Telefonda aç" olsa da istemler kabul edilebilirse uygulama, alternatif kullanıcıların kısa bağlantı veya QR kodu gibi bir uygulama işlevini paylaşma'yı seçeceğim.
- Bağımsız olmayan: Telefondaki veya başka bir cihazdaki uygulamayı gerektiren bağımlı bir uygulama. temel özellikler. Bu seçenek, QR kodu veya kısa bağlantı gibi alternatif bir yöntem kimlik doğrulama gibi temel bir uygulama işlevini tamamlama.
Not: Bağımsız olmayan uygulamalarda bile kullanıcılar Mobil uygulamadan önce Wear OS uygulamasını kullanın. Wear OS uygulamanız, Yakındaki avuç içi cihazda gerekli tamamlayıcı uygulama yok, kullanıcıya istem göster tıklayın.
Google, uygulama sırasında bir uygulamanın bağımsız durumunun doğruluğunu doğrular yardımcı olur. Bu değer, Play Store'daki uygulamaların görünürlüğünü etkiler. avuç içi cihazla eşlenmemiş Wear OS cihazları gibi internet bağlantısı olmayan cihazlar cihazlar. Bağımsız olmayan uygulamaların yanı sıra geliştiricilerin yanlış şekilde bildirdiği uygulamalar "bağımsız" olarak atama (tethering yapılmayan bu cihazlardaki kullanıcılar tarafından kullanılamaz) cihazlar.
Wear OS uygulamanızda
meta-data
öğesinin com.google.android.wearable.standalone
değerini ayarlayın
ekleyerek uygulamanızın bağımsız olup olmadığını belirtebilirsiniz.
Saat uygulamanız tamamen bağımsız, bağımsız bir uygulamaysa
bunu Google Play Store'a
com.google.android.wearable.standalone
ile true
aralığındaki değer:
<application> ... <meta-data android:name="com.google.android.wearable.standalone" android:value="true" /> ... </application>
Saat uygulamanız bağımsız değilse ve temel özellikleri açısından başka bir uygulamayı kullanıyorsa
com.google.android.wearable.standalone
değerini şuna ayarla:
false
. Bu, saat uygulamasının başka bir cihaz gerektirdiğini, ancak gerektirmediğini gösterir
Google Play Store'daki uygulama tanıtımınızı etkileyebilir.
Not:
com.google.android.wearable.standalone
değeri şöyle olsa bile:
false
, saat
uygulaması, telefon uygulaması yüklenmeden önce yüklenebilir.
Bu nedenle, saat uygulamanız
Eşlenmiş bir telefonun olduğunu algıladığında
bu sayfada açıklandığı gibi gerekli telefon uygulamasına sahip değilse
kullanıcıdan telefon uygulamasını yüklemesini isteyin.
Paylaşılan kod ve veri depolama
Kod, bir Wear OS uygulaması ile bir telefon uygulaması arasında paylaşılabilir. Örneğin, ağ için ortak kod, paylaşılan bir kitaplıkta olabilir.
İsteğe bağlı olarak, ayrı bir modülde yer alabilir.
Verileri yerel olarak depolamak için standart Android depolama API'lerini kullanabilirsiniz. kullanacağım. Örneğin, Paylaşılan Tercihler API'ler veya Oda kalıcılık kitaplığına erişebilirsiniz.
Uygulamanızı başka bir cihazda algılama
Saat uygulamanız ve ilgili telefon uygulaması diğer uygulamanın kullanılabilir olup olmadığını algılayabilir.
Telefon ve saat uygulamalarınız şunları kullanabilir:
Varlığının reklamını yapmak için CapabilityClient
eşlenen cihaza bağlanabilir. Bunu statik veya dinamik olarak yapabilirler.
Uygulama
Kullanıcının Wear OS ağındaki bir düğümde (ör. telefon, eşlenmiş kol saatinde veya
bulutta sakladığından CapabilityClient
, diğer
tarafından algılanır. Daha fazla bilgi için bkz.
Reklam özellikleri:
Uygulamalarınızdan biri diğerini algılayamazsa komut istemini kullanarak Kullanıcının etkilenen cihazda Play Store girişini açmasını. Bu çözüm, 2024 yılı boyunca ve düzgün çalışması için tamamlayıcı telefon uygulamasının varlığını.
Play Store'un şurada kullanıma sunulup sunulmadığını kontrol etmeniz gerekir: çünkü iPhone gibi tüm telefonlar Play Store'a gidin.
Aşağıdaki bölümlerde iki senaryo için en iyi uygulamalar açıklanmaktadır:
- Bağımsız saat uygulamanız için telefon uygulamanız gerekir.
- Telefon uygulamanız için bağımsız saat uygulamanız gerekir.
Ayrıca,
Bu örnek,
öğesinin bir parçası olan veri katmanı yardımcı kitaplıkları
Horoloji uzmanı. Bu yardımcılar, bir avuç içi cihaz arasındaki bağlantıyı izlemenize olanak tanır.
cihaz ve Wear OS cihazı olabilir.
Okuyucu Gelirleri Yöneticisi'ni
aşağıdaki bölümde açıklanan sınıflarla ilgili daha fazla bilgi edinmek için
Wear OS API referansı.
Bu referansta şunlar hakkında da bilgiler yer alır:
Şunları içeren PhoneTypeHelper
sınıfı
getPhoneDeviceType()
yöntemini kullanarak
Wear OS uygulaması, tamamlayıcı telefonun Android mi yoksa iOS cihaz mı olduğunu kontrol eder.
Uygulamalarınızı algılamak için özellik adlarını belirtin
Her cihaz türüne (ör. kol saati veya telefon) karşılık gelen uygulama için bir
res/values/wear.xml
dosyası yükleyin.
Örneğin, mobil modülünüzde wear.xml
dosyası
şunları içerebilir:
<resources xmlns:tools="http://schemas.android.com/tools" tools:keep="@array/android_wear_capabilities"> <string-array name="android_wear_capabilities"> <item>verify_remote_example_phone_app</item> </string-array> </resources>
Wear OS modülünüzde wear.xml
dosyası bir
özellik adı için farklı bir değer,
Örneğin:
<resources xmlns:tools="http://schemas.android.com/tools" tools:keep="@array/android_wear_capabilities"> <string-array name="android_wear_capabilities"> <item>verify_remote_example_wear_app</item> </string-array> </resources>
Daha fazla bilgi için bkz. Reklam özellikleri:
Uygulamayı algılama ve kol saatinden URL açma
Saat uygulamanız, kullanıcının tamamlayıcı telefonunda telefon uygulaması. Şu adımları uygulayın:
-
Şunu kullanın:
Telefon uygulamanızın yüklü olup olmadığını kontrol etmek için
CapabilityClient
telefondaki düğmesini tıklayın. Daha fazla bilgi için GitHub'da Datalayer yardımcıları örneği'ni ziyaret edin. -
Telefon uygulamanız telefonda yüklü değilse
PhoneDeviceType.getPhoneDeviceType()
yöntemini kullanarak telefonun türünü kontrol edebilirsin. Ayrıntılar için aşağıdaki bölüme bakın. -
Eğer
PhoneDeviceType.DEVICE_TYPE_ANDROID
dönerse telefon bir Android telefondur. Telefonla arama Wear OS cihazdaRemoteActivityHelper.startRemoteActivity()
özelliğini kullanarak telefonda Play Store'u açın. Telefonunuz için pazar URI'sini kullanın Bu uygulama, Wear uygulamanızın URI'sından farklı olabilir. Örneğin, örneğin, pazar URI'si:market://details?id=com.example.android.wearable.wear.finddevices
-
Eğer
PhoneDeviceType.DEVICE_TYPE_IOS
iade edildiğinde, telefon, Play özelliği olmayan bir iOS telefondur Mağaza mevcut. iPhone'da App Store'u açın Wear'daRemoteActivityHelper.startRemoteActivity()
numaralı telefonu arayarak OS cihaz. Uygulamanızın iTunes URL'sini şunun gibi belirtebilirsiniz:https://itunes.apple.com/us/app/yourappname
Wear OS'ten, cihazlarınızın doğru yüklü olup olmadığını Telefon uygulamanız bir iOS cihazda yüklü olmalıdır. En iyi uygulama olarak, manuel olarak tetiklemek için kullanıcıya ve App Store açılacaktır.
Not: Daha önce açıklanan RemoteActivityHelper
API'yi kullanın:
telefonda kol saatinden açılabilecek URL'leri belirtin.
telefon uygulaması
gerektirmemesidir.
Eşlenen telefonun türünü algılamayla ilgili ayrıntılar
Burada, aşağıdaki işlemler için getPhoneDeviceType()
yöntemini kullanan bir snippet verilmiştir:
saatin eşlendiği telefonun türünü kontrol edin:
Kotlin
var phoneDeviceType: Int = PhoneDeviceType.getPhoneDeviceType(context)
Java
int phoneDeviceType = PhoneDeviceType.getPhoneDeviceType(context);
getPhoneDeviceType()
tarafından döndürülen değer
yöntemi aşağıdakilerden biridir:
Döndürülen değer | Açıklama |
---|---|
DEVICE_TYPE_ANDROID
|
Tamamlayıcı telefon bir Android cihaz. |
DEVICE_TYPE_IOS
|
Tamamlayıcı telefon bir iOS cihazdır. |
DEVICE_TYPE_UNKNOWN
|
Tamamlayıcı telefon bilinmeyen bir cihaz. |
DEVICE_TYPE_ERROR
|
Eşlenen telefonun türü belirlenirken bir hata oluştu; başka bir kontrol daha sonra yapılmalıdır. |
Android telefondan başlayarak uygulama algılama
Android telefonunuz, kullanıcının Wear OS cihazlarında saat uygulaması. Şu adımları uygulayın:
-
Her bir
NodeClient
, kullanıcının telefon. Daha fazla bilgi için GitHub'da Datalayer yardımcıları örneği'ni ziyaret edin. -
Her bir
CapabilityClient
, kullanıcının kol saatlerinde yüklü olduğundan emin olun. -
Uygulamanız kullanıcının tüm saatlerinde yüklü değilse kullanıcının
Kalan Wear OS cihazlarda Play Store'u açmak için şu uygulamayı kullanın:
RemoteActivityHelper.startRemoteActivity()
yöntemi. Wear OS uygulaması için pazar URI'sini kullanın. Bu değer şunlardan biri olabilir: telefon uygulamanızın URI'sinden farklı. Örneğin, bir pazar URI'si kullanın. Örneğin:market://details?id=com.example.android.wearable.wear.finddevices
iPhone'larla eşlenen kol saatleri için konum verileri
iPhone'larla eşlenen kol saatlerinde Çok Kaynaklı Konum Sağlayıcı (FLP) özelliğini açın. Daha fazla bilgi için bkz. Wear OS'te konumu algıla'ya dokunun.
Tamamlayıcı telefon varsa FLP, tamamlayıcı telefonu şunun için kullanır: konum verileri.
Yalnızca gerekli verileri edinme
Genellikle, internetten veri alırken yalnızca işleyeceğiz. Aksi takdirde gereksiz gecikme, bellek, ve pil kullanımını gösterir.
Bir kol saati Bluetooth LE bağlantısı üzerinden bağlandığında uygulamanız yalnızca 4 kilobayt bant genişliğine ulaşabilir. kol saatinde. Bu nedenle, aşağıdaki adımları uygulamanız önerilir:
- Yalnızca yeterli olan ek veriler için ağ isteklerinizi ve yanıtlarınızı denetleyin telefon uygulaması için gerekli.
- Büyük resimleri, ağ üzerinden kol saatine göndermeden önce küçültün.
Yüksek bant genişliğine sahip bir ağın gerekli olduğu durumlar için bkz. Yüksek bant genişliğinde ağ erişimi.
Ek kod örnekleri
İlgili içeriği oluşturmak için kullanılan Datalayer yardımcıları örneği, bu sayfada ele alınan API'lerin kullanımını daha ayrıntılı şekilde gösterir.