उपयोगकर्ता की सहमति मैनेज करना

Nearby Messages API, बैटरी की खपत ज़्यादा कर सकता है. ऐसा इसलिए, क्योंकि यह आस-पास मौजूद डिवाइसों का पता लगाने और उनसे कम्यूनिकेट करने के लिए, ब्लूटूथ और डिवाइस के अन्य संसाधनों का इस्तेमाल करता है. यह पक्का करने के लिए कि उपयोगकर्ताओं के पास अपने अनुभव को कंट्रोल करने का विकल्प हो, Nearby Messages API को पहली बार ऐक्सेस करने पर, उपयोगकर्ता को ऑप्ट-इन डायलॉग दिखाया जाता है. उपयोगकर्ता को आस-पास मौजूद डिवाइसों से इंटरैक्ट करने की सुविधा के लिए, ज़रूरी डिवाइस संसाधनों का इस्तेमाल करने की सहमति देनी होगी.

BLE Only

अगर आपके ऐप्लिकेशन को ACCESS_FINE_LOCATION की अनुमति मिली है और वह पब्लिश करने और सदस्यता लेने के दौरान सिर्फ़ बीएलई का इस्तेमाल करता है, तो ऑप्ट इन करने के लिए दिखने वाले डायलॉग से बचा जा सकता है.

if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
        == PackageManager.PERMISSION_GRANTED) {
    mMessagesClient = Nearby.getMessagesClient(this, new MessagesOptions.Builder()
            .setPermissions(NearbyPermissions.BLE)
            .build());
}