از دادههای مصنوعی تولید شده از سرویسهای بهداشتی در Wear OS برای آزمایش برنامه خود استفاده کنید، گویی واقعاً یک تمرین در حال انجام است.
اگر روی یک شبیهساز که Wear OS 3 (سطح API 30) یا بالاتر را اجرا میکند، آزمایش میکنید، میتوانید از دادههای مصنوعی تولید شده توسط شبیهساز استفاده کنید. برای کسب اطلاعات بیشتر در مورد تفاوتهای بین تولید دادههای مصنوعی برای Wear OS 3 و بالاتر، به راهنمای زیر مراجعه کنید.
استفاده از دادههای مصنوعی در Wear OS 4 و بالاتر
اگر در حال آزمایش روی یک شبیهساز با سیستم عامل Wear OS 4 (سطح API 33) یا بالاتر هستید، میتوانید از دادههای مصنوعی تولید شده توسط شبیهساز برای آزمایش برنامه خود استفاده کنید. این امر پیشرفتهای متعددی را نسبت به نحوه تولید دادههای مصنوعی در نسخههای قبلی Wear OS ارائه میدهد:
تولید دادههای مصنوعی در Wear OS 4 و بالاتر با چرخه عمر API سرویسهای سلامت یکپارچه شده است. این بدان معناست که نیازی به دستورات adb برای شروع یا توقف تمرین نیست. در عوض، میتوانید تمرین را مانند یک کاربر در برنامه شروع یا متوقف کنید.
پشتیبانی گستردهتر از رویدادهای ورزشی: میتوانید رویدادهای دریافت مکث و از سرگیری خودکار ، رویدادهای سقوط ، تشخیص خواب و تشخیص ضربه گلف را شبیهسازی کنید.
از پنل حسگر خدمات درمانی استفاده کنید
اندروید استودیو Koala Feature Drop (Canary) شامل یک پنل حسگر Health Services روی Wear OS است. این پنل میتواند برای شبیهسازی دستگاهی که قابلیتهای حسگر خاصی دارد یا ندارد، استفاده شود، که آزمایش آن هنگام ساخت برنامههای تناسب اندام روی Wear OS مهم است.
همچنین میتوانید از پنل برای تغییر مقادیر معیارها و مشاهده نحوه تنظیم برنامه خود استفاده کنید.
برای باز کردن و استفاده از پنل، مراحل زیر را انجام دهید:
- یک دستگاه مجازی اندروید (AVD) ایجاد یا باز کنید و برنامه خود را روی شبیهساز اجرا کنید .
- در پنل شبیهساز، Wear Health Services را انتخاب کنید.
پنل Wear Health Services باز میشود و فهرستی از حسگرهای موجود در دستگاههای مختلف مبتنی بر اندروید را نشان میدهد.
پس از باز شدن پنل، میتوانید موارد زیر را انجام دهید:
- برای انتخاب مجموعهای از قابلیتهایی که در تمرین بعدی فعال میشوند، بین گزینههای Standard capabilities و All capabilities (default) جابهجا شوید. میتوانید با انتخاب کادرهای انتخاب، قابلیتهای جداگانه را فعال یا غیرفعال کنید. برای ارسال لیست فعلی قابلیتها به دستگاه شبیهسازی شده، Apply را انتخاب کنید و برای بازگرداندن لیست قابلیتها به مقادیر پیشفرض روشن-خاموش، Reset را انتخاب کنید.
- پس از انتخاب دکمه کشویی «راهاندازی رویدادها» ، رویدادهای مختلف کاربر را فعال کنید. از اینجا میتوانید مکث/ازسرگیری خودکار فعالیتهای تناسب اندام، فعالسازی رویدادهای خواب توسط کاربر و فعالسازی ضربات گلف که کاربر در زمین گلف یا مینی گلف میزند را فعال کنید.
- پس از شروع تمرین در برنامهای که روی شبیهساز نصب شده است، مقادیر حسگر را لغو کنید. پس از وارد کردن مقادیر جدید برای معیارهای مختلف تمرین، برای همگامسازی این مقادیر با شبیهساز، گزینه «اعمال» را انتخاب کنید. این برای آزمایش نحوه مدیریت شرایط مختلف تمرین توسط برنامه شما و تمایلات تناسب اندام کاربران مفید است.
تولید دادههای مصنوعی با شبیهساز
همچنین میتوانید برنامه خود را بدون پنل حسگر اجرا کنید و دادهها را به طور خودکار توسط شبیهساز تولید کنید.
از کنترلهای درون برنامهای خود برای شروع، مکث و پایان تولید دادههای مصنوعی استفاده کنید.
همچنین توجه داشته باشید که شبیهساز برای هر تمرین مقادیر داده یکسانی تولید میکند.
شبیهسازی رویدادها
شما میتوانید رویدادهای مختلفی مانند AUTO_PAUSE_DETECTED را در شبیهساز شبیهسازی کنید. دستور زیر میتواند برای فعال کردن این رویدادها استفاده شود:
adb shell am broadcast -a "whs.event-key" com.google.android.wearable.healthservices
رویدادهای مصنوعی
رویداد | کلید |
|---|---|
مکث خودکار شناسایی شد | |
از سرگیری خودکار شناسایی شد | |
تشخیص سقوط | |
خواب تشخیص داده شد | |
تشخیص توقف خواب | |
ضربه گلف شناسایی شد | |
برای مثال، میتوانید از دستور زیر برای ایجاد یک رویداد مکث خودکار استفاده کنید:
adb shell am broadcast -a "whs.AUTO_PAUSE_DETECTED" com.google.android.wearable.healthservices
برای رویدادهای شوت گلف، باید پارامترهای اضافی برای نوع ضربه گلف را مشخص کنید که در جدول زیر آمده است:
نوع چرخش ضربه گلف | پارامتر |
|---|---|
نوع ضربه سوینگ پات | پات |
نوع جزئی نوسانی | جزئی |
نوع کامل چرخشی | پر |
نوع ضربه گلف را بعد از مشخص کردن رویداد ضربه گلف اضافه کنید:
adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type \ "golf-swing-type-parameter" com.google.android.wearable.healthservices
برای مثال، دستور زیر باعث میشود که یک ضربه گلف جزئی زده شود:
adb shell am broadcast -a "whs.GOLF_SHOT" --es golf_shot_swing_type "partial" \ com.google.android.wearable.healthservices
استفاده از دادههای مصنوعی در Wear OS 3
اگر روی یک شبیهساز که Wear OS 3 را اجرا میکند، آزمایش میکنید، میتوانید از دادههای مصنوعی نیز برای آزمایش برنامه خود استفاده کنید.
فعال کردن تولید دادههای مصنوعی
برای فعال کردن تولید دادههای مصنوعی در Wear OS 3، مراحل زیر را انجام دهید.
- گزینههای توسعهدهنده را فعال کنید.
برای فعال کردن حالت مصنوعی، دستور
adbزیر را اجرا کنید:adb shell am broadcast \ -a "whs.USE_SYNTHETIC_PROVIDERS" \ com.google.android.wearable.healthservices
پس از فعال شدن تولید دادههای مصنوعی، دستورات شرح داده شده در این صفحه را برای کنترل رفتار «کاربر مصنوعی» صادر کنید.
غیرفعال کردن تولید دادههای مصنوعی
برای بازگشت به استفاده از حسگرهای واقعی، دستور زیر را اجرا کنید:
adb shell am broadcast \
-a "whs.USE_SENSOR_PROVIDERS" \
com.google.android.wearable.healthservices
تمرینات مصنوعی
خدمات درمانی از انواع ورزشهای زیر پشتیبانی میکند:
- راه رفتن:
whs.synthetic.user.START_WALKING - در حال اجرا:
whs.synthetic.user.START_RUNNING - پیادهروی:
whs.synthetic.user.START_HIKING - شنا:
whs.synthetic.user.START_SWIMMING - دویدن روی تردمیل:
whs.synthetic.user.START_RUNNING_TREADMILL
این تمرینها دادههای مصنوعی واقعگرایانهای را برای انواع دادههای زیر تولید میکنند:
- ضربان قلب
- تعداد قدم در دقیقه
- موقعیت مکانی GPS، با استفاده از یک مسیر پیشفرض واحد
- مدت زمان فعالیت
- ارتفاع و طبقات
علاوه بر این، حالتهای زیر را میتوان ایجاد کرد:
- حالت خواب - خواب یا بیداری
- تشخیص سقوط
شروع
برای شروع شبیهسازی یک تمرین، broadcast مناسب را به 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
هر فعالیت دارای تنظیمات از پیش تعیینشده برای معیارهای پشتیبانیشده است:
| فعالیت | ضربان قلب | سرعت متوسط | تغییر ارتفاع | استفاده از موقعیت مکانی |
|---|---|---|---|---|
| پیادهروی | ۱۲۰ ضربه در دقیقه | ۱.۴ متر بر ثانیه | 20.0 متر در دقیقه | درست |
| دویدن | ۱۷۰ ضربه در دقیقه | ۲.۳ متر بر ثانیه | 20.0 متر در دقیقه | درست |
| پیادهروی | ۱۵۰ ضربه در دقیقه | ۱.۳ متر بر ثانیه | 20.0 متر در دقیقه | درست |
| شنا | ۱۵۰ ضربه در دقیقه | ۱.۶ متر بر ثانیه | 0.0 متر در دقیقه | درست |
| دویدن روی تردمیل | ۱۶۰ ضربه در دقیقه | ۲.۳ متر بر ثانیه | 20.0 متر در دقیقه | نادرست |
توقف
برای متوقف کردن فعالیت مصنوعی، از دستور زیر استفاده کنید:
adb shell am broadcast \
-a "whs.synthetic.user.STOP_EXERCISE" \
com.google.android.wearable.healthservices
سفارشی
برای کنترل دقیقتر بر روی معیارهای تولید شده، یک فعالیت تمرینی سفارشی را با استفاده از رشتهی عملیاتی whs.synthetic.user.START_EXERCISE شروع کنید. ترکیبی از پرچمهای زیر را ارائه دهید:
-
--ei exercise_options_duration_secs <int>: مدت زمان تمرین بر حسب ثانیه. مقدار پیشفرض:0. -
--ei exercise_options_heart_rate <int>: ضربان قلب بر حسب ضربه در دقیقه. میانگین:70. -
--ef exercise_options_average_speed <float>: میانگین سرعت بر حسب متر بر ثانیه. همچنین بر تعداد قدمها در دقیقه یا ریتم گامها تأثیر میگذارد. مقدار پیشفرض:0. -
--ez exercise_options_use_location <boolean>: آیا دادههای موقعیت مکانی در طول تمرین با استفاده از یک مسیر پیشفرض منتشر شوند یا خیر. پیشفرض:false. -
--ef exercise_options_max_elevation_rate <float>: حداکثر نرخ تغییر ارتفاع ممکن بر حسب متر بر دقیقه. پیشفرض:0.
برای مثال، گزینههای تمرین را به روش زیر تنظیم کنید:
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
همچنین میتوانید انواع دادههای موجود را تغییر دهید، صرف نظر از اینکه سختافزار واقعی یا شبیهسازی شده از یک نوع داده خاص پشتیبانی میکند یا خیر. برای مثال، میتوانید ارتفاع مطلق را فعال یا غیرفعال کنید، همانطور که در قطعه کد زیر نشان داده شده است:
# 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
سایر ایالتها و رویدادها
این بخش نحوه شبیهسازی حالتها و رویدادهای دیگر، مانند خواب و افتادن را شرح میدهد.
حالت خواب
همچنین میتوانید حالتهای خواب را برای کاربر مصنوعی فعال کنید. دو حالت پشتیبانی میشوند: خواب و بیداری.
برای ورود به حالت خواب، این دستور را اجرا کنید:
adb shell am broadcast \
-a "whs.synthetic.user.START_SLEEPING" \
com.google.android.wearable.healthservices
برای ورود به حالت بیداری، این دستور را اجرا کنید:
adb shell am broadcast \
-a "whs.synthetic.user.STOP_SLEEPING" \
com.google.android.wearable.healthservices
تشخیص سقوط
برای شبیهسازی سقوط، این دستور را اجرا کنید:
adb shell am broadcast \
-a "whs.synthetic.user.FALL_OVER" \
com.google.android.wearable.healthservices
ممکن است تا یک دقیقه طول بکشد تا سرویسهای بهداشتی رویداد پاییزی را ارائه دهند.
{% کلمه به کلمه %}برای شما توصیه میشود
- توجه: متن لینک زمانی نمایش داده میشود که جاوا اسکریپت غیرفعال باشد.
- نوع منبع
- عبارت حسابی
- پیکربندی لیست