Entitlements المُفعّلة في iOS Rocket Certificates
كل Entitlement من المذكورة أدناه مُفعّل في iOS Rocket Certificates، أي أنّ التطبيقات المُسايدلودة (sideloaded) قد مُنحت هذه الإمكانات/الأذونات.
App Identity & Debugging: App ID - Team Identifier
Data Sharing (KeyChain): AppGroups على مستوى Certificate (وليس على مستوى Provisioning) - KeyChain Access Groups
iCloud Services: iCloud Services - iCloud CloudKit Containers IDs - development CloudKit Containers - iCloud Key Value Store - iCloud document ubiquity containers
Notifications: Push Notifications - Communication Notifications - Time-sensitive Notifications
Networking & Connectivity: Access Wifi - Hotspot Configuration - Multipath - Network Extensions - Personal VPN
Audio & Siri: Push-to-Talk - Inter-App Audio - Siri Integration
Hardware/Device Integration: HomeKit - NFC Tag Reading - Wireless Accessory Configuration
HealthKit & Wellness: HealthKit - Health Records Access - HealthKit Background Delivery
Apple Services & Features: Apple Pay (Merchant ID) - Wallet Passes (PassKit) - Game Center - ClassKit - WeatherKit
System Resource Access: Extended Virtual Addressing - Increased Memory Limit - Increased Debugging Memory
شرح إضافي للـ Entitlements:
App Identity & Debugging:
• سلسلة App ID الفريدة للتطبيق، التي تجمع بين Team ID ومُعرّف حزمة التطبيق (bundle identifier). تُعرّف التطبيق عند الـ code signing ويجب أن تطابق App ID الخاصة بـ Provisioning Profile.
• الـ Team Identifier لحساب Apple Developer. يُشير إلى فريق التطوير (Apple Developer Team ID) الذي وقّع التطبيق المُسايدلود، ويربط التطبيق بالـ Provisioning Profile الصحيح.
Data Sharing (App Groups & Keychain):
• يُمكّن entitlement الـ App Groups التطبيق المُسايدلود من الوصول إلى حاويات المجموعة المشتركة ومشاركة البيانات بين التطبيقات المرتبطة. هذا الـ entitlement مدعوم على مستوى Certificate ولكنه غير مُفعّل على مستوى Provisioning.
• يسمح entitlement الـ Keychain Access Groups للتطبيق المُسايدلود بمشاركة عناصر الـ keychain مع تطبيقات أخرى من نفس فريق التطوير.
iCloud & Cloud Services:
• الـ iCloud services (جميع خدمات iCloud مُفعّلة).
• تسمح الـ iCloud CloudKit container IDs للتطبيق المُسايدلود باستخدام حاويات CloudKit محددة لتخزين البيانات وجلبها.
• تسرد الـ development CloudKit containers مُعرّفات الحاويات المُستخدمة في وضع التطوير.
• الـ iCloud Key-Value Store. يسمح للتطبيق المُسايدلود بحفظ بيانات صغيرة (التفضيلات ونحوها) في iCloud لتتمازج عبر أجهزة المستخدم.
• الـ iCloud document ubiquity containers التي يمكن للتطبيق المُسايدلود استخدامها لـ iCloud Drive أو تخزين المستندات.
Notifications:
• entitlement الـ Push Notifications. يحدد بيئة Apple Push Notification service (APNs) التي يُسمح للتطبيق باستخدامها (الملف يُظهر production، أي أن Push Notifications لبيئة الإنتاج مُفعّلة).
• يسمح entitlement الـ Communication Notifications للتطبيق المُسايدلود بإرسال إشعارات مُصنّفة كتواصل بين المستخدمين (رسائل أو مكالمات)، وقد تُعطى أولوية أعلى في أوضاع التركيز (Focus).
• يسمح entitlement الـ Time-Sensitive Notifications للتطبيق المُسايدلود بإرسال تنبيهات حساسة للوقت قد تخترق أوضاع «عدم الإزعاج» أو Focus.
Networking & Connectivity:
• يسمح entitlement الـ Access Wi-Fi Information للتطبيق المُسايدلود بالحصول على معلومات عن شبكة Wi-Fi المتصلة حاليًا.
• يُمكّن entitlement الـ Hotspot Configuration التطبيق المُسايدلود من تكوين شبكات Wi-Fi أو الانضمام إليها دون تدخل المستخدم.
• يسمح entitlement الـ Multipath للتطبيق المُسايدلود باستخدام بروتوكولات Multipath (مثل Multipath TCP) للتبديل بسلاسة بين Wi-Fi وبيانات الخلوي.
• يسمح entitlement الـ Network Extensions للتطبيق المُسايدلود بإنشاء امتدادات شبكية (VPN tunnel providers، content filters، packet tunnel providers، DNS proxies إلخ).
• يسمح entitlement الـ Personal VPN للتطبيق المُسايدلود باستخدام Personal VPN API لإنشاء وإدارة اتصالات VPN.
Audio & Siri:
• يُمكّن entitlement الـ Push-to-Talk التطبيق المُسايدلود من المشاركة في جلسات Push-to-Talk الصوتية (بأسلوب الووكي توكي).
• يسمح entitlement الـ Inter-App Audio للتطبيق المُسايدلود بإرسال الصوت واستقباله من تطبيقات أخرى. ملاحظة: هذا الـ entitlement مُهمَل منذ iOS 13.
• يسمح entitlement الـ Siri Integration للتطبيق المُسايدلود بالتكامل مع Siri عبر SiriKit.
Hardware/Device Integration:
• يُمكّن entitlement الـ HomeKit التطبيق المُسايدلود من التفاعل مع ملحقات HomeKit وأجهزة أتمتة المنزل.
• يسمح entitlement الـ NFC Tag Reading للتطبيق المُسايدلود باستخدام Core NFC لقراءة وسوم NFC.
• يسمح entitlement الـ Wireless Accessory Configuration للتطبيق المُسايدلود بتكوين الملحقات الخارجية لاسلكيًا.
HealthKit & Wellness:
• يمنح entitlement الـ HealthKit التطبيق المُسايدلود إذن الوصول إلى بيانات HealthKit (بموافقة المستخدم).
• يسمح entitlement الـ Health Records Access للتطبيق المُسايدلود بالوصول إلى بيانات صحية حساسة تتطلب موافقة خاصة، مثل Health Records.
• entitlement الـ HealthKit Background Delivery. يسمح للتطبيق المُسايدلود باستقبال تحديثات HealthKit أثناء العمل في الخلفية.
Apple Services & Features:
• يسمح entitlement الـ Apple Pay (Merchant ID) للتطبيق المُسايدلود باستخدام Apple Pay لقبول المدفوعات داخل التطبيق.
• entitlement الـ Wallet Passes (PassKit) يتضمّن عادةً Pass Type IDs التي يمكن للتطبيق استخدامها.
• entitlement الـ Game Center يُشير إلى أن التطبيق المُسايدلود يمكنه التكامل مع Game Center (المتصدرين والإنجازات واللعب الجماعي).
• entitlement الـ ClassKit. يحدد بيئة إطار ClassKit من Apple (المُستخدم مع تطبيق Schoolwork). عندنا مضبوط على production.
• يسمح entitlement الـ WeatherKit للتطبيق باستخدام WeatherKit لجلب بيانات الطقس من خدمة Apple.
System Resource Access:
• يسمح entitlement الـ Extended Virtual Addressing للتطبيق باستخدام مساحة عناوين افتراضية أكبر، أي تخصيص ذاكرة أكثر من المعتاد.
• يُمكّن entitlement الـ Increased Memory Limit التطبيق المُسايدلود من تجاوز حدود الذاكرة العادية.
• entitlement الـ Increased Debugging Memory. مشابه للسابق، لكنه يسمح باستخدام ذاكرة أكثر أثناء الـ debugging.
تساعد هذه القائمة المُنظّمة على توضيح الأذونات أو الميزات التي يُتيحها كل entitlement. كل مفتاح يُقابل إمكانًا أو تكاملًا مُفعّلًا يمكن للتطبيق المُسايدلود استخدامه.
