Uygulamanızı gerçek bir egzersiz gerçekleşiyormuş 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 bir sürümü çalıştıran bir emülatörde test ediyorsanız emülatör tarafından oluşturulan sentetik verileri kullanabilirsiniz. Wear OS 3 ve sonraki sürümler için sentetik veri oluşturma arasındaki farklar hakkında daha fazla bilgi edinmek için aşağıdaki kılavuza bakın.
Wear OS 4 ve sonraki sürümlerde sentetik verileri kullanma
Wear OS 4 (API düzeyi 33) veya sonraki bir sürümü çalıştıran 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 bir dizi iyileştirme sunar:
Wear OS 4 ve sonraki sürümlerde sentetik veri oluşturma, Health Services API yaşam döngüsü ile entegre edilmiştir. Bu nedenle, egzersizi başlatmak veya durdurmak için adb komutlarına gerek yoktur. Bunun yerine, kullanıcı gibi uygulama içinden egzersizi başlatabilir veya durdurabilirsiniz.
Egzersiz etkinlikleri için genişletilmiş destek: Otomatik duraklatma ve devam ettirme etkinliklerini, düşme etkinliklerini, uyku algılama ve golf atışı algılama etkinliklerini almayı simüle edebilirsiniz.
Sağlık Hizmetleri Sensör Paneli'ni kullanma
Android Studio Koala özellik sürümü (Canary), Wear OS sensör panelinde Sağlık Hizmetleri'ni içerir. Panel, belirli sensör özelliklerine sahip veya sahip olmayan bir cihazı simüle etmek için kullanılabilir. Bu, Wear OS'te fitness uygulamaları geliştirirken test edilmesi gereken önemli bir özelliktir.
Paneli kullanarak metriklerin değerlerini değiştirebilir ve uygulamanızın nasıl ayarlandığını gözlemleyebilirsiniz.
Paneli açıp kullanmak için aşağıdakileri yapın:
- Bir 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. Wear Sağlık Hizmetleri paneli açılır. Bu panelde, Android işletim sistemli farklı cihazlarda kullanılabilen sensörlerin listesi gösterilir.
Panel açıldıktan sonra şunları yapabilirsiniz:
- Bir sonraki alıştırma sırasında etkinleştirilecek özellik grubunu seçmek için Standart özellikler ile Tüm özellikler (varsayılan) arasında geçiş yapın. Onay kutularını seçerek özellikleri tek tek etkinleştirebilir veya devre dışı bırakabilirsiniz. Mevcut özellik listesini taklit edilen cihaza göndermek için Uygula'yı, özellik listesini varsayılan açma/kapatma değerlerine geri yüklemek için Sıfırla'yı seçin.
- Etkinlikleri tetikle açılır menüsünü 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 vuruşlarını tetikleyebilirsiniz.
- Emülatöre yüklenmiş bir uygulamada egzersize başladıktan sonra sensör değerlerini geçersiz kılabilirsiniz. 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, uygulamanızın farklı egzersiz koşullarını ve kullanıcıların fitness eğilimlerini nasıl ele aldığını test etmek için yararlıdır.
Emülatör ile 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.
Sentetik veri oluşturmayı başlatmak, duraklatmak ve sonlandırmak için uygulama içi kontrollerinizi kullanın.
Ayrıca, emülatör her alıştırma için aynı veri değerlerini oluşturduğunu 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
Sentetik etkinlikler
Etkinlik |
Anahtar |
---|---|
Otomatik Duraklatma Algılandı |
|
Otomatik Devam Etme Algılandı |
|
Düşme Algılandı |
|
Uyku Algılandı |
|
Uyku Durduruldu Algılandı |
|
Golf Atışı 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 atışı etkinlikleri için golf atışı vuruş türü ile ilgili ek parametreleri belirtmeniz gerekir. Bu parametreler aşağıda açıklanmıştır:
Golf Vuruş Salıncak Türü |
Parametre |
---|---|
Salıncak Putt Türü |
putt vuruşu |
Salıncak Kısmi Türü |
kısmi |
Salıncak Tam Türü |
tam |
Golf atışı etkinliğini belirttikten sonra golf atışı vuruş 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 atışını 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ı uygulayı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
Sentetik egzersizler
Sağlık Hizmetleri aşağıdaki egzersiz türlerini destekler:
- Yürüyüş:
whs.synthetic.user.START_WALKING
- Çalışıyor:
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 kullanan GPS konumu
- Etkinliğin süresi
- Yükseklik ve katlar
Ayrıca aşağıdaki durumlar da oluşturulabilir:
- Uyku durumu: uykuda veya uyanık
- Düşme algılayıcı
Başlangıç
Bir egzersizi simüle etmeye başlamak için com.google.android.wearable.healthservices
'e 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 etkinlikte, desteklenen metrikler için hazır ayarlar bulunur:
Etkinlik | Nabız | Ortalama hız | Rakım değişimi | Konumu kullan |
---|---|---|---|---|
Yaya | 120 nabız/dk. | 1,4 m/sn. | 20,0 m/dk. | doğru |
Çalışıyor | 170 nabız/dk. | 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şu | 160 nabız/dk. | 2,3 m/sn. | 20,0 m/dk. | yanlış |
Durdur
Sentetik 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 kontrol sahibi olmak 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>
: nabız (dakikada kalp atışı sayısı). Ortalama:70
.--ef exercise_options_average_speed <float>
: saniyede metre cinsinden ortalama hız. Ayrıca dakikadaki adım sayısını veya adım ritmini de etkiler. Varsayılan:0
.--ez exercise_options_use_location <boolean>
: Varsayılan bir rota kullanılarak egzersiz sırasında konum verilerinin gönderilip gönderilmeyeceği. Varsayılan:false
.--ef exercise_options_max_elevation_rate <float>
: dakika başına 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
Gerçek veya taklit donanımın belirli bir veri türünü destekleyip desteklemediğini ve 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 eyaletler ve etkinlikler
Uyku durumu
Sentetik 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ıklık durumuna girmek 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 etkinliğini yayınlaması bir dakikayı bulabilir.
Sizin için önerilenler
- Not: JavaScript kapalıyken bağlantı metni gösterilir
- SourceType
- ArithmeticExpression
- ListConfiguration