Çin için Wear OS uygulamaları oluşturma

Çin için Wear OS uygulamaları oluştururken Google Play Hizmetleri'nin önceden yüklenmediği cep telefonlarını hesaba katmanız gerekir. Bu sayfada, geliştiricilerin Çin pazarı için uygulamaları gereken yaygın değişiklikler yer almaktadır.

Google Play Hizmetleri'nin doğru sürümünü kullanma

Google Play Hizmetleri 10.2.0 sürümü, Fused Location Provider API ve Data Layer API için dünya genelinde destek sunar. Çin'de daha fazla Wear OS cihazının desteklenmesini sağlamak için bu API'leri kullanıyorsanız Google Play Hizmetleri'nin bu sürümünü kullanmanız gerekir. Diğer durumlarda bu bağımlılık isteğe bağlıdır.

Not: Google Play Hizmetleri, Wear OS uygulamaları için API'ler içerse de Çin'deki Wear OS uygulamaları GoogleApiClient ile ilgili API'leri kullanmaya devam etmelidir. Wearable API'ye erişme başlıklı makaleyi inceleyin.

Fused Location Provider API

Fused Location Provider API'yi kullanıyorsanız Wear OS modülünüzün build.gradle dosyasına aşağıdaki bağımlılığı ekleyin:

Groovy

dependencies {
    ...
    implementation 'com.google.android.gms:play-services-location:10.2.0'
}

Kotlin

dependencies {
    ...
    implementation("com.google.android.gms:play-services-location:10.2.0")
}

Data Layer API

Uygulamanızda Data Layer API kullanılıyorsa Wear OS modülünüzün build.gradle dosyasına aşağıdaki satırı eklemeniz gerekir. Bu satır, istemci kitaplığının 10.2.0 sürümünün kullanılmasını gerektirir.

Groovy

dependencies {
    ...
    implementation 'com.google.android.gms:play-services-wearable:10.2.0'
    ...
}

Kotlin

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:10.2.0")
    ...
}

Aşağıdaki satırı mobil modülünüzün build.gradle dosyasına ekleyin. Google Play Hizmetleri bağımlılığını 10.2.0 sürümüne yapılan bir referansla değiştirin.

Groovy

dependencies {
    ...
    implementation 'com.google.android.gms:play-services-wearable:10.2.0'
}

Kotlin

dependencies {
    ...
    implementation("com.google.android.gms:play-services-wearable:10.2.0")
}

Kimlik doğrulama

Kimlik doğrulamayı uygulamadan önce, kimlik doğrulamanın gerçekten gerekli olup olmadığını görmek için kullanım alanlarınızı inceleyin. Örneğin, hava durumu tahmini sunan bir uygulamada oturum açma ve dolayısıyla kimlik doğrulama gerekmez.

Kimlik doğrulama gerektiriyorsa AndroidX OAuth kitaplığını kullanmanızı öneririz. Bunun için PKCE ile yetkilendirme kodu verme akışının kullanılması gerekir. Giyilebilir cihazlarda kimlik doğrulama başlıklı makalede açıklanan diğer yöntemlerden birini de kullanabilirsiniz. Wearable Support Library'nin kullanılması önerilmez.

Daha fazla bilgi için GitHub'daki Wear OS OAuth Örneği'ne göz atın.

Köprü modundaki bildirimler

Köprülenmiş bildirimler Çin'de desteklenmez. Telefon bildirimleri, Wear OS cihazı telefona Bluetooth ile bağlıysa Wear OS'e aktarılır.

Konum ve harita koordinatları uyumluluğu

Çin'deki kullanıcının konumunu tespit etmek için dünyanın geri kalanında olduğu gibi FusedLocationProvider (FLP) kullanın. Bu sayede, saatin eşlendiği telefon platformu ve kol saati donanımından bağımsız olarak uygulamanızın en iyi bilgileri dikkate alması sağlanır. FLP'nin kullanılması, Wear OS platformuna yerleşik pil optimizasyonunu da ekler.

FusedLocationProvider'yı üçüncü taraf harita SDK'larıyla entegre ederken sağlayıcılar arasındaki koordinat uyumluluğunu göz önünde bulundurun. FusedLocationProvider, konumu WGS84 standardına göre bildirir. Gerektiğinde koordinat sistemlerini dönüştürdüğünüzden emin olun.

Google Fit desteği

Google Fit'in toplam adım sayısı, hareket dakikaları ve kardiyo puanları Çin'de desteklenir ve yedi günlük geçmiş verileri kullanılabilir. Kullanıcı kimlik bilgisi sağlamadan bu bilgilere erişebilirsiniz.

Sesli işlem desteği

Wear OS platformu, kullanıcı işlemlerine dayalı çeşitli sesli niyetler sunar. Örneğin, _"Kalp atış hızını göster"_ veya _"Alarm kur"_. Bu sayede kullanıcılar ne yapmak istediklerini söyleyebilir ve sistem, başlatılacak en iyi etkinliği belirleyebilir.

Kullanıcılar bir sesli işlem söylediğinde uygulamanız, bir etkinliği başlatmak için tetiklenen amaca göre filtreleme yapabilir. Arka planda bir hizmet başlatmak için görsel ipucu olarak bir etkinlik gösterin ve hizmeti etkinlikte başlatın. Görsel ipucunu kaldırmak için finish() numaralı telefonu aradığınızdan emin olun.

Wear OS platformu tarafından desteklenen sesli amaçların listesini aşağıda bulabilirsiniz:

Kategori Örnek Amaç spesifikasyonu
Araç çağırma 打车去三里屯 İşlem

com.google.android.gms.actions.RESERVE_TAXI_RESERVATION

Ekstra

to: tanınan hedef

Ekstra isteğe bağlıdır.

Alarmı ayarla 设置一个明早七点的闹钟 İşlem

android.intent.action.SET_ALARM

Ekstralar

android.provider.AlarmClock.EXTRA_HOUR: Alarmın saatini içeren bir tam sayı

android.provider.AlarmClock.EXTRA_MINUTES: Alarmın dakikasını içeren bir tam sayı

Bu ekstralar isteğe bağlıdır. Bu ekstralardan birini, ikisini veya hiçbirini sağlamayın.

Zamanlayıcıyı ayarla 设置一个三分钟的倒计时 İşlem

android.intent.action.SET_TIMER

Ekstralar

android.provider.AlarmClock.EXTRA_LENGTH: Zamanlayıcının süresini temsil eden, 1 ile 86400 (24 saatteki saniye sayısı) arasında bir tam sayı

Kronometreyi başlat 开始计时 İşlem

com.google.android.wearable.action.STOPWATCH

Bisiklet sürüşünü başlatma veya durdurma 开始骑车 İşlem

vnd.google.fitness.TRACK

MIME türü

vnd.google.fitness.activity/biking

Ekstralar

actionStatus: Başlatıldığında ActiveActionStatus, durdurulduğunda ise CompletedActionStatus değerine sahip bir dize

Koşuyu başlatma veya durdurma 开始跑步 İşlem

vnd.google.fitness.TRACK

MIME türü

vnd.google.fitness.activity/running

Ekstralar

actionStatus: Başlangıçta ActiveActionStatus, durdurulduğunda ise CompletedActionStatus değerine sahip bir dize

Antrenmanı başlatma veya durdurma 开始锻炼 İşlem

vnd.google.fitness.TRACK

MIME türü

vnd.google.fitness.activity/other

Ekstralar

actionStatus: Başlangıçta ActiveActionStatus, durdurulduğunda ise CompletedActionStatus değerine sahip bir dize

Nabzı gösterme 查看心率 İşlem

vnd.google.fitness.VIEW

MIME türü

vnd.google.fitness.data_type/com.google.heart_rate.bpm

Adım sayısını göster 查看步数 İşlem

vnd.google.fitness.VIEW

MIME türü

vnd.google.fitness.data_type/com.google.step_count.cumulative

Navigasyon 导航去三里屯 İşlem

android.intent.action.VIEW

Veri

geo:latitude,longitude?q=融科资讯中心

Sesli Asistan, uygun durumlarda belirli davranışları tetiklemek için mevcut Android ortak amaçlarını da kullanabilir.

Emülatör desteği

Uygulamalarınızı test etmek için Wear OS emülatör görüntüsünün Çin sürümünü kullanabilirsiniz. Bu özellik, Android Studio 3.0 ve sonraki sürümlerde desteklenir.

Uygulamalarınızı Çin emülatör sürümünde test etmek için aşağıdaki adımları uygulayın:

  1. Android Emulator'ı yükleyin.
  2. Çin için Wear OS görüntülerini SDK yöneticisinden indirin. Wear OS 3.5 (API düzeyi 30) sürümünü kullanın.
  3. AVD profili oluştururken Çin için Wear OS görüntüsünü seçin.
  4. Geliştirme için Wear OS for China emülatörünü çalıştırın.
  5. 1.şekil Wear OS emülatörünün Çin sürümüne örnekler.

Wear OS emülatörünün bu sürümünde önceden yüklenmiş çeşitli uygulamalar bulunur:

  • Ambiyans modu
  • Kişiler
  • Google El Yazısı Giriş Yöntemi
  • Google Play hizmetleri
  • Wear OS için Sağlık Hizmetleri
  • LE cihazlarda özel kelime tanıma
  • Pinyin
  • Play Store (Çin'deki cihazlara uyarlanmış)
  • Pocketwatch
  • TalkBack
  • Kadranlar (hem analog hem de dijital sürümler)
  • Wear Temel Hizmetleri

Uygulamaya özel Bluetooth ve kablosuz bağlantı kanalı başlatma

Wear OS, ağ isteklerini otomatik olarak yönlendirir. Çoğu durumda, uygulamanın uygulamaya özel bir Bluetooth ve kablosuz kanal açması gerekmez.

Çin'de bir uygulama, uygulamaya özel Bluetooth ve kablosuz ağ kanalı isteğinde bulunursa istek sessizce başarısız olur. Bunun yerine, kullanıcıdan onay isteyen bir iletişim kutusu gösterilir. Kullanıcı onaylarsa kanal açılır. Bu durum yalnızca ilk kullanımda değil, her zaman gerçekleşir. BluetoothAdapter.enable() veya WifiManager.setEnabled(true) aranır.

Not: Android 10 (API düzeyi 29) veya sonraki sürümleri hedefleyen bir uygulamanın WifiManager.setEnabled() işlevini çağırması için sistem uygulaması ya da cihaz politikası denetleyicisi (DPC) olması gerekir.

İzin inceleme modu

Çin'de, Çin'e yönelik Wear OS cihazları, izin inceleme modunda çalışır. Bu mod, targetApiLevel değeri 23'ten düşük olan uygulamaların kullanımına bazı sınırlamalar getirir. Aşağıdaki sınırları inceleyin:

  • İzinler yükleme sırasında verilse de targetApiLevel 23'ten düşük olan bir uygulama ilk kez başlatıldığında, kullanıcıdan bu uygulamanın izinlerini onaylamasını isteyen bir iletişim kutusu görünür.
  • Uygulamadaki bileşenler (ör. yayın alıcılar, hizmetler ve etkinlikler), uygulama ilk kez kullanılmadan önce ilgili etkinliklere yanıt vermez.

Bu nedenle, targetApiLevel 23 veya daha yeni bir sürümü kullanmanızı ve uygulama izinleriyle ilgili en iyi uygulamaları benimsemenizi öneririz.

Diğer Google Play Hizmetleri API'lerini kullanma

Uygulamanız Wearable API dışında Google Play Hizmetleri API'lerini kullanıyorsa bu API'lerin çalışma zamanında kullanılıp kullanılamadığını kontrol etmesi ve buna uygun şekilde yanıt vermesi gerekir. Google Play Hizmetleri API'lerinin kullanılabilirliğini kontrol etmenin iki yolu vardır:

  1. Diğer API'lere bağlanmak için ayrı bir GoogleApiClient örneği kullanın. Bu arayüz, bağlantının başarılı veya başarısız olmasına ilişkin uygulamanızı uyarmak için geri çağırma yöntemleri içerir. Bağlantı başarısız olursa ConnectionResult simgesi API_UNAVAILABLE olarak gösterilir. Bağlantı hatalarını nasıl ele alacağınızı öğrenmek için Google API'lerine erişme başlıklı makaleyi inceleyin.
  2. Gerekli API'lere bağlanmak için addApiIfAvailable() GoogleApiClient.Builder yöntemini kullanın. onConnected() geri çağırma işlemi tetiklendikten sonra, istenen API'lerin her birinin doğru şekilde bağlandığından emin olmak için hasConnectedApi() yöntemini kullanın.

Çin'de uygulama dağıtma

Çin'deki Wear OS kullanıcılarına etkili bir şekilde ulaşmak için aşağıdaki gibi üçüncü taraf Wear OS uygulama mağazaları üzerinden dağıtım yapabilirsiniz: