میانای کاربر اتصال‌پذیری

در Android 12 یا نسخه‌های بالاتر، سازندگان دستگاه می‌توانند به‌صورت اختیاری از تجربه اتصال ساده‌شده‌ای استفاده کنند که به کاربران کمک می‌کند اتصالات شبکه خود را بهتر درک کنند، بین ارائه‌دهندگان اینترنت جابه‌جا شوند، و مشکلات اتصال شبکه را عیب‌یابی کنند. این تغییرات در تجربه کاربری در مقایسه با Android 11 یا نسخه‌های پایین‌تر، در رابط کاربری، نمادنگاری، و تغییرات «میانای برنامه‌سازی کاربردی» برای «تنظیمات فوری» و «تنظیمات» منعکس می‌شود. همه این تغییرات در AOSP دردسترس است تا سازندگان دستگاه بتوانند آن‌ها را همان‌گونه که هست فعال کنند یا سفارشی‌سازی کنند.

نمای کلی تجربه اتصال‌پذیری ساده‌شده

این بخش تغییرات عمده در میانای کاربر تجربه اتصال ساده‌شده در AOSP را از Android 12 به بعد شرح می‌دهد.

کاشی «اینترنت» در «تنظیمات فوری»

منو «تنظیمات فوری» شامل کاشی «اینترنت» است که پانل «اینترنت» را باز می‌کند و کاربران می‌توانند در آن بین اتصال Wi-Fi و اتصال تلفن همراه جابه‌جا شوند. کاشی «اینترنت» کاشی‌های Wi-Fi و «داده تلفن همراه» را که در Android نسخه ۱۱ یا پایین‌تر استفاده می‌شد ترکیب می‌کند.

کاشی اینترنت در منو «تنظیمات فوری»

شکل ۱. کاشی «اینترنت» در «تنظیمات فوری»

بخش «تماس‌ها و پیامک» در «تنظیمات»

برنامه «تنظیمات» شامل بخش تماس‌ها و پیامک در زیر شبکه و اینترنت است که وضعیت دردسترس بودن و گزینه‌های تماس Wi-Fi را نمایش می‌دهد.

بخش «تماس‌ها و پیامک» در «تنظیمات»

شکل ۲. بخش «تماس‌ها و پیامک» در «تنظیمات»

دکمه بازنشانی در «تنظیمات»

در برنامه «تنظیمات»، شبکه و اینترنت > اینترنت شامل دکمه بازنشانی است که به کاربران امکان می‌دهد مودم‌های تلفن و Wi-Fi را در دستگاه بازنشانی کنند. این کار ممکن است هنگام عیب‌یابی مشکلات اتصال شبکه مفید باشد.

دکمه «بازنشانی» در «تنظیمات» برای عیب‌یابی مشکلات اتصال‌پذیری

شکل ۳. دکمه بازنشانی برای عیب‌یابی مشکلات اتصال‌پذیری

پیاده‌سازی

برای فعال کردن تجربه اتصال ساده‌شده در دستگاهتان، از پرچم تنظیمات سراسری زیر استفاده کنید:

  • نام: persist.sys.fflag.override.settings_provider_model
  • نوع: بولی
  • مقدار: برای فعال کردن عملکرد ساده‌سازی اتصال‌پذیری، روی true تنظیم کنید، و برای غیرفعال کردن آن و استفاده از عملکرد قدیمی، روی false تنظیم کنید. از Android 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: مقدار بولی که نشان می‌دهد نماد قدرت تماس در رابط کاربری سیستم نمایش داده می‌شود یا نه.

میاناهای برنامه‌سازی کاربردی چارچوب

برای غیرفعال کردن موقت شبکه‌های Wi-Fi اطراف، از میاناهای برنامه‌سازی کاربردی زیر استفاده کنید:

  • WifiManager#startRestrictingAutoJoinToSubscriptionId(int subscriptionId): به کاربر اجازه می‌دهد شبکه شرکت مخابراتی را بدون غیرفعال کردن Wi-Fi انتخاب کند. همه شبکه‌های Wi-Fi نمایان را برای حداقل ۳۰ دقیقه (کنترل‌شده ازطریق رونهاد config_wifiAllNonCarrierMergedWifiMinDisableDurationMinutes) و حداکثر ۶ ساعت (کنترل‌شده ازطریق رونهاد config_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutes) غیرفعال می‌کند. هرگاه Wi-Fi روشن/خاموش شود، دستگاه بازراه‌اندازی شود، کاربر شبکه Wi-Fi را انتخاب کند (در این حالت، stopRestrictingAutoJoinToSubscriptionId() API توسط «تنظیمات» اجرا می‌شود)، یا اگر شبکه به‌مدت ۶۰ دقیقه نمایان نباشد، شبکه‌های Wi-Fi دوباره فعال می‌شوند.
  • ‫WifiManager#stopRestrictingAutoJoinToSubscriptionId(): عملکرد عادی را بازیابی می‌کند.

برای پشتیبانی از دکمه بازنشانی و میانای کاربر عیب‌یابی که در کلاس com.android.settingslib.connectivity.ConnectivitySubsystemsRecoveryManager پیاده‌سازی شده است، از میاناهای برنامه‌سازی کاربردی زیر استفاده کنید:

  • WifiManager#restartWifiSubsystem(String reason): زیرسیستم Wi-Fi را بازراه‌اندازی می‌کند.
  • ‫TelephonyManager#rebootRadio(): مودم رادیویی را بازنشانی می‌کند.

کار کردن با چند شرکت مخابراتی

اگر تجربه اتصال‌پذیری ساده‌شده را برای برخی‌از شرکت‌های مخابراتی بپذیرید اما برای بقیه نپذیرید، از سناریو چند سیم‌کارته آگاه باشید، در این سناریو کاربر از دو سیم‌کارت استفاده می‌کند، یکی از شرکت مخابراتی شریکی که تغییرات رابط کاربری را پذیرفته است و دیگری از شرکتی که نپذیرفته است. در این سناریو، حتماً تصمیم بگیرید کاربران کدام «واسط کاربر» را ببینند و عملکرد را در دستگاه‌هایتان به‌طور کامل آزمایش کنید.