قبل البدء
قبل بدء الترميز باستخدام واجهة برمجة تطبيقات "الاتصالات القريبة":
- تثبيت خدمات Google Play SDK.
- نزِّل رمز واجهة برمجة التطبيقات لاتصالات الأجهزة المجاورة وراجِعها النماذج.
طلب الأذونات
قبل استخدام "اتصالات الأجهزة المجاورة"، يجب أن يطلب تطبيقك
الأذونات. أضِف الأذونات التالية إلى AndroidManifest.xml
:
<!-- Required for Nearby Connections --> <uses-permission android:maxSdkVersion="31" android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:maxSdkVersion="31" android:name="android.permission.CHANGE_WIFI_STATE" /> <uses-permission android:maxSdkVersion="30" android:name="android.permission.BLUETOOTH" /> <uses-permission android:maxSdkVersion="30" android:name="android.permission.BLUETOOTH_ADMIN" /> <uses-permission android:maxSdkVersion="28" android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:minSdkVersion="29" android:maxSdkVersion="31" android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:minSdkVersion="31" android:name="android.permission.BLUETOOTH_ADVERTISE" /> <uses-permission android:minSdkVersion="31" android:name="android.permission.BLUETOOTH_CONNECT" /> <uses-permission android:minSdkVersion="31" android:name="android.permission.BLUETOOTH_SCAN" /> <uses-permission android:minSdkVersion="32" android:name="android.permission.NEARBY_WIFI_DEVICES" /> <!-- Optional: only required for FILE payloads --> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
منذ ACCESS_FINE_LOCATION BLUETOOTH_ADVERTISE, BLUETOOTH_CONNECT، BLUETOOTH_SCAN أو READ_EXTERNAL_STORAGE التي تُعدّ نظامًا خطيرًا الأذونات، بالإضافة إلى إضافتها إلى ملف البيان، يجب طلب هذه الأذونات في وقت التشغيل، كما هو موضح في طلب الأذونات.
إذا لم يمنح المستخدم جميع الأذونات المطلوبة، ستظهر واجهة برمجة تطبيقات "الاتصالات المجاورة" السماح لتطبيقك ببدء الإعلان أو الاكتشاف.