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

Çin için Wear OS uygulamaları oluştururken Google Play hizmetlerinin önceden yüklü olmadığı telefonları hesaba katmanız gerekir. Bu sayfada, geliştiricilerin Çin pazarı için uygulaması gerekebilecek 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 sağlar. Çin'de daha geniş bir Wear OS cihaz yelpazesinin 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'e yönelik Wear OS uygulamaları GoogleApiClient ile ilgili API'leri kullanmaya devam etmelidir. Wearable API'ye erişim 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ız Veri Katmanı API'sini kullanıyorsa Wear OS modülünüzün build.gradle dosyasına aşağıdaki satırı eklemeniz gerekir. Satırda istemci kitaplığının 10.2.0 sürümünün kullanılması gerekir.

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 referansla değiştirin.

Eski

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 yayınlayan bir uygulamada oturum açmaya ve dolayısıyla kimlik doğrulamaya gerek olmayabilir.

Kimlik doğrulama gerekiyorsa AndroidX Oauth kitaplığını kullanmanızı öneririz. Bunun için PKCE ile Yetkilendirme Kodu Grant akışının kullanılması gerekir. Giyilebilir cihazlarda kimlik doğrulama bölümünde açıklanan diğer yöntemlerden birini de kullanabilirsiniz. Wearable Destek Kitaplığı'nın kullanılması önerilmez.

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

Köprülenmiş bildirimler

Köprülü bildirimler Çin'de desteklenmez. Telefon bildirimleri yalnızca Wear OS cihazı telefona Bluetooth aracılığıyla bağlıysa Wear OS ile köprü arasında bağlantı kurulur.

Konum ve harita koordinatları uyumluluğu

Kullanıcının Çin'deki konumunu tespit etmek için dünyanın geri kalanında yaptığınız gibi FusedLocationProvider (FLP) kullanın. Bu sayede uygulamanız, kol saati donanımı ve kol saatinin eşlendiği telefon platformundan bağımsız olarak en iyi bilgileri dikkate alır. FLP'yi kullanmak, Wear OS platformuna yerleşik pil optimizasyonunu da ekler.

FusedLocationProvider'ü üçü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. Koordinat sistemlerini uygun şekilde dönüştürdüğünüzden emin olun.

Google Fit desteği

Google Fit'in toplam adım sayacı, hareket dakikaları ve kalp puanları, Çin'de yedi güne kadar geçmişle desteklenir. Buna kullanıcı kimlik bilgisi sağlamadan erişebilirsiniz.

Sesli işlem desteği

Wear OS platformu, _"Kalp atış hızını göster"_ veya _"Alarm ayarla"_ gibi kullanıcı işlemlerine dayalı çeşitli sesli intent'ler sağlar. Bu sayede kullanıcılar ne yapmak istediklerini belirtebilir, sistem de başlatılacak en iyi etkinliği belirleyebilir.

Kullanıcılar bir sesli işlemi konuştuğunda uygulamanız, etkinlik başlatmak için tetiklenen niyeti filtreleyebilir. Bir hizmeti arka planda başlatmak için görsel bir ipucu olarak bir etkinlik gösterin ve hizmeti etkinlikte başlatın. Görsel işaretten kurtulmak için finish()'ü çağırdığınızdan emin olun.

Wear OS platformu tarafından desteklenen sesli intent'lerin listesi aşağıda verilmiştir:

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

com.google.android.gms.actions.RESERVE_TAXI_RESERVATION

Ekstra

to: tanınan hedef

Ek ücret 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 veya ikisini birden sağlayın.

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

android.intent.action.SET_TIMER

Ekstralar

android.provider.AlarmClock.EXTRA_LENGTH: 1 ile 86.400 (24 saatteki saniye sayısı) arasında bir tam sayı ve zamanlayıcının uzunluğunu temsil eder.

Kronometreyi başlat 开始计时 İşlem

com.google.android.wearable.action.STOPWATCH

Bisiklet yolculuğu başlatma veya durdurma 开始骑车 İşlem

vnd.google.fitness.TRACK

MIME türü

vnd.google.fitness.activity/biking

Ek özellikler

actionStatus: Başlangıçta ActiveActionStatus, sonlandırmada CompletedActionStatus değerini içeren bir dize

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

vnd.google.fitness.TRACK

MIME türü

vnd.google.fitness.activity/running

Ek özellikler

actionStatus: Başlangıçta ActiveActionStatus, sonlandırmada CompletedActionStatus değerini içeren bir dize

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

vnd.google.fitness.TRACK

MIME türü

vnd.google.fitness.activity/other

Ek özellikler

actionStatus: Başlangıçta ActiveActionStatus, sonlandırmada CompletedActionStatus değerini içeren bir dize

Nabız 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österme 查看步数 İş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 olduğu durumlarda belirli davranışları tetiklemek için mevcut Android ortak intent'lerini de kullanabilir.

Emülatör desteği

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

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

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

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

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

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

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

Bir uygulama Çin'de uygulamaya özel Bluetooth ve kablosuz ağ kanalı isterse 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 kullanımda gerçekleşir. BluetoothAdapter.enable() veya WifiManager.setEnabled(true) çağrılır.

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

İzin inceleme modu

Çin'de, Çin için Wear OS cihazları İzin İnceleme Modu'nda ç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ırlamaları inceleyin:

  • İzinler yükleme sırasında verilse de targetApiLevel değeri 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 yayın alıcıları, hizmetler ve etkinlikler gibi bileşenler, 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ı uygulamanızı ö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ılamayacağını kontrol etmesi ve uygun şekilde yanıt vermesi gerekir. Google Play hizmeti 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, uygulamanızı bağlantının başarılı veya başarısız olduğu konusunda uyarmak için geri çağırma yöntemleri içerir. Bağlantı kurulamazsa ConnectionResult API_UNAVAILABLE gösterir. 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 GoogleApiClient.Builder'in addApiIfAvailable() yöntemini kullanın. onConnected() geri çağırma işlevi 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 için Wear OS kullanıcılarına etkili bir şekilde ulaşmak amacıyla aşağıdakiler gibi üçüncü taraf Wear OS uygulama mağazaları aracılığıyla dağıtım yapabilirsiniz: