در Android 12 یا بالاتر، سازندگان دستگاه میتوانند به صورت اختیاری یک تجربه اتصال ساده را اتخاذ کنند که به کاربران کمک میکند اتصالات شبکه خود را بهتر درک کنند، بین ارائهدهندگان اینترنت جابهجا شوند و مشکلات اتصال شبکه را عیبیابی کنند. این تغییرات در تجربه کاربر در مقایسه با اندروید 11 یا پایینتر، در رابط کاربری، نمادنگاری و تغییرات API برای تنظیمات و تنظیمات سریع منعکس میشود. همه این تغییرات در AOSP برای سازندگان دستگاه موجود است تا آنها را فعال کنند یا سفارشی کنند.
مروری بر تجربه اتصال ساده شده
این بخش تغییرات عمده رابط کاربری تجربه اتصال ساده شده در AOSP را که از اندروید 12 شروع می شود، توضیح می دهد.
کاشی اینترنت در تنظیمات سریع
منوی تنظیمات سریع شامل یک کاشی اینترنتی است که یک پانل اینترنت را باز می کند که در آن کاربران می توانند بین Wi-Fi و اتصالات تلفن همراه جابجا شوند. کاشی اینترنت ترکیبی از کاشیهای Wi-Fi و داده موبایلی است که در Android 11 یا پایینتر استفاده میشوند.
شکل 1. کاشی اینترنت در تنظیمات سریع
بخش تماس و پیامک در تنظیمات
برنامه تنظیمات شامل بخش تماس و پیامک در زیر شبکه و اینترنت است که وضعیت در دسترس بودن و گزینههای تماس Wi-Fi را نشان میدهد.
شکل 2. بخش تماس و پیامک در تنظیمات
دکمه ریست در تنظیمات
در برنامه تنظیمات، شبکه و اینترنت > اینترنت شامل یک دکمه بازنشانی است که به کاربران امکان میدهد مودمهای تلفن و Wi-Fi دستگاه را بازنشانی کنند، که ممکن است هنگام عیبیابی مشکلات اتصال شبکه مفید باشد.
شکل 3. دکمه تنظیم مجدد برای عیب یابی مشکلات اتصال
پیاده سازی
برای فعال کردن تجربه اتصال ساده در دستگاه خود، از پرچم تنظیمات جهانی زیر استفاده کنید:
- نام:
persist.sys.fflag.override.settings_provider_model
- نوع: بولی
- مقدار: برای فعال کردن رفتار سادهسازی اتصال، روی
true
، برای غیرفعال کردن آن و استفاده از رفتار قدیمیfalse
را تنظیم کنید. با شروع اندروید 12، مسیر رمز برایfalse
دیگر به طور فعال حفظ نمی شود.
علاوه بر این، میتوانید حالتهای رابط کاربری زیر را برای اپراتورهای جداگانه با استفاده از پیکربندی حامل پیکربندی کنید. کلیدهای پیکربندی عبارتند از:
-
CarrierConfigManager#KEY_CARRIER_PROVISIONS_WIFI_MERGED_NETWORKS_BOOL
: یک بولی که نشان می دهد شرکت مخابراتی شبکه های Wi-Fi را که بخشی از شبکه اصلی آن هستند و به عنوان بخشی از شبکه تلفن همراه نمایش داده می شوند پیکربندی می کند یا خیر. این کار با روشWifiNetworkSuggestion.Builder#setCarrierMerged(booleanisCarrierMerged)
کار می کند. -
CarrierConfigManager#KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL
: یک بولی که نشان می دهد آیا اتصال شبکه داده (IP) به عنوان یک شرط تکمیلی برای نمایش دروازه نماد عدم تماس استفاده می شود یا خیر. -
CarrierConfigManager#KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL
: یک بولی که نشان می دهد آیا نماد قدرت تماس در رابط کاربری سیستم نمایش داده می شود یا خیر.
APIهای چارچوب
برای غیرفعال کردن موقت شبکههای Wi-Fi اطراف، از APIهای زیر استفاده کنید:
-
WifiManager#startRestrictingAutoJoinToSubscriptionId(int subscriptionId)
: به کاربر این امکان را می دهد تا بدون غیرفعال کردن Wi-Fi یک شبکه حامل را انتخاب کند. تمام شبکههای Wi-Fi قابل مشاهده را برای حداقل مدت زمان 30 دقیقه (که از طریق پوششconfig_wifiAllNonCarrierMergedWifiMinDisableDurationMinutes
کنترل میشود)، و حداکثر مدت زمان 6 ساعت (که از طریقconfig_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutes
کنترل میشود) غیرفعال میکند. شبکههای Wi-Fi هر زمان که Wi-Fi خاموش شود، مجدداً فعال میشوند، دستگاه راهاندازی مجدد میشود، اگر کاربر یک شبکه Wi-Fi را انتخاب کند (در این صورت APIstopRestrictingAutoJoinToSubscriptionId()
توسط تنظیمات اجرا میشود)، یا اگر شبکه قابل مشاهده نباشد. به مدت 60 دقیقه -
WifiManager#stopRestrictingAutoJoinToSubscriptionId()
: عملکرد عادی را بازیابی می کند.
برای پشتیبانی از دکمه تنظیم مجدد و رابط کاربری عیب یابی که در کلاس com.android.settingslib.connectivity.ConnectivitySubsystemsRecoveryManager
پیاده سازی شده است، از API های زیر استفاده کنید:
-
WifiManager#restartWifiSubsystem(String reason)
: زیرسیستم Wi-Fi را مجددا راه اندازی می کند. -
TelephonyManager#rebootRadio()
: مودم رادیویی را بازنشانی می کند.
با چندین حامل کار کنید
اگر تجربه اتصال سادهشده را برای شرکتهای مخابراتی خاص و نه برخی دیگر اتخاذ میکنید، از سناریوی چند سیمکارت آگاه باشید، که در آن کاربر از دو سیمکارت استفاده میکند، یکی از شریک شرکت مخابراتی که تغییر رابط کاربری را انتخاب کرده است در حالی که دیگری این کار را نکرده است. در این سناریو، مطمئن شوید که تصمیم میگیرید که کاربران کدام UI را ببینند و رفتار را در دستگاههای خود بهطور کامل آزمایش کنید.