תחילת העבודה

לפני שמתחילים

לפני שמתחילים לכתוב קוד באמצעות Nearby Connections API:

בקשת הרשאות

לפני השימוש ב'חיבורים בקרבת מקום', האפליקציה צריכה לבקש את הרשאות. צריך להוסיף את ההרשאות הבאות ל-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 נחשבות למערכת מסוכנת הרשאות, בנוסף להוספתן למניפסט, עליך לבקש את ההרשאות הבאות בזמן הריצה, כפי שמתואר בקטע הרשאות.

אם המשתמש לא מעניק את כל ההרשאות הנדרשות, Nearby Connections API יסרב לאפשר לאפליקציה להתחיל לפרסם או לגלות תוכן.