في نظام التشغيل Android 12 أو الإصدارات الأحدث، يمكن لصنّاع الأجهزة استخدام تجربة اتصال مبسّطة اختياريًا تساعد المستخدمين في فهم اتصالات الشبكة بشكلٍ أفضل والتبديل بين مزوّدي خدمة الإنترنت وتحديد وحلّ المشاكل المتعلّقة بالاتصال بالشبكة. تعكس هذه التغييرات في تجربة المستخدم مقارنةً بإصدار Android 11 أو الإصدارات الأقدم، التغييرات في واجهة المستخدم والرمزيات وواجهة برمجة التطبيقات للإعدادات السريعة والإعدادات. تتوفّر كل هذه التغييرات في AOSP لتمكين الشركات المصنّعة للأجهزة كما هي أو للتخصيص.
نظرة عامة على تجربة الاتصال المبسّطة
يصف هذا القسم التغييرات الرئيسية في واجهة المستخدم لتجربة الربط المبسّطة في AOSP بدءًا من Android 12.
مربّع الإنترنت في "الإعدادات السريعة"
تتضمّن قائمة "الإعدادات السريعة" مربّع اتّصال بالإنترنت يفتح لوحة اتّصال بالإنترنت يمكن للمستخدمين من خلالها التبديل بين اتّصالات Wi-Fi وشبكة الجوّال. يجمع مربّع الإنترنت مربّعَي Wi-Fi وبيانات الجوّال المستخدَمين في الإصدار 11 من Android أو الإصدارات الأقدم.
الشكل 1. مربّع الإنترنت في "الإعدادات السريعة"
قسم "المكالمات والرسائل القصيرة" في "الإعدادات"
يتضمّن تطبيق "الإعدادات " قسم المكالمات والرسائل القصيرة ضمن الشبكة والإنترنت الذي يعرض حالة التوفّر وخيارات الاتصال عبر Wi-Fi.
الشكل 2. قسم "المكالمات والرسائل القصيرة" في "الإعدادات"
زر "إعادة الضبط" في "الإعدادات"
في تطبيق "الإعدادات"، يشتمل الشبكة والإنترنت > الإنترنت على زر إعادة الضبط يتيح للمستخدمين إعادة ضبط أجهزة مودم الاتصال الهاتفي وWi-Fi على الجهاز، وهو ما قد يكون مفيدًا عند تحديد مشاكل اتصال الشبكة وحلّها.
الشكل 3: زر إعادة الضبط لتحديد مشاكل الاتصال وحلّها
التنفيذ
لتفعيل تجربة الاتصال الميسّرة على جهازك، استخدِم علامة الإعدادات العامة التالية:
- الاسم:
persist.sys.fflag.override.settings_provider_model
- النوع: قيمة منطقية
- القيمة: اضبطها على
true
لتفعيل سلوك تبسيط عملية الاتصال ، أو علىfalse
لإيقافه واستخدام السلوك القديم. بدءًا من الإصدار 12 من نظام التشغيل Android، لن تتم صيانة مسار رمز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 المرئية لمدة 30 دقيقة كحد أدنى (يمكن التحكّم في ذلك من خلال تراكبconfig_wifiAllNonCarrierMergedWifiMinDisableDurationMinutes
) وبحد أقصى 6 ساعات (يمكن التحكّم في ذلك من خلال تراكبconfig_wifiAllNonCarrierMergedWifiMaxDisableDurationMinutes
). تتم إعادة تفعيل شبكات Wi-Fi كلما تم تفعيل شبكة Wi-Fi أو إعادة تشغيل الجهاز، أو إذا اختار المستخدم شبكة Wi-Fi (في هذه الحالة، يتم تنفيذstopRestrictingAutoJoinToSubscriptionId()
API من خلال "الإعدادات")، أو إذا لم تكن الشبكة مرئية لمدة 60 دقيقة.WifiManager#stopRestrictingAutoJoinToSubscriptionId()
: استعادة الأداء العادي
لاستخدام زر إعادة الضبط وواجهة المستخدم لتحديد المشاكل وحلّها، والتي يتم تنفيذها في فئة
com.android.settingslib.connectivity.ConnectivitySubsystemsRecoveryManager
، استخدِم واجهات برمجة التطبيقات التالية:
WifiManager#restartWifiSubsystem(String reason)
: يؤدي هذا الإجراء إلى إعادة تشغيل نظام Wi-Fi الفرعي.TelephonyManager#rebootRadio()
: إعادة ضبط مودم الراديو
العمل مع مشغّلي شبكات جوّال متعدّدين
إذا كنت تستخدم تجربة الاتصال المبسّطة مع مشغّلي شبكات جوّال معيّنين وليس غيرهم، انتبه إلى سيناريو استخدام شرائح SIM متعددة، حيث يستخدم المستخدم شريحة SIM واحدة من مشغّل شبكة جوّال شريك اتّخذ تغييرات على واجهة المستخدم، بينما لم يفعل ذلك مشغّل الشبكة الآخر. في هذا السيناريو، احرص على تحديد واجهة المستخدم التي تظهر للمستخدمين واختبار السلوك على أجهزتك بدقة.