ব্যবহারকারীর সম্মতি হ্যান্ডলিং

যেহেতু নিয়ারবাই মেসেজেস এপিআই কাছাকাছি থাকা ডিভাইসগুলো শনাক্ত করতে ও সেগুলোর সাথে যোগাযোগ করতে ব্লুটুথ এবং অন্যান্য ডিভাইস রিসোর্স ব্যবহার করে, তাই এটি ব্যাটারির ওপর বেশি চাপ সৃষ্টি করতে পারে। ব্যবহারকারীরা যাতে এই অভিজ্ঞতা নিজেদের নিয়ন্ত্রণে রাখতে পারেন, তা নিশ্চিত করার জন্য, প্রথমবার নিয়ারবাই মেসেজেস এপিআই অ্যাক্সেস করার সময় একটি অপ্ট-ইন ডায়ালগ দেখানো হয়। নিয়ারবাই-কে প্রয়োজনীয় ডিভাইস রিসোর্স ব্যবহার করার জন্য ব্যবহারকারীকে অবশ্যই সম্মতি দিতে হবে।

শুধুমাত্র BLE

আপনার অ্যাপকে যদি ACCESS_FINE_LOCATION পারমিশন দেওয়া হয়ে থাকে এবং এটি শুধুমাত্র পাবলিশ ও সাবস্ক্রাইব করার সময় BLE ব্যবহার করে, তাহলে আপনি অপ্ট-ইন ডায়ালগটি এড়িয়ে যেতে পারেন।

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