Google API অ্যাক্সেস করা

আপনার Android অ্যাপে Google Play পরিষেবা দ্বারা পরিচালিত API অ্যাক্সেস করতে, আপনাকে API ক্লায়েন্ট অবজেক্ট ব্যবহার করতে হবে। এইসব অবজেক্ট Google Play পরিষেবার সাথে কানেকশন হ্যান্ডেল করে, অনুরোধের কোয়েরি তৈরি করে এবং কানেকশন উপলভ্য হলে সেগুলি ক্রম অনুযায়ী এক্সিকিউট করে। প্রয়োজন অনুযায়ী আপনি নতুন API ক্লায়েন্ট তৈরি করতে পারেন, কারণ এগুলি তৈরি করতে বেশি খরচ হয় না।

শুরু করুন

শুরু করার আগে, আপনার অ্যাপ প্রজেক্টে Google Play পরিষেবা সেট-আপ করেছেন কিনা তা নিশ্চিত করুন।

অনুমতি না লাগা কোনও পরিষেবা অ্যাক্সেস করতে, পরিষেবার ক্লায়েন্ট অবজেক্টের একটি ইনস্ট্যান্স তৈরি করুন, যার মধ্যে Context বা Activity অবজেক্ট থাকতে হবে। প্রয়োজন হলে, কোনও API কল এক্সিকিউট করার আগে ব্যবহারকারীদের Google Play পরিষেবা আপগ্রেড করার জন্য প্রম্পট করা হয়।

ফিউজড লোকেশন প্রোভাইডার ব্যবহার করে ডিভাইসের শেষ জানা লোকেশন কীভাবে পাওয়া যায় তা নিম্নলিখিত কোড স্নিপেট থেকে জানতে পারবেন:

Kotlin

// Code required for requesting location permissions omitted for brevity.
val client = LocationServices.getFusedLocationProviderClient(this)

// Get the last known location. In some rare situations, this can be null.
client.lastLocation.addOnSuccessListener { location : Location? ->
    location?.let {
        // Logic to handle location object.
    }
}

Java

// Code required for requesting location permissions omitted for brevity.
FusedLocationProviderClient client =
        LocationServices.getFusedLocationProviderClient(this);

// Get the last known location. In some rare situations, this can be null.
client.getLastLocation()
        .addOnSuccessListener(this, location -> {
            if (location != null) {
                // Logic to handle location object.
            }
        });

ব্যবহারকারীর অনুমোদনের প্রয়োজন হয় এমন API অ্যাক্সেস করতে, Google ব্যবহারকারীর ডেটা অ্যাক্সেস করার অনুমোদন সংক্রান্ত নির্দেশিকা অনুসরণ করুন। আপনি যদি এমন কোনও API ব্যবহার করেন যার জন্য GoogleSignInAccount অবজেক্ট প্রয়োজন, তাহলে AuthorizationResult#toGoogleSignInAccount() পদ্ধতি ব্যবহার করুন।

API উপলভ্য আছে কিনা চেক করা

Google Play পরিষেবা API-এর উপর নির্ভর করে এমন কোনও ফিচার চালু করার আগে, checkApiAvailability() কল করে API ডিভাইসে উপলভ্য আছে কিনা তা চেক করুন।

ফিউজড লোকেশন প্রোভাইডার উপলভ্য আছে কিনা তা কীভাবে চেক করবেন তা নিম্নলিখিত কোড স্নিপেট থেকে জানতে পারবেন:

Kotlin

fun getLastLocationIfApiAvailable(context: Context?): Task<Location>? {
    val client = getFusedLocationProviderClient(context)
    return GoogleApiAvailability.getInstance()
        .checkApiAvailability(client)
        .onSuccessTask { _ -> client.lastLocation }
        .addOnFailureListener { _ -> Log.d(TAG, "Location unavailable.")}
}

Java

public Task<Location> getLastLocationIfApiAvailable(Context context) {
    FusedLocationProviderClient client =
            getFusedLocationProviderClient(context);
    return GoogleApiAvailability.getInstance()
            .checkApiAvailability(client)
            .onSuccessTask(unused -> client.getLastLocation())
            .addOnFailureListener(e -> Log.d(TAG, "Location unavailable."));
}