Sağlık Hizmetleri ile sensör verilerini simüle edin

Uygulamanızı olduğu gibi test etmek için Wear OS'te Sağlık Hizmetleri'nden oluşturulan sentetik verileri kullanın bir egzersiz oldu.

Wear OS 3 (API seviyesi 30) veya sonraki sürümleri çalıştıran bir emülatörde test yapıyorsanız emülatör tarafından oluşturulan yapay verileri kullanabilirsiniz. Aşağıdakilere bakın için sentetik veri oluşturma arasındaki farklar hakkında daha fazla bilgi Wear OS 3 ve sonraki sürümler.

Wear OS 4 ve sonraki sürümlerde yapay veriler kullanma

Wear OS 4 (API düzeyi 33) veya sonraki sürümleri ç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 kullanabilir. Bu Google Analytics 4'te, web'de sentetik verilerin oluşturulmasıyla ilgili Wear OS'in önceki sürümleri:

Sağlık Hizmetleri Sensörü Panelini kullanma

Android Studio Koala Yeni Özellik (Canary), şunları içerir: Wear OS sensör panelinde Sağlık Hizmetleri. Panel, tablodaki bir dönüşüme ilişkin cihazın belirli sensör özelliklerine sahip olup olmaması, fitness uygulamaları oluştururken test edilecek.

Bu paneli, metriklerin değerlerini değiştirmek ve uyarlar.

Paneli açmak ve kullanmak için aşağıdakileri yapın:

  1. Android Sanal Cihaz (AVD) oluşturun veya açın. ve uygulamanızı emülatörde çalıştırın.
  2. Emülatör panelinde Wear Health Services'i (Wear Sağlık Hizmetleri) seçin. Wear Sağlık Hizmetleri panelini aç Wear Sağlık Hizmetleri paneli açılır ve farklı cihazlarda bulunan sensörlerin bir listesini Android destekli cihazlar.

Panel açıldıktan sonra aşağıdakileri yapabilirsiniz:

  • Standart özellikler arasında geçiş yapın, Tüm özellikler (varsayılan) veya Özel. Uygula'yı seçerek geçerli olan özellikleri listesini görüntüleyin ve şunun için Sıfırla'yı seçin: özellikler listesini varsayılan açma/kapatma değerlerine geri yükleyebilir.
  • Etkinlikleri tetikle'yi seçtikten sonra farklı kullanıcı etkinliklerini tetikleyin. açılır menü düğmesi. Buradan, fitness durumunun otomatik olarak duraklatılmasını/devam ettirilmesini tetikleyebilirsiniz aktiviteleri, kullanıcı tarafından Uyku etkinliklerini tetikleme ve Golf şutlarını tetikleme Golf sahası veya mini golf sahası.
  • Yüklü bir uygulamada egzersize başladıktan sonra sensör değerlerini geçersiz kıl üzerine yazacağım. 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, özellikle uygulamanızın farklı egzersiz koşullarını ve kullanıcıların ihtiyaçlarını fitness ve eğilimler gösterir.

Emülatörle yapay veri oluşturma

Ayrıca, uygulamanızı sensör paneli olmadan da çalıştırabilir ve tarafından otomatik olarak oluşturulur.

Sentetik veri oluşturmayı 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 unutmayın.

Etkinlikleri simüle et

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ı

whs.AUTO_PAUSE_DETECTED

Otomatik Devam Ettirme Algılandı

whs.AUTO_RESUME_DETECTED

Düşme Algılandı

whs.FALL_OVER

Uyku Algılandı

whs.START_SLEEPING

Uyku Durdurma Algılandı

whs.STOP_SLEEPING

Golf Şutu Algılandı

whs.GOLF_SHOT

Örneğin, bir 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 şutu etkinlikleri için: golf vuruşu salıncak türü, ve özet olarak şu şekildedir:

Golf Şut İçin Salıncak Türü

Parametre

Salıncak Tipi

putt vuruşu

Salıncak Kısmi Tipi

kısmi

Tam Tür

tam

Golf atışı etkinliğini belirttikten sonra golf şut vuruşu 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 yapay veri kullanma

Wear OS 3 çalıştıran bir emülatörde test ediyorsanız verilerinizi test edebilirsiniz.

Sentetik veri oluşturmayı etkinleştir

Wear OS 3'te sentetik veri oluşturmayı etkinleştirmek için aşağıdaki adımları tamamlayın.

  1. Geliştirici seçeneklerini etkinleştirin.
  2. 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, bu makalede açıklanan sorun komutları sayfasını kullanabilirsiniz.

Sentetik veri oluşturmayı devre dışı bırak

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:

  • Yaya: whs.synthetic.user.START_WALKING
  • Çalışıyor: whs.synthetic.user.START_RUNNING
  • 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ı
  • GPS konumu (varsayılan tek bir rota kullanılarak)
  • Etkinlik süresi
  • Yükseklik ve katlar

Buna ek olarak, aşağıdaki durumlar oluşturulabilir:

  • Uyku durumu (uykuda veya uyanıkken)
  • Düşme algılayıcı

Başlangıç

Bir alıştırmayı simüle etmeye başlamak için, com.google.android.wearable.healthservices:

# 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 Yükseklik değişikliği 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 bir kontrol sahibi olmak için özel bir whs.synthetic.user.START_EXERCISE işlem dizesini kullanan egzersiz aktivitesi. Aşağıdaki işaretlerin herhangi bir kombinasyonunu sağlayın:

  • --ei exercise_options_duration_secs <int>: saniye cinsinden süresidir. Varsayılan: 0.
  • --ei exercise_options_heart_rate <int>: nabız/dakika olarak kalp hızı. Ortalama: 70.
  • --ef exercise_options_average_speed <float>: metre/saniye cinsinden ortalama hız. Dakikadaki adım sayısı veya sıklığı da etkiler. Varsayılan: 0.
  • --ez exercise_options_use_location <boolean>: egzersiz sırasında varsayılan rota kullanılarak konum verilerinin yayınlanıp yayınlanmayacağını belirler. 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 ayarlayabilirsiniz:

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, kullanılabilir veri türlerini de, gerçek veya emülasyonlu donanım belirli bir veri türünü desteklemez. Örneğin, mutlak yüksekliği etkinleştirebilir veya devre dışı bırakabilirsiniz, aşağıdaki snippet'te gösterildiği gibidir:

# 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ı tetikleyebilirsiniz. İki eyalet desteklenir: uykuda ve uyanık.

Uyku durumuna geçmek 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 sonbahar mevsimini teslim etmesi bir dakika kadar sürebilir.