Uygulamanızı, egzersiz gerçekten yapılıyormuş gibi test etmek için Wear OS'teki Sağlık Hizmetleri'nden oluşturulan sentetik verileri kullanın.
Wear OS 3 (API düzeyi 30) veya sonraki sürümlerin çalıştığı bir emülatörde test yapıyorsanız emülatör tarafından oluşturulan sentetik verileri kullanabilirsiniz. Wear OS 3 ve sonraki sürümlerde sentetik veri oluşturma arasındaki farklar hakkında daha fazla bilgi edinmek için aşağıdaki kılavuza göz atın.
Wear OS 4 ve sonraki sürümlerde sentetik verileri kullanma
Wear OS 4 (API düzeyi 33) veya sonraki sürümlerin çalıştığı bir emülatörde test yapıyorsanız uygulamanızı test etmek için emülatör tarafından oluşturulan sentetik verileri kullanabilirsiniz. Bu, Wear OS'in önceki sürümlerinde sentetik verilerin oluşturulma şekline kıyasla çeşitli iyileştirmeler sunar:
Wear OS 4 ve sonraki sürümlerde sentetik veri oluşturma, Health Services API yaşam döngüsüne entegre edilmiştir. Bu nedenle, egzersizi başlatmak veya durdurmak için adb komutları gerekmez. Bunun yerine, egzersizi uygulama içinde kullanıcı gibi başlatabilir veya durdurabilirsiniz.
Egzersiz etkinlikleri için genişletilmiş destek: Otomatik duraklatma ve devam ettirme etkinlikleri, düşme etkinlikleri, uyku algılama ve golf vuruşu algılama etkinliklerini almayı simüle edebilirsiniz.
Sağlık Hizmetleri Sensör Paneli'ni kullanma
Android Studio Koala Feature Drop (Canary), Wear OS'te bir Sağlık Hizmetleri sensör paneli içerir. Bu panel, belirli sensör özelliklerine sahip olan veya olmayan bir cihazı simüle etmek için kullanılabilir. Bu, Wear OS'te fitness uygulamaları geliştirirken test edilmesi gereken önemli bir özelliktir.
Metrik değerlerini değiştirmek ve uygulamanızın nasıl ayarlandığını gözlemlemek için de bu paneli kullanabilirsiniz.
Paneli açmak ve kullanmak için aşağıdakileri yapın:
- Android Sanal Cihaz (AVD) oluşturun veya açın ve uygulamanızı emülatörde çalıştırın.
- Emülatör panelinde Wear Health Services'i seçin.
Farklı Android destekli cihazlarda kullanılabilen sensörlerin listesini gösteren Wear Sağlık Hizmetleri paneli açılır.
Panel açıldıktan sonra şunları yapabilirsiniz:
- Bir sonraki alıştırma sırasında etkinleştirilecek özellikler grubunu seçmek için Standart özellikler ve Tüm özellikler (varsayılan) arasında geçiş yapın. Onay kutularını işaretleyerek özellikleri tek tek etkinleştirebilir veya devre dışı bırakabilirsiniz. Mevcut özellikler listesini emüle edilmiş cihaza göndermek için Uygula'yı, özellikler listesini varsayılan açık/kapalı değerlerine geri yüklemek için Sıfırla'yı seçin.
- Etkinlikleri tetikle açılır düğmesini seçtikten sonra farklı kullanıcı etkinliklerini tetikleyin. Buradan, fitness etkinliklerinin otomatik olarak duraklatılmasını/devam ettirilmesini tetikleyebilir, kullanıcının uyku etkinliklerini tetikleyebilir ve kullanıcının golf sahasında veya mini golf sahasında yaptığı golf atışlarını tetikleyebilirsiniz.
- Emülatöre yüklenen bir uygulamada egzersize başladıktan sonra sensör değerlerini geçersiz kılma Farklı egzersiz metrikleri için yeni değerler girdikten sonra, bu değerleri emülatörle senkronize etmek için Uygula'yı seçin. Bu özellik, uygulamanızın farklı egzersiz koşullarını ve kullanıcıların fitness alışkanlıklarını nasıl ele aldığını test etmek için kullanışlıdır.
Emülatörle sentetik veri oluşturma
Uygulamanızı sensör paneli olmadan da çalıştırabilir ve verilerin emülatör tarafından otomatik olarak oluşturulmasını sağlayabilirsiniz.
Sanal veri oluşturma işlemini başlatmak, duraklatmak ve sonlandırmak için uygulama içi kontrollerinizi kullanın.
Ayrıca, emülatörün her alıştırma için aynı veri değerlerini oluşturduğunu da unutmayın.
Etkinlikleri simüle etme
Emülatörde AUTO_PAUSE_DETECTED
gibi çeşitli etkinlikleri simüle edebilirsiniz.
Bu etkinlikleri tetiklemek için aşağıdaki komut kullanılabilir:
adb shell am broadcast -a "whs.event-key" com.google.android.wearable.healthservices
Yapay etkinlikler
Etkinlik |
Anahtar |
---|---|
Otomatik Duraklatma Algılandı |
|
Otomatik Devam Ettirme Algılandı |
|
Düşme Algılandı |
|
Uyku Algılandı |
|
Uyku-Duraklatma Algılandı |
|
Golf Vuruşu Algılandı |
|
Örneğin, otomatik duraklatma etkinliğini tetiklemek için aşağıdaki komutu kullanabilirsiniz:
adb shell am broadcast -a "whs.AUTO_PAUSE_DETECTED" com.google.android.wearable.healthservices
Golf vuruşu etkinlikleri için aşağıdaki tabloda belirtilen golf vuruşu salınım türü ile ilgili ek parametreler belirtmeniz gerekir:
Golf Vuruşu Salıncak Türü |
Parametre |
---|---|
Salıncaklı Vuruş Türü |
putt vuruşu |
Kısmi Salınım Türü |
kısmi |
Tam Salıncak Tipi |
tam |
Golf vuruşu etkinliğini belirttikten sonra golf vuruşu salınım türünü ekleyin:
adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type \ "golf-swing-type-parameter" com.google.android.wearable.healthservices
Örneğin, aşağıdaki komut kısmi bir golf vuruşunu tetikler:
adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type "partial" \ com.google.android.wearable.healthservices
Wear OS 3'te sentetik verileri kullanma
Wear OS 3 çalıştıran bir emülatörde test yapıyorsanız uygulamanızı test etmek için sentetik verileri de kullanabilirsiniz.
Sentetik veri oluşturmayı etkinleştirme
Wear OS 3'te sentetik veri oluşturmayı etkinleştirmek için aşağıdaki adımları tamamlayın.
- Geliştirici seçeneklerini etkinleştirin.
Sentetik modu etkinleştirmek için aşağıdaki
adb
komutunu verin:adb shell am broadcast \ -a "whs.USE_SYNTHETIC_PROVIDERS" \ com.google.android.wearable.healthservices
Sentetik veri oluşturma etkinleştirildikten sonra, "sentetik kullanıcının" davranışını kontrol etmek için bu sayfada açıklanan komutları verin.
Sentetik veri oluşturmayı devre dışı bırakma
Gerçek sensörleri kullanmaya geri dönmek için aşağıdaki komutu çalıştırın:
adb shell am broadcast \
-a "whs.USE_SENSOR_PROVIDERS" \
com.google.android.wearable.healthservices
Yapay egzersizler
Sağlık Hizmetleri aşağıdaki egzersiz türlerini destekler:
- Yaya:
whs.synthetic.user.START_WALKING
- Koşu:
whs.synthetic.user.START_RUNNING
- Doğa yürüyüşü:
whs.synthetic.user.START_HIKING
- Yüzme:
whs.synthetic.user.START_SWIMMING
- Koşu bandında koşma:
whs.synthetic.user.START_RUNNING_TREADMILL
Alıştırmalar, aşağıdaki veri türleri için gerçekçi sentetik veriler oluşturur:
- Nabız
- Dakikadaki adım sayısı
- Tek bir varsayılan rota kullanılarak GPS konumu
- Etkinliğin süresi
- Yükseklik ve katlar
Ayrıca aşağıdaki durumlar oluşturulabilir:
- Uyku durumu: Uykuda veya uyanık
- Düşme algılayıcı
Başlatma
Bir egzersizi simüle etmeye başlamak için com.google.android.wearable.healthservices
adresine uygun yayını gönderin:
# start the "walking" synthetic exercise
$ adb shell am broadcast \
-a "whs.synthetic.user.START_WALKING" \
com.google.android.wearable.healthservices
Her etkinlik için desteklenen metriklerle ilgili hazır ayarlar vardır:
Etkinlik | Nabız | Ortalama hız | Yükseklik değişikliği | Konumu kullanma |
---|---|---|---|---|
Yaya | 120 bpm | 1,4 m/sn | 20,0 m/dk. | doğru |
Çalışıyor | 170 bpm | 2,3 m/sn | 20,0 m/dk. | doğru |
Doğa yürüyüşü | 150 nabız/dk. | 1,3 m/sn | 20,0 m/dk. | doğru |
Yüzme | 150 nabız/dk. | 1,6 m/sn. | 0,0 m/dk. | doğru |
Koşu bandında koşma | 160 bpm | 2,3 m/sn | 20,0 m/dk. | yanlış |
Durdur
Sentezlenmiş etkinliği durdurmak için aşağıdaki komutu kullanın:
adb shell am broadcast \
-a "whs.synthetic.user.STOP_EXERCISE" \
com.google.android.wearable.healthservices
Özel
Hangi metriklerin oluşturulacağı üzerinde daha hassas bir kontrol için whs.synthetic.user.START_EXERCISE
işlem dizesini kullanarak özel bir egzersiz etkinliği başlatın.
Aşağıdaki işaretlerin herhangi bir kombinasyonunu sağlayın:
--ei exercise_options_duration_secs <int>
: Egzersizin saniye cinsinden süresi. Varsayılan:0
.--ei exercise_options_heart_rate <int>
: dakikadaki nabız sayısı. Ortalama:70
.--ef exercise_options_average_speed <float>
: saniyede metre cinsinden ortalama hız. Dakikadaki adım sayısını veya ritmi de etkiler. Varsayılan:0
.--ez exercise_options_use_location <boolean>
: Varsayılan bir rota kullanılarak egzersiz sırasında konum verilerinin yayınlanıp yayınlanmayacağı. Varsayılan:false
.--ef exercise_options_max_elevation_rate <float>
: Dakikada metre cinsinden mümkün olan maksimum yükseklik değişim hızı. Varsayılan:0
.
Örneğin, egzersiz seçeneklerini aşağıdaki şekilde ayarlayın:
adb shell am broadcast \
-a "whs.synthetic.user.START_EXERCISE" \
--ei exercise_options_heart_rate 90 \
--ef exercise_options_average_speed 1.2 \
--ez exercise_options_use_location true \
com.google.android.wearable.healthservices
Ayrıca, gerçek veya emüle edilmiş donanımın belirli bir veri türünü destekleyip desteklemediğine bakılmaksızın kullanılabilen veri türlerini de değiştirebilirsiniz. Örneğin, aşağıdaki snippet'te gösterildiği gibi mutlak yüksekliği etkinleştirebilir veya devre dışı bırakabilirsiniz:
# enable synthetic mode and enable absolute elevation
$ adb shell am broadcast \
-a "whs.CONFIGURE_SYNTHETIC_DEVICE" \
--ez absolute_elevation true \
com.google.android.wearable.healthservices
# enable synthetic mode and disable absolute elevation
$ adb shell am broadcast \
-a "whs.CONFIGURE_SYNTHETIC_DEVICE" \
--ez absolute_elevation false \
com.google.android.wearable.healthservices
Diğer durumlar ve etkinlikler
Uyku durumu
Ayrıca, yapay kullanıcı için uyku durumlarını da tetikleyebilirsiniz. İki durum desteklenir: uyku ve uyanık.
Uyku durumuna girmek için şu komutu çalıştırın:
adb shell am broadcast \
-a "whs.synthetic.user.START_SLEEPING" \
com.google.android.wearable.healthservices
Uyanık duruma geçmek için şu komutu çalıştırın:
adb shell am broadcast \
-a "whs.synthetic.user.STOP_SLEEPING" \
com.google.android.wearable.healthservices
Düşme algılayıcı
Düşme simülasyonu yapmak için şu komutu çalıştırın:
adb shell am broadcast \
-a "whs.synthetic.user.FALL_OVER" \
com.google.android.wearable.healthservices
Sağlık hizmetlerinin düşme olayını bildirmesi bir dakika kadar sürebilir.
Sizin için önerilenler
- Not: Bağlantı metni, JavaScript kapalıyken gösterilir.
- SourceType
- ArithmeticExpression
- ListConfiguration