Google API ऐक्सेस करें

अपने Android ऐप्लिकेशन में, Google Play services की मदद से काम करने वाले एपीआई ऐक्सेस करने के लिए, आपको एपीआई क्लाइंट ऑब्जेक्ट का इस्तेमाल करना होगा. ये ऑब्जेक्ट, Google Play services से कनेक्शन को मैनेज करते हैं. साथ ही, कनेक्शन उपलब्ध होने पर, अनुरोधों को सूची में जोड़ते हैं और उन्हें क्रम से लागू करते हैं. ज़रूरत के हिसाब से नए एपीआई क्लाइंट बनाए जा सकते हैं, क्योंकि इन्हें बनाने में ज़्यादा खर्च नहीं आता.

अपनी प्रोफ़ाइल बनाना शुरू करें

शुरू करने से पहले, अपने ऐप्लिकेशन प्रोजेक्ट में Google Play services सेट अप करना न भूलें.

ऐसी सेवा को ऐक्सेस करने के लिए जिसमें अनुमति की ज़रूरत नहीं होती, सेवा के क्लाइंट ऑब्जेक्ट का इंस्टेंस बनाएं. इसके लिए, Context या Activity ऑब्जेक्ट पास करें. अगर ज़रूरी हो, तो उपयोगकर्ताओं को कोई भी एपीआई कॉल करने से पहले, Google Play services को अपग्रेड करने के लिए कहा जाता है.

यहां दिए गए कोड स्निपेट से पता चलता है कि कई तरह से जांची गई सही जगह की जानकारी देने वाला एपीआई का इस्तेमाल करके, डिवाइस की पिछली जगह की जानकारी कैसे हासिल की जा सकती है:

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.
            }
        });

उपयोगकर्ता की अनुमति की ज़रूरत वाले एपीआई ऐक्सेस करने के लिए, Google उपयोगकर्ता के डेटा को ऐक्सेस करने की अनुमति दें गाइड में दिए गए निर्देशों का पालन करें. अगर किसी ऐसे एपीआई का इस्तेमाल किया जा रहा है जिसके लिए GoogleSignInAccount ऑब्जेक्ट की ज़रूरत है, तो AuthorizationResult#toGoogleSignInAccount() तरीके का इस्तेमाल करें.

एपीआई की उपलब्धता देखना

Google Play services के एपीआई पर निर्भर किसी सुविधा को चालू करने से पहले, यह देख लें कि वह एपीआई डिवाइस पर उपलब्ध है या नहीं. इसके लिए, checkApiAvailability() को कॉल करें.

यहां दिए गए कोड स्निपेट से पता चलता है कि फ़्यूज़्ड लोकेशन प्रोवाइडर उपलब्ध है या नहीं:

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."));
}