توفر هذه الصفحة نظرة عامة على الميزات وواجهات برمجة التطبيقات التغييرات في السلوك التي تم تقديمها في Android 10.
الملفات الشخصية للعمل للأجهزة المملوكة للشركة
يقدّم Android 10 ميزات جديدة لإعداد التقارير والمصادقة الأجهزة المملوكة للشركة التي لا تتطلب سوى ملف شخصي للعمل.
أدوات إدارة حسابات محسّنة للملفات الشخصية للعمل
يمكنك توفير الملفات الشخصية للعمل على الأجهزة التي تعمل بنظام التشغيل Android 10 والإصدارات الأحدث المسجَّلة باستخدام رمز الاستجابة السريعة أو إعداد الأجهزة الجوّالة للمؤسسات دفعةً واحدة أثناء توفير جهاز مملوك للشركة، يسمح الغرض الإضافي الجديد تطبيقات وحدة التحكّم بسياسة الجهاز (DPC) لبدء ملف العمل أو الإدارة الكاملة الإعداد. بعد إنشاء ملف شخصي للعمل أو إنشاء إدارة كاملة، تشمل وحدات التحكّم بسياسة الجهاز (DPC) شاشات الامتثال للسياسات لفرض أي سياسات أوّلية
في ملف البيان الخاص بوحدة التحكّم بسياسة الجهاز، أدخِل فلتر أهداف جديدًا.
GET_PROVISIONING_MODE
في نشاط وإضافة BIND_DEVICE_ADMIN
لمنع التطبيقات العشوائية من بدء النشاط. مثلاً:
<activity
android:name=".GetProvisioningModeActivity"
android:label="@string/app_name"
android:permission="android.permission.BIND_DEVICE_ADMIN">
<intent-filter>
<action
android:name="android.app.action.GET_PROVISIONING_MODE" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
أثناء توفير المتطلبات اللازمة، يبدأ النظام النشاط المرتبط فلتر الأهداف. الغرض من هذا النشاط هو تحديد وضع الإدارة (ملف العمل أو مُدار بالكامل).
قد يكون من المفيد استرداد ميزات توفير المتطلبات الإضافية قبل تحديد
وضع الإدارة المناسب للجهاز. يمكن للنشاط الاتصال
getIntent()
لاسترداد
ما يلي:
يمكن أيضًا لوحدات التحكّم بسياسة الجهاز (DPC) إنشاء هدف جديد لنتيجة البحث وإضافة العناصر الإضافية التالية إليه:
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
: يمكنك إضافتها إلى الحزمة الحالية أو إنشاء حزمة جديدة. تم إرسال هذه الحزمة وستزيد النية عندما تطلق وحدة التحكّم بسياسة الجهاز شاشات الامتثال للسياسات.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
: تحديد حساب لنقله فقط في حال إضافة حساب عمل كجزء من ملف العمل توفير المتطلبات اللازمة للملف الشخصي.EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS
لضبط وضع الإدارة على الجهاز، يُرجى الاتصال
putExtra(DevicePolicyManager.EXTRA_PROVISIONING_MODE,desiredProvisioningMode)
,
حيث تكون السمة desiredProvisioningMode
:
- ملف العمل:
PROVISIONING_MODE_MANAGED_PROFILE
- حساب مُدار بالكامل:
PROVISIONING_MODE_FULLY_MANAGED_DEVICE
إكمال ملف العمل أو إدارة الحسابات المُدارة بالكامل عن طريق إرسال إدارة الحسابات
يجب الرجوع إلى عملية الإعداد من خلال setResult(RESULT_OK,
Intent)
وإغلاق جميع الشاشات النشطة باستخدام
finish()
بعد اكتمال عملية الإعداد، يصبح هدف جديد متاحًا لوحدات التحكّم بسياسة الجهاز (DPC). وشاشات الامتثال وفرض إعدادات السياسة الأولية. على ملف العمل الأخرى، يتم عرض شاشات الامتثال في ملف العمل. يجب أن تكون وحدة التحكّم بسياسة الجهاز (DPC) ضمان عرض شاشات الامتثال للمستخدمين، حتى في حال هروب المستخدم وعملية الإعداد.
في ملف البيان الخاص بوحدة التحكّم بسياسة الجهاز، أدخِل فلتر أهداف جديدًا.
ADMIN_POLICY_COMPLIANCE
في نشاط وإضافة BIND_DEVICE_ADMIN
لمنع التطبيقات العشوائية من بدء النشاط. مثلاً:
<activity
android:name=".PolicyComplianceActivity"
android:label="@string/app_name"
android:permission="android.permission.BIND_DEVICE_ADMIN">
<intent-filter>
<action android:name="android.app.action.ADMIN_POLICY_COMPLIANCE" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
يجب أن يستخدم وحدة التحكّم بسياسة الجهاز هذه Intent الجديد بدلاً من الاستماع إلى
ACTION_PROFILE_PROVISIONING_COMPLETE
البث.
النشاط المرتبط بفلتر الأهداف الذي يمكن استدعاءه
getIntent()
لاسترداد
الـ
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
بعد الامتثال للسياسة، على ADMIN_POLICY_COMPLIANCE
عرض setResult(RESULT_OK,
Intent)
وإغلاق جميع الشاشات النشطة التي تتضمن
finish()
تعيد الأجهزة المُدارة بالكامل المستخدمين إلى الشاشة الرئيسية. أجهزة ملف العمل مطالبة المستخدمين بإضافة حساباتهم الشخصية قبل إعادتهم إلى المنزل الشاشة.
مصادقة رقم تعريف الجهاز لملف العمل
وحدات التحكّم بسياسة الجهاز (DPC) التي تم ضبطها كمشرفين لملف العمل الذي يتم توفيره باستخدام برنامج "إعداد الأجهزة الجوّالة للمؤسّسات دفعةً واحدة" يمكنه الحصول على معرّفات أجهزة مصدَّق عليها للأجهزة الآمنة، مثل رمز IMEI أو رقم تعريف الشركة المصنّعة. الرقم التسلسلي. يجب أن يتضمن الجهاز معدّات آمنة (مثل بيئة التنفيذ (TEE) أو العنصر الآمن (SE) والتوافق مع رقم تعريف الجهاز والإقرار وإعداد الأجهزة الجوّالة للمؤسّسات دفعةً واحدة
يمكن لمكوِّن المشرف في الملف الشخصي للعمل الاتصال بـ DevicePolicyManager.generateKeyPair()
، مع تمرير واحد أو أكثر من ID_TYPE_SERIAL
أو ID_TYPE_IMEI
أو ID_TYPE_MEID
للوسيطة idAttestationFlags
.
لمزيد من المعلومات حول استخراج أرقام تعريف الأجهزة والتحقّق منها، يُرجى الاطّلاع على مقالة التحقّق من صحة أزواج المفاتيح المستنِدة إلى الأجهزة من خلال مصادقة المفتاح.
تحسينات ملف العمل
تتوفر واجهات برمجة تطبيقات جديدة لإتاحة الوصول إلى التقويم بين الملف الشخصي وملف العمل. حظر عمليات تثبيت التطبيقات من مصادر غير معروفة على مستوى الجهاز
ملف العمل، مصادر غير معروفة على مستوى الجهاز
التطبيقات التي تم تنزيلها من مصادر غير Google Play (أو تطبيقات أخرى موثوق بها)
المتاجر) تسمى تطبيقات من مصادر غير معروفة. في Android 10، يحتاج مشرفو العمل
يمكن أن تمنع الملفات الشخصية أي مستخدم أو ملف شخصي من تثبيت التطبيقات من المواقع غير المعروفة
مصادر البيانات في أي مكان على الجهاز من خلال إضافة تقييد المستخدم الجديد
DISALLOW_INSTALL_UNKNOWN_SOURCES_GLOBALLY
أمّا بعد إضافة هذا القيد، فسيظل بإمكان الشخص الذي يستخدم الجهاز
تثبيت التطبيقات باستخدام adb.
لمنع المستخدمين من تثبيت التطبيقات من مصادر غير معروفة عن طريق الخطأ، ننصحك بإضافة هذه القيود على المستخدمين لأنّها لا تتطلّب Google Play. الخدمات التي سيتم تثبيتها. إذا كنت ترغب في دعم الإصدارات القديمة من Android، يمكنك ضبط قيمة إعداد مُدار في Google Play
قصر أجهزة الإدخال المسموح بها على الملفات الشخصية للعمل
عندما يتصل مشرفو الملفات الشخصية للعمل بـ DevicePolicyManager.setPermittedInputMethods()
، يقتصر المستخدمون على أساليب الإدخال المسموح بها داخل عملهم.
الملف الشخصي بدلاً من الجهاز بالكامل، ما يمنح المستخدمين التحكم الكامل في الإدخال
على الجانب الشخصي من أجهزتهم.
حجب بيانات الملفات الشخصية للعمل تلقائيًا
تمت إضافة WIPE_SILENTLY
.
إبلاغ DevicePolicyManager.wipeData()
إذا تم ضبط العلامة، لن يتم إشعار المستخدمين بعد حجب بيانات ملف العمل
باستخدام wipeData()
.
ميزات جديدة للأجهزة المُدارة بالكامل
يقدّم Android 10 ميزات وواجهات برمجة تطبيقات جديدة للأجهزة المُدارة بالكامل، بما في ذلك تحديثات النظام اليدوية، وتوسيع توفير رمز الاستجابة السريعة وتقنية NFC إلى تتضمن بيانات الاعتماد لشبكة Wi-Fi ذات بروتوكول المصادقة القابلة للتوسيع (EAP)، ودعم نظام أسماء النطاقات عبر بروتوكول أمان طبقة النقل.
تثبيت تحديث يدوي للنظام
في Android 10، يمكن لمشرفي الأجهزة المُدارة بالكامل تثبيت تحديثات النظام من خلال ملف تحديث النظام. تسمح تحديثات النظام اليدوية لمشرفي تكنولوجيا المعلومات بإجراء ما يلي:
- اختبِر تحديثًا على عدد صغير من الأجهزة قبل تثبيتها على نطاق واسع.
- تجنَّب عمليات التنزيل المكرَّرة على الشبكات ذات معدل نقل البيانات المحدود.
- يمكنك تنظيم عمليات التثبيت أو تحديث الأجهزة عند عدم استخدامها فقط.
أولاً، يضبط مشرف تكنولوجيا المعلومات سياسة تأجيل تحديث النظام
لتأخير التثبيت التلقائي (إذا لزم الأمر). بعد ذلك، يتم استدعاء وحدة التحكّم بسياسة الجهاز (DPC) للجهاز installSystemUpdate()
.
مع المسار إلى ملف تحديث النظام الخاص بالشركة المصنّعة للجهاز. اجتياز InstallSystemUpdateCallback
الذي يمكن أن يستخدمه النظام للإبلاغ عن الأخطاء التي تحدث قبل الجهاز
تتم إعادة تشغيله. إذا حدث خطأ، سيتصل النظام بـ onInstallUpdateError()
.
مع رمز الخطأ.
بعد إعادة تشغيل الجهاز، على وحدة التحكّم بسياسة الجهاز (DPC) تأكيد عملية التثبيت الناجحة.
باستخدام واجهة برمجة تطبيقات للإصدار، مثل
Build.FINGERPRINT
إذا كان التحديث
إخفاق، فأبلغ أحد مشرفي تكنولوجيا المعلومات بالفشل.
توفير شبكة Wi-Fi لبروتوكول EAP
في Android 10، يمكن أن تتضمن رموز الاستجابة السريعة وبيانات NFC المستخدمة في توفير الجهاز ما يلي: بيانات اعتماد وإعدادات بروتوكول المصادقة القابلة للتوسيع (EAP)، بما في ذلك الشهادات. عندما يمسح شخص ضوئيًا رمز استجابة سريعة أو ينقر على علامة NFC، يجري الجهاز مصادقة تلقائية لشبكة Wi-Fi محلية الشبكة باستخدام بروتوكول المصادقة القابلة للتوسيع (EAP) وتبدأ عملية توفير المتطلبات اللازمة بدون أي إجراءات إضافية الإدخال اليدوي.
لمصادقة Wi-Fi باستخدام EAP، أضف
EXTRA_PROVISIONING_WIFI_SECURITY_TYPE
إضافية مع القيمة "EAP"
. لتحديد مصادقة بروتوكول المصادقة القابلة للتوسيع (EAP)، يمكنك إضافة
المتطلبات الإضافية التالية لهدفك:
EXTRA_PROVISIONING_WIFI_EAP_METHOD
EXTRA_PROVISIONING_WIFI_IDENTITY
EXTRA_PROVISIONING_WIFI_ANONYMOUS_IDENTITY
EXTRA_PROVISIONING_WIFI_DOMAIN
EXTRA_PROVISIONING_WIFI_PHASE2_AUTH
EXTRA_PROVISIONING_WIFI_USER_CERTIFICATE
EXTRA_PROVISIONING_WIFI_CA_CERTIFICATE
دعم نظام أسماء النطاقات الخاص
يمكن للمؤسسات استخدام نظام أسماء النطاقات عبر بروتوكول أمان طبقة النقل (TLS). (يُسمّى نظام أسماء النطاقات الخاص على أجهزة Android) لتجنُّب تسريب طلبات بحث نظام أسماء النطاقات، بما في ذلك أسماء المضيفين الداخليين. مكوّنات المشرف للأجهزة المُدارة بالكامل التحكم في إعدادات نظام أسماء النطاقات الخاص للجهاز. لضبط وضع "نظام أسماء النطاقات الخاص"، الاتصال:
setGlobalPrivateDnsModeOpportunistic()
أن يستخدم الجهاز "نظام أسماء النطاقات" (DNS) الخاص عندما يكتشف النظام خادم أسماء داعمًا، أوsetGlobalPrivateDnsModeSpecifiedHost()
لتحديد اسم المضيف لخادم الأسماء الذي يتوافق مع RFC7858 في الوسيطةprivateDnsHost
.
عند استدعاء وحدة التحكّم بسياسة الجهاز (DPC) إحدى هاتين الطريقتين، يعرض النظام PRIVATE_DNS_SET_NO_ERROR
في حال
تم الاتصال بنجاح. وإلا، سيتم عرض خطأ.
لاسترداد وضع "نظام أسماء النطاقات الخاص" والمضيف الذي تم ضبطه على جهاز، يُرجى الاتصال بالرقم getGlobalPrivateDnsMode()
.
وgetGlobalPrivateDnsHost()
يمكنك منع المستخدمين من تغيير إعدادات نظام أسماء النطاقات الخاصة عن طريق إضافة
DISALLOW_CONFIG_PRIVATE_DNS
قيود المستخدم.
الاستثناء من وضع إغلاق شبكة VPN
يسمح وضع إغلاق شبكة VPN لوحدة التحكّم بسياسة الجهاز (DPC) بحظر أي شبكة. حركة المرور التي لا تستخدم شبكة VPN. المشرفون على يمكن للأجهزة المُدارة والملفات الشخصية للعمل استثناء التطبيقات من وضع الإغلاق. تستخدم التطبيقات المعفاة شبكة VPN تلقائيًا، ولكن يتم الاتصال بها تلقائيًا إذا لم تكن شبكة VPN متوفرة. التطبيقات المعفاة من الإعلانات التي تتضمن أيضًا بشكل صريح رفض الوصول إلى شبكة VPN سوى الشبكات الأخرى.
لاستثناء تطبيق من وضع الإغلاق، يمكنك الاتصال بـ
طريقة واحدة (DevicePolicyManager
)
setAlwaysOnVpnPackage()
التي تقبل قائمة حِزم التطبيقات المستثناة أي حِزم تطبيقات تضيفها وحدة التحكّم بسياسة الجهاز
يجب تثبيته على الجهاز عند استدعاء الطريقة. إذا كان التطبيق
إلغاء تثبيته وإعادة تثبيته، يجب استثناء التطبيق مرة أخرى. للحصول على التطبيقات
المستثناة سابقًا من وضع الإغلاق، أو استدعاء
getAlwaysOnVpnLockdownWhitelist()
لمساعدة مشرفي الأجهزة المُدارة بالكامل والملفات الشخصية للعمل في الاستفادة من وضع الإغلاق
الحالة، يضيف Android 10
isAlwaysOnVpnLockdownEnabled()
.
نطاقات التفويض الجديدة
يوسّع Android 10 قائمة الوظائف التي يمكن لوحدة التحكّم بسياسة الجهاز تفويضها إلى جهات أخرى
المتخصصة. يجمع Android طرق واجهة برمجة التطبيقات اللازمة لمهمة ما في
النطاقات. لتفويض نطاق، اطلب
setDelegatedScopes()
واجتياز واحد أو أكثر من النطاقات التالية:
يقدّم Android 10 الفئة الجديدة
DelegatedAdminReceiver
للتطبيقات المفوَّضة يستخدم النظام جهاز استقبال البث هذا لإرسال رسالة تشبه وحدة التحكّم بسياسة الجهاز (DPC).
عمليات الاستدعاء لتفويض التطبيقات. التطبيقات التي تم تفويضها لنشاط الشبكة
اختيار الشهادة والتسجيل، ينبغي تنفيذ هذه الفئة. لإضافة هذا
إلى تطبيق مفوَّض، اتبع الخطوات التالية:
- إضافة فئة فرعية من
DelegatedAdminReceiver
إلى التطبيق المفوَّض. - تعريف
<receiver>
في بيان التطبيق، مع إضافة إجراء فلتر الأهداف لكل معاودة اتصال. على سبيل المثال:ACTION_NETWORK_LOGS_AVAILABLE
أوACTION_CHOOSE_PRIVATE_KEY_ALIAS
- حماية جهاز استقبال البث باستخدام
BIND_DEVICE_ADMIN
إذن.
يعرض المقتطف التالي بيان التطبيق لتطبيق مفوَّض واحد تعالج كلاً من تسجيل الشبكة واختيار الشهادة:
<receiver android:name=".app.DelegatedAdminReceiver"
android:permission="android.permission.BIND_DELEGATED_ADMIN">
<intent-filter>
<action android:name="android.app.admin.action.NETWORK_LOGS_AVAILABLE">
<action android:name="android.app.action.CHOOSE_PRIVATE_KEY_ALIAS">
</intent-filter>
</receiver>
تسجيل أنشطة الشبكة
لمساعدة المؤسسات في رصد البرامج الضارة وتتبُّعها، يمكن لوحدات التحكّم بسياسة الجهاز (DPC) تسجيل اتصالات بروتوكول TCP. وعمليات بحث نظام أسماء النطاقات بواسطة النظام. في نظام Android 10، مشرفو الحسابات المُدارة بالكامل يمكن للأجهزة تفويض تسجيل الدخول إلى الشبكة إلى تطبيق متخصص.
لاسترداد سجلات الشبكة بعد النظام
إتاحة مجموعة، يجب أن يتم تفويض التطبيقات بالفئة الفرعية الأولى
DelegatedAdminReceiver
(كما هو موضح سابقًا). في فئتك الفرعية، نفِّذ
onNetworkLogsAvailable()
لمعاودة الاتصال باتباع الإرشادات الواردة في استرداد السجلات.
يمكن لتفويض التطبيقات استدعاء ما يلي
طرق DevicePolicyManager
(تمرير null
للوسيطة admin
):
لتجنُّب فقدان السجلّات، يجب عدم تفعيل وحدة التحكّم بسياسة الجهاز (DPC) من أجل تفعيل تسجيل الشبكة.
إذا كنت تخطط للتفويض إلى تطبيق آخر. ينبغي على التطبيق المفوَّض تمكين
وجمع سجلات الشبكة. بعد تفويض وحدة التحكّم بسياسة الجهاز لتسجيل الشبكة، لن تتلقّى
أي onNetworkLogsAvailable()
أخرى
مع معاودة الاتصال.
للتعرف على كيفية الإبلاغ عن تسجيل نشاط الشبكة من تطبيق مفوَّض، اقرأ دليل المطوِّر تسجيل الأنشطة على الشبكة.
اختيار الشهادة
في نظام Android 10، يحتاج مشرفو يمكن للأجهزة المُدارة بالكامل والملفات الشخصية للعمل والمستخدمين الثانويين تفويض اختيار الشهادة إلى تطبيق متخصص.
لاختيار اسم مستعار للشهادة، يجب أن يتم تفويض التطبيقات باعتبارها فئة فرعية أولاً
DelegatedAdminReceiver
(كما هو موضح سابقًا). في فئتك الفرعية، نفِّذ
onChoosePrivateKeyAlias()
معاودة الاتصال وإرجاع عنوان بديل للبريد الإلكتروني المفضَّل
الشهادة أو يمكنك عرض null
لطلب اختيار شهادة من المستخدم.
إيقاف سياسات مشرفي الأجهزة نهائيًا
يمنع Android 10 التطبيقات ووحدات التحكّم بسياسة الجهاز من تطبيق الجهاز القديم.
المشرف. ننصح العملاء
والشركاء إلى الأجهزة المُدارة بالكامل أو الملفات الشخصية للعمل. ما يلي:
تعرض السياسات SecurityException
عند تلقّي طلب من أحد مشرفي الأجهزة الذين يستهدفون نظام التشغيل Android 10:
USES_POLICY_DISABLE_CAMERA
USES_POLICY_DISABLE_KEYGUARD_FEATURES
USES_POLICY_EXPIRE_PASSWORD
USES_POLICY_LIMIT_PASSWORD
تستخدم بعض التطبيقات مشرف الجهاز لإدارة أجهزة المستهلك. بالنسبة مثل، قفل جهاز مفقود ومسحه. لتفعيل هذه الميزة، يُرجى اتّباع الخطوات التالية: ستبقى السياسات متاحة:
لمزيد من المعلومات حول هذه التغييرات، يُرجى الاطّلاع على مشرف الجهاز. نهائيًا.
ميزات جديدة للتطبيقات
يمكن للتطبيقات التي تستهدف الإصدار 10 من نظام التشغيل Android طلب البحث عن مدى تعقيد قفل الشاشة الذي تم ضبطه على أحد الأجهزة
قبل عرض البيانات السرية أو إطلاق ميزات مهمة. تطبيقات الاتصال
مزايا واجهة برمجة التطبيقات KeyChain
من
تحسينات على السلوك، في حين تتوفّر ميزات جديدة أيضًا لتطبيقات شبكة VPN.
التحقّق من جودة قفل الشاشة
بدءًا من الإصدار 10 من نظام Android، التطبيقات التي تتضمن ميزات مهمة تتطلّب قفل شاشة يمكنه الاستعلام عن مدى تعقيد قفل شاشة الجهاز أو ملف العمل. التطبيقات التي تحتاج إلى يمكن أن يؤدي استخدام قفل شاشة أقوى إلى توجيه المستخدم إلى إعدادات قفل الشاشة في النظام مما يسمح لهم بتحديث إعدادات الأمان.
للتحقّق من جودة قفل الشاشة:
- إضافة إذن
REQUEST_PASSWORD_COMPLEXITY
الجديد إلى التطبيق. - يمكنك الاتصال بالرقم
DevicePolicyManager.getPasswordComplexity()
. ينقسم التعقيد إلى أربع فئات:
لتفعيل إعدادات قفل الشاشة للنظام، استخدِم
ACTION_SET_NEW_PASSWORD
مع خيارات EXTRA_PASSWORD_COMPLEXITY
الإضافية، وهي خيارات غير
تستوفي درجة التعقيد المحددة في الغرض الإضافي باللون الرمادي. يمكن للمستخدمين
الاختيار من بين خيارات قفل الشاشة المتاحة أو الخروج من الشاشة
أفضل الممارسات: عرض رسالة في تطبيقك قبل تشغيل النظام
صفحة قفل الشاشة. عند استئناف تطبيقك، يُرجى الاتصال
DevicePolicyManager.getPasswordComplexity()
مرة أخرى. إذا كنت لا تزال بحاجة إلى استخدام قفل شاشة أقوى، ننصحك بحظر الوصول إلى البيانات بدلاً من
مطالبة المستخدمين بتحديث إعدادات الأمان بشكل متكرر.
إتاحة خادم وكيل HTTP في تطبيقات شبكة VPN
في Android 10، يمكن لتطبيقات شبكة VPN ضبط خادم وكيل HTTP.
لاتصاله عبر شبكة VPN. لإضافة خادم وكيل HTTP، يجب أن يضبط تطبيق VPN
مثيل ProxyInfo
مع مضيف ومنفذ
قبل الاتصال
VpnService.Builder.setHttpProxy()
ويستخدم النظام والعديد من مكتبات الشبكات هذا الإعداد للخادم الوكيل ولكن
لا يفرض على التطبيقات استخدام طلبات HTTP للخادم الوكيل.
للاطلاع على نموذج التعليمات البرمجية الذي يعرض كيفية تعيين خادم وكيل HTTP، راجع ToyVPN نموذج تطبيق.
أوضاع خدمة شبكة VPN
يمكن لتطبيقات الشبكة الافتراضية الخاصة اكتشاف ما إذا كانت الخدمة قيد التشغيل بسبب التفعيل دائمًا. الشبكة الافتراضية الخاصة (VPN) وإلغاء التأمين الصحي نشط. الطرق الجديدة التي أضفتها في Android 10 في تعديل واجهة المستخدم. على سبيل المثال، إلى إيقاف زر قطع الاتصال عندما تتحكّم شبكة VPN قيد التشغيل دائمًا في مراحل النشاط الخدمة التي تقدمها.
يمكن لتطبيقات شبكة VPN الاتصال بما يلي VpnService
.
الطرق بعد الاتصال بالخدمة
وإنشاء الواجهة المحلية:
isAlwaysOn()
إلى معرفة ما إذا كان النظام قد بدأ الخدمة من خلال شبكة VPN قيد التشغيل دائمًاisLockdownEnabled()
لمعرفة ما إذا كان النظام يحظر الاتصالات التي لا تستخدم شبكة VPN
تظل حالة "قيد التشغيل دائمًا" كما هي أثناء تشغيل الخدمة، ولكن قد تتغير حالة وضع التأمين.
تحسينات على سلسلة المفاتيح
يقدّم Android 10 العديد من التحسينات المتعلّقة
KeyChain
API.
عند اتصال أحد التطبيقات بالإصدار 10 من نظام التشغيل Android أو KeyChain.choosePrivateKeyAlias()
أو إصدار أحدث
فلترة قائمة الشهادات التي يمكن للمستخدم الاختيار من بينها استنادًا إلى
جهات الإصدار والخوارزميات الرئيسية المحددة في المكالمة.
على سبيل المثال، عندما يرسل خادم بروتوكول أمان طبقة النقل (TLS) طلب شهادة
كجزء من عملية تأكيد الاتصال من خلال بروتوكول أمان طبقة النقل (TLS) وطلبات المتصفِّح
KeyChain.choosePrivateKeyAlias()
، المطالبة باختيار الشهادة فقط
يتضمن خيارات تطابق معلمة جهات الإصدار. إذا لم يتم العثور على أي خيارات مطابقة
أو عدم وجود أي شهادات مثبتة على الجهاز، فإن
رسالة الاختيار للمستخدم.
بالإضافة إلى ذلك، لم يعُد KeyChain
تتطلب أن يتضمن الجهاز قفل شاشة قبل أن يمكن تحويل المفاتيح أو شهادات CA
التي تم استيرادها.