آمادهسازی برای گواهینامه
- دستگاههای آزمایشی را آماده کنید.
- به ۵ دستگاه Android نیاز خواهید داشت.
- این دستگاهها باید شامل موارد زیر باشند:
- حداقل یک Android T (13) و یک Android V (15).
- حداقل یک Samsung و یک Pixel.
- برای مثال:
- ۱ OnePlus (با Android 10).
- ۳ Samsung (Android 11، 12، 13).
- ۱ Pixel (Android 15).
- این دستگاهها باید شامل موارد زیر باشند:
- یک دستگاه بدون «تعویض منبع صدا»:
- هر iPhone، رایانه، رایانه کیفی مجهز به بلوتوث، یا تلفن Android که «تعویض منبع صوتی» در آن غیرفعال باشد.
- میتوانید «تعویض منبع صدا» را از تنظیمات جزئیات دستگاه بلوتوث خاموش کنید.
- مورد آزمایشی ۲.۸ «چندنقطهای» (MP) علاوهبر ۵ تلفن آزمایشی، به دستگاهی بدون «تعویض منبع صوتی» نیاز دارد.
- هر iPhone، رایانه، رایانه کیفی مجهز به بلوتوث، یا تلفن Android که «تعویض منبع صوتی» در آن غیرفعال باشد.
- به ۵ دستگاه Android نیاز خواهید داشت.
با حسابهای آزمایشیتان به گروه آزمایشی «تعویض منبع صدا» بپیوندید تا اعلانهای اشکالزدایی در تلفنهای آزمایشی نشان داده شود.
- این کار همچنین به Google امکان میدهد دادههای آزمایشی را ازطریق Google Analytics جمعآوری کند.
کلاسیک با A2DP+HFP
- مطمئن شوید همه دستگاههای Android نسخه
23.xx.xxیا بالاتر GmsCore را نصب کرده باشند.
بلوتوث کممصرف با صدای کممصرف
- حداقل دو تلفن مرجع باید از «صدای کممصرف» پشتیبانی کنند.
- برای مثال، یک تلفن Samsung و یک تلفن Pixel که از «صدای کممصرف» پشتیبانی میکنند.
- مطمئن شوید همه دستگاههای Android نسخه
24.33.xxیا بالاتر GmsCore را نصب کرده باشند.
معیارهای گواهینامه
- نرخ موفقیت «تعویض هدف» باید در همه چارچوبهای تست از ۹۵٪ فراتر رود.
در آزمایشهایی که نیاز به جابهجایی دارند، اتصال نمایه و حالت فعال جابهجایی باید در حداقل ۷۵٪ موارد ظرف ۳ ثانیه پساز راهاندازی رویدادهای صوتی تکمیل شود.
کلاسیک با A2DP+HFP
«خودآزماییها» باید در ترکیبهای زیر انجام شوند:
- تلفن الف=Android S (۱۲) + تلفن ب=Android T (۱۳)
- تلفن الف=Android T (13) + تلفن ب=Android S (12)
بلوتوث کممصرف با صدای کممصرف
«خودآزماییها» باید در ترکیبهای زیر انجام شوند:
- تلفن الف: BT Classic، تلفن ب: BT Classic
- تلفن الف: LE Audio، تلفن ب: BT Classic
- تلفن الف: BT Classic، تلفن ب: LE Audio
درصورت تمایل، ارائهدهندگانی که از اتصال «صدای کممصرف» دوگانه پشتیبانی میکنند باید موارد زیر را آزمایش کنند:
- تلفن الف: صدای کممصرف، تلفن ب: صدای کممصرف
راهنمای آزمایش
آمادهسازی دستگاه تحت آزمایش (DUT)
- تأیید کنید که دستگاه بلوتوث قبلاً با هیچ تلفنی که به سیستم «حساب Google» آزمایشی وارد شده است جفت نشده باشد.
- اگر دستگاه با «حساب Google» آزمایشی جفت شده است، برای پاک کردن جفتسازی،
کارهای زیر را انجام دهید:
- در دستگاههای جفتشده:
- به تنظیمات بلوتوث بروید.
- «فراموش کردن دستگاه» را انتخاب کنید.
- «حالت هواپیما» را روشن و خاموش کنید.
- در دستگاههای جفتشده:
- مطمئن شوید «ذخیره خودکار دستگاهها» روشن باشد.
- این کلید بهطور پیشفرض «خاموش» است.
- میتوانید این گزینه را در «تنظیمات > Google > دستگاهها > دستگاههای ذخیرهشده» (یک مورد برای هر دستگاه تحت آزمایش) پیدا کنید.
- دستگاه بلوتوث را در «حالت جفتسازی» قرار دهید.
- دستگاه بلوتوث اولیه (A) را جفت کنید.
- دستگاههای بلوتوث بعدی را با دستگاههای دیگر (B، C، D، و غیره) جفت کنید.
- اگر دستگاه با «حساب Google» آزمایشی جفت شده است، برای پاک کردن جفتسازی،
کارهای زیر را انجام دهید:
حوزه
- همه هدستها آزمایشها را از برگههای مختلف در گزارش «خودآزمایی» BT Classic یا BT LE Audio اجرا میکنند.
- هدستهایی که فقط از حالت SinglePoint (SP) پشتیبانی میکنند، موارد زیر را اجرا میکنند:
- برگه Generic_test.
- هدستهایی که از حالت MP پشتیبانی میکنند موارد زیر را اجرا میکنند:
- برگه Generic_test.
- برگه Multipoint_only.
- هدستهای چندپلتفرمی که میتوانند به حالت تکپلتفرمی تغییر کنند، موارد زیر را اجرا میکنند:
- برگه Generic_test با MP خاموش.
- برگه Generic_test با MP روشن.
- برگه Multipoint_only با MP روشن.
تکمیل «خودآزمایی» و «گزارش خودآزمایی»
- از «گزارشهای خودآزمایی» BT Classic یا BT LE Audio کپی بگیرید.
- همه چارچوبهای تست را حداقل دو بار اجرا کنید.
آزمایشها باید به شکل زیر اجرا شوند:
کلاسیک با A2DP+HFP
- دستگاه «ب» دستگاه اصلی تحت آزمایش خواهد بود.
- جزئیات «دستگاه ب» را در فیلدهای «تلفن» و «سیستمعامل» در بالای الگو وارد کنید.
یک چارچوب تست نمونه:
تلفنهای آزمایشی:
- دستگاه ۱: Samsung (Android 13)
- دستگاه ۲: Pixel (با Android 12 یا 13) و دستگاههای دیگر.
آزمایشهای اجراشده:
- مسیر ۱. Device A=Samsung S10+ (12), Device B=Pixel 7 pro (13) column D: Phone=Pixel 7 pro, OS=Android 13
- مسیر ۲. Device A=Pixel 7 pro (13), Device B=Pixel 6(12) column E: Phone=Pixel 6, OS=Android 12
نمونهای از آزمایش تکمیلشده در الگوی خودآزمایی:

بلوتوث کممصرف با صدای کممصرف
- دستگاه الف=Android V (نسخه ۱۵) + دستگاه ب=Android T (نسخه ۱۳)
- دستگاه الف=Android T (نسخه ۱۳) + دستگاه ب=Android V (نسخه ۱۵)
- دستگاه الف=Android T (13) + دستگاه ب=Android S (12)
- دستگاه الف=Android T (۱۵) + دستگاه ب=Android V (۱۵)
- دستگاه «ب» دستگاه اصلی تحت آزمایش خواهد بود.
- جزئیات «دستگاه ب» را در فیلدهای «تلفن» و «سیستمعامل» در بالای الگو وارد کنید.
یک چارچوب تست نمونه:
تلفنهای آزمایشی:
- دستگاه ۱: Samsung (Android 13)
- دستگاه ۲: Pixel (با Android 15) و غیره.
آزمایشهای اجراشده:
- [LEA+BT]: Device A= Pixel 8 (15), Device B=Pixel 7 pro (13) column D: Phone=Pixel 7 pro, OS=Android 13
- [BT+LEA]: Device A=Pixel 7 (13), Device B=Pixel 8 (Android 15) column E: Phone=Pixel 8, OS=Android 15
- [BT+BT]: Device A=Pixel 7 pro (13), Device B=Samsung S10+ (12) column E: Phone=Samsung S10+, OS=Android 12
- [LEA+LEA]: Device A=Pixel 8 (15), Device B=Pixel 8(15) column E: Phone=Pixel 8, OS=Android 15
نمونهای از آزمایش تکمیلشده در الگوی خودآزمایی:

رویدادهای صوتی:
۴ نوع رویداد صوتی آزمایششده و برنامههای آزمایشی توصیهشده عبارتاند از:
- تماس:
- برنامه تلفن داخلی.
- VoIP: هر برنامه VoIP کار خواهد کرد، مانند:
- برنامه آزمایشی «تعویض منبع صوتی».
- پیامرسان فیسبوک.
- خط.
- واتساپ.
- Google Meet.
- Google Meet.
- رسانه: هر پخشکننده صوتی کار خواهد کرد، مثل:
- برنامه آزمایشی «تعویض منبع صوتی».
- Youtube Music.
- Apple Music.
- اسپاتیفای.
- پادکست Google.
- بازی:
- برنامه آزمایشی «تعویض منبع صوتی».
- تماس:
اطلاعات اشکالزدایی:
اعلانها پساز پیوستن به گروه fp-sass-partner-test فعال میشوند. چند نمونه در زیر آمده است:
- اعلان آخرین وضعیت:

- اعلان عدم تعویض:

- اعلان تأخیر سوئیچ:

اندازهگیری تأخیر
- دو نوع تأخیر کلید وجود دارد:
- درحال اتصال نمایه بلوتوث به «جستجوگر» قطعشده.
- این شامل همه موارد SinglePoint و برخیاز موارد MP میشود که «جستجوگر» هدف (دستگاه B) آنها قطع شده است.
- درحال جابهجایی «جستجوگر» متصل فعال.
- این شامل برخیاز موارد MP میشود که «جستجوگر» هدف (دستگاه ب) ازقبل متصل شده است.
- درحال اتصال نمایه بلوتوث به «جستجوگر» قطعشده.
- دو روش برای بازیابی اطلاعات تأخیر وجود دارد:
- همه تأخیرها را میتوان با فرمان adb تخلیه کرد.
- برای جزئیات، به بخش تأخیر تخلیه مراجعه کنید.
- این فرمان میتواند پساز تکمیل حداقل یک چارچوب تست، تأخیر را ارائه و ضبط کند.
- استفاده از برنامه آزمایش تعویض منبع صوتی.
- برنامهای که در «جستجوگر» هدف اجرا میشود، پساز تعویض، تأخیر را نمایش خواهد داد.
- اگر جابهجایی انجام نشده باشد، برنامه دلیل «عدم جابهجایی» را نمایش میدهد.
- همه تأخیرها را میتوان با فرمان adb تخلیه کرد.
برنامه آزمایشی «تعویض منبع صوتی»:
- استفاده از برنامه برای راهاندازی رویدادهای صوتی VoIP/رسانه/بازی درطول خودآزمایی
راهاندازی آزمایش را سادهتر میکند و تأخیر رویداد «جستجوگر» را کاهش میدهد.
- جدیدترین نسخه را میتوانید از اینجا بارگیری کنید.
- آزمایش LE Audio VoIP به خطمشیای نیاز دارد که بهصورت دستی فعال شود: > adb root > adb shell settings put global hidden_api_policy 1 > adb reboot
- نصب برنامه:
- apk را در تلفن آزمایشیتان کپی کنید و آن را باز کنید.
- یا از
adb install audio_test_app.apkاستفاده کنید.
- اگر کادر گفتگویی میبینید که دسترسی به اعلان را درخواست میکند:
- روی «تأیید» کلیک کنید
- «FP SASS test» را در فهرست برنامه انتخاب کنید
- دسترسی به اعلان را مجاز کنید.
نمای کلی برنامه:

ارائهدهنده هدف
- با کلیک کردن روی این دکمه، فهرستی از دستگاههای بلوتوث جفتشده نشان داده میشود. موردی را که میخواهید آزمایش کنید انتخاب کنید.
- دکمههای «اتصال» و «قطع اتصال» مانند دکمههای موجود در جزئیات دستگاه در تنظیمات «بلوتوث» عمل میکنند.
وضعیت کنونی
- این فیلد آخرین وضعیت اتصالی را که «جستجوگر» از «ارائهدهنده» بااستفاده از تبلیغات BLE یا جاریسازی رویداد دریافت کرده است نشان میدهد.
- اعلانهای اشکالزدایی تعویض منبع صدا نیز در اینجا نشان داده میشود.
نوع جوینده
- از این گزینه برای جابهجا کردن دستگاه بین جاریسازیهای صوتی استفاده میشود.
نوع صدا
کلاسیک با A2DP+HFP
- VoIP
- با انتخاب این حالت، حالت صوتی به
AudioManager.MODE_IN_COMMUNICATIONو تماس بهAudioManager.startBluetoothScoتغییر میکند، سپس صدا باUSAGE_VOICE_COMMUNICATIONپخش میشود. - نوع جاریسازی
STREAM_VOICE_CALLاست. - وضعیت اتصال رساننده باید ظرف ۵ ثانیه به
CONNECTED_HFPتغییر کند.
- با انتخاب این حالت، حالت صوتی به
- رسانه
- با انتخاب این حالت، صدای پشتیبانیکننده از AVRCP پخش خواهد شد. نوع استفاده از صدا:
USAGE_MEDIA. - وضعیت اتصال رساننده باید ظرف ۵ ثانیه به
CONNECTED_A2DP_WITH_AVRCPتغییر کند. - هنگام شروع یا توقف، وضعیت اتصال ممکن است برای مدت کوتاهی به
CONNECTED_A2DP_ONLYتغییر کند.
- با انتخاب این حالت، صدای پشتیبانیکننده از AVRCP پخش خواهد شد. نوع استفاده از صدا:
بازی
- با انتخاب این حالت، صدایی پخش میشود که از AVRCP پشتیبانی نمیکند. نوع استفاده از صدا:
USAGE_GAME. - وضعیت اتصال رساننده باید ظرف ۵ ثانیه به
CONNECTED_A2DP_ONLYتغییر کند.
- با انتخاب این حالت، صدایی پخش میشود که از AVRCP پشتیبانی نمیکند. نوع استفاده از صدا:
بلوتوث کممصرف با صدای کممصرف
VoIP
- با انتخاب این حالت، حالت صدا به
AudioManager.MODE_IN_COMMUNICATIONتغییر میکند و صدا باUSAGE_VOICE_COMMUNICATIONپخش میشود.
- نوع جاریسازی
STREAM_VOICE_CALLاست. - وضعیت اتصال رساننده باید ظرف ۵ ثانیه به
CONNECTED_LE_AUDIO_CALLتغییر کند.
- با انتخاب این حالت، حالت صدا به
رسانه
- با انتخاب این حالت، صدا با نوع جاریسازی
STREAM_MUSICپخش خواهد شد. نوع استفاده از صدا:USAGE_MEDIA. - وضعیت اتصال رساننده باید ظرف ۵ ثانیه به
CONNECTED_LE_AUDIO_MEDIA_WITH_CONTROLتغییر کند. - وضعیت اتصال ممکن است هنگام شروع یا توقف، برای مدت کوتاهی به
CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROLتغییر کند.
- با انتخاب این حالت، صدا با نوع جاریسازی
بازی
- با انتخاب این حالت، صدایی پخش میشود که کاربر کنترل مستقیمی بر آن ندارد. نوع استفاده از صدا:
USAGE_GAME. - وضعیت اتصال رساننده باید ظرف ۵ ثانیه به
CONNECTED_LE_AUDIO_MEDIA_WITHOUT_CONTROLتغییر کند.
- با انتخاب این حالت، صدایی پخش میشود که کاربر کنترل مستقیمی بر آن ندارد. نوع استفاده از صدا:
دکمههای پخش و توقف
- دکمههای «پخش» و «توقف» صدا را شروع یا متوقف میکنند.
نتیجه سوئیچ
- این فیلد تأخیر فعال «اتصال و کلید» را نمایش میدهد. همچنین دلیل رد کردن تعویض را درصورت راهاندازی رویداد صوتی اما انجام نشدن تعویض نمایش میدهد.
- تأخیر با واحد میلیثانیه (ms) اندازهگیری میشود.
- بهطور کلی، تأخیر از شروع راهانداز «تعویض منبع صدا» تا دریافت رویداد «نمایه BT متصل شد» یا «اعلان تعویض چندنقطهای» اندازهگیری میشود.
- تعویضهای راهاندازیشده توسط ارائهدهنده، تأخیر را از شروع صدا اندازهگیری میکنند.
تأخیر روبرداری
- فرمان زیر به کاربر اجازه میدهد هنگام اجرای آزمایشهای دستی، اندازهگیریهای تأخیر را ضبط کند:
adb shell dumpsys activity service com.google.android.gms/.nearby.discovery.service.DiscoveryService- اندازهگیریهای تأخیر در بخش
SwitchHistoryNearbyDeviceManagerنشان داده میشود:
- اندازهگیریهای تأخیر در بخش
NearbyDeviceManager
Nearby Sass device count: 1
Sass device - address:XX:XX:XX:XX:XX:XX, name:Googler's Pixel Buds, accountKey:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX, modelId:6edaf7
SwitchHistory
15:30:21:166 - 15:30:25:201, latency 3035ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
15:34:58:568 - 15:34:58:568, latency 0ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, HFP
15:36:26:615 - 15:36:31:603, latency 1988ms, Succeed, SASS_TRIGGERED_CONNECT, SASS switch, A2DP
15:37:56:108 - 15:37:56:250, latency 142ms, Succeed, SWITCH_ACTIVE_TO_SELF, SASS switch, A2DP"
- هرگونه تعویضی که GmsCore نتواند اندازهگیری کند (مثلاً تعویض فعال برای HFP) بهعنوان تأخیر ۰ میلیثانیهای ثبت خواهد شد.
مرجع الگوهای گزارش:

مشکلات شناختهشده:
موارد زیر اشکالهای شناختهشدهای هستند که «جستجوگر» ایجاد کرده است:
- تعویض نادرست صدای بازی.
- تلفنهای Samsung هنگام اجرای بازی، وضعیت اتصال را بهجای
CONNECTED_A2DP_ONLYرویCONNECTED_A2DP_WITH_AVRCPتنظیم میکنند. - برخیاز بازیها (مثل Candy crush) ممکن است موسیقی پسزمینه را بازپخش کنند و بدون ورودی کاربر، رویداد صوتی جدیدی را راهاندازی کنند. تلفنهای متصل ممکن است بهطور مداوم صدا را در هر تلفنی که بازی را باز میکند عوض کنند.
- تلفنهای Samsung هنگام اجرای بازی، وضعیت اتصال را بهجای