Google Play Services Android पर Google सिस्टम सेवाओं की एक परत है जो सभी Google ऐप्स और APIs को संचालित करती है: Google Maps से लेकर Firebase और Google Sign-In तक। Play Services एक अलग APK पैकेज के रूप में काम करती हैं, जो Google Play Store के माध्यम से स्वचालित रूप से अपडेट होती है, Android फर्मवेयर अपडेट से स्वतंत्र रूप से। Android Developers, 2025 के अनुसार, Google Play Services 99.8% सक्रिय Android उपकरणों पर स्थापित हैं और इनमें 50 से अधिक अलग-अलग मॉड्यूल शामिल हैं।
मुख्य बिंदु
Google Play Services Android ऑपरेटिंग सिस्टम के ऊपर चलने वाली Google सेवाओं की एक मालिकाना परत है। AOSP (Android Open Source Project) के विपरीत, जिसमें केवल बुनियादी लाइब्रेरी शामिल हैं, Play Services Google इकोसिस्टम के साथ एकीकरण के लिए APIs प्रदान करती हैं: मानचित्र, जियोलोकेशन, प्रमाणीकरण, पुश सूचनाएँ, विज्ञापन और भुगतान। Play Services एक सिस्टम एप्लिकेशन के रूप में उन्नत विशेषाधिकारों के साथ स्थापित होती हैं और इनकी सामान्य एप्लिकेशन के लिए उपलब्ध नहीं होने वाली APIs तक पहुँच होती है।
Google Play Services और मानक Android लाइब्रेरी के बीच मुख्य अंतर Play Store के माध्यम से अपडेट करने की क्षमता है। जब Google Maps SDK या Auth API का नया संस्करण जारी करता है, तो उपयोगकर्ता को Play Services के माध्यम से अपडेट मिलता है, बिना निर्माता से OTA फर्मवेयर अपडेट की प्रतीक्षा किए। यह Android विखंडन की समस्या को हल करता है — Statista (2025) के अनुसार, लगभग 40% Android उपकरण 3 साल से पुराने OS संस्करणों पर चलते हैं, लेकिन 85% उपकरणों पर Play Services नवीनतम संस्करण में अपडेट होती हैं।
Google Play Services Android Open Source Project का हिस्सा नहीं हैं और बिना Google लाइसेंस वाले उपकरणों (उदाहरण के लिए, 2019 के बाद Huawei) पर उपलब्ध नहीं हैं। GMS के बिना उपकरणों पर चलने वाले एप्लिकेशन के लिए, Google क्रॉस-प्लेटफ़ॉर्म समर्थन के साथ Firebase SDK का उपयोग करने या वैकल्पिक समाधानों (Huawei Mobile Services) पर स्विच करने की सलाह देता है।
Google Play Services की वास्तुकला स्वतंत्र मॉड्यूल (APK पैकेज) के एक सेट के रूप में बनाई गई है, जिनमें से प्रत्येक अपनी कार्यक्षमता के लिए जिम्मेदार है। मुख्य APK (com.google.android.gms) में मुख्य सेवाएँ और लगभग 50 अतिरिक्त मॉड्यूल शामिल हैं जो आवश्यकतानुसार लोड होते हैं। उपयोगकर्ता प्रक्रिया को Google Play Services process कहा जाता है और यह उन्नत प्राथमिकता के साथ पृष्ठभूमि में चलती है।
प्रत्येक Google Play Services मॉड्यूल का अपना संस्करण और API होता है। डेवलपर build.gradle के माध्यम से केवल आवश्यक मॉड्यूल जोड़ता है, जिससे एप्लिकेशन का आकार कम होता है। उदाहरण के लिए, Google Sign-In के लिए com.google.android.gms:play-services-auth चाहिए, Google Maps के लिए play-services-maps चाहिए। Google Play Services स्वचालित रूप से मॉड्यूल के बीच निर्भरताओं को हल करती हैं और लापता घटकों को लोड करती हैं।
| घटक | Gradle पैकेज | कार्यक्षमता |
|---|---|---|
| Auth | play-services-auth | Google Sign-In, Credential Manager, ID Token |
| Maps | play-services-maps | Google Maps SDK मानचित्र रेंडरिंग, कैमरा |
| Location | play-services-location | FusedLocationProvider, जियोफेंस, Activity Recognition |
| Ads | play-services-ads | Google Mobile Ads, AdMob, Ad Manager |
| Wallet | play-services-wallet | Google Pay, Passes, भुगतान API |
| SafetyNet | play-services-safetynet | डिवाइस सत्यापन, reCAPTCHA, प्रमाणन |
एप्लिकेशन और Play Services के बीच इंटरेक्शन AIDL (Android Interface Definition Language) के माध्यम से होता है। एप्लिकेशन SDK विधियों को कॉल करता है, SDK Google Play Services प्रक्रिया में IPC अनुरोध भेजता है, जो वास्तविक कार्य करती है (Google सर्वरों पर नेटवर्क अनुरोध, GPS के साथ कार्य, क्रिप्टोग्राफी)। Play Services प्रक्रिया एप्लिकेशन से अलग होती है — यदि यह क्रैश होती है, तो एप्लिकेशन चलता रहता है।
Google Play Services Google Play Store के माध्यम से स्वचालित रूप से अपडेट होती हैं — उपयोगकर्ता को पुष्टि की आवश्यकता के बिना पृष्ठभूमि में नया संस्करण मिलता है। अपडेट चरणों में रोल आउट किए जाते हैं (staged rollout): पहले 1% उपकरणों पर, फिर 10%, 50% और 100% पर। यदि नए संस्करण में कोई गंभीर त्रुटि पाई जाती है, तो Google 24 घंटे के भीतर अपडेट को वापस स्थिर संस्करण पर रोल बैक कर सकता है।
Google Play Services संस्करण दो संख्याओं के साथ एन्कोड किया जाता है: APK संस्करण (उदाहरण: 25.15.32) और SDK संस्करण (उदाहरण: 12.8.0)। डेवलपर को GoogleApiAvailability के माध्यम से डिवाइस पर Play Services संस्करण की जाँच करनी चाहिए — यदि उपयोगकर्ता ने स्वचालित अपडेट अक्षम किया है या कस्टम ROM का उपयोग करता है, तो संस्करण पुराना हो सकता है। Google के अनुसार, सक्रिय उपकरणों पर औसत Play Services संस्करण 6 महीने से पुराना नहीं है।
// डिवाइस पर Google Play Services संस्करण की जाँच
val availability = GoogleApiAvailability.getInstance()
val resultCode = availability.isGooglePlayServicesAvailable(context)
when (resultCode) {
ConnectionResult.SUCCESS ->
Log.d("GMS", "Google Play Services उपलब्ध")
ConnectionResult.SERVICE_MISSING,
ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED -> {
// अपडेट डायलॉग दिखाएँ
availability.showErrorDialogFragment(
activity, resultCode, REQUEST_CODE
)
}
}संस्करण समस्याएँ: यदि Google Play Services अक्षम हैं (उपयोगकर्ता ने सेटिंग्स में मैन्युअल रूप से अक्षम किया), तो सभी Google APIs काम करना बंद कर देती हैं। एप्लिकेशन को प्रत्येक Google API कॉल से पहले Play Services की उपलब्धता की जाँच करनी चाहिए और उपयोगकर्ता को सेटिंग्स पर जाने या Play Services डाउनलोड करने के बटन के साथ स्पष्ट संदेश दिखाना चाहिए। Google showErrorDialogFragment के माध्यम से एक त्रुटि डायलॉग प्रदान करता है, जो स्वचालित रूप से Play Store पर ले जाता है।
Google Play Services Auth एक प्रमाणीकरण मॉड्यूल है जो Google Sign-In, Credential Manager और पासवर्ड के लिए Smart Lock प्रदान करता है। 2024 से, Google सभी प्रकार के प्रमाणीकरण के लिए एक एकीकृत API के रूप में Credential Manager की सिफारिश करता है। Google Play Services Maps Google मानचित्र रेंडरिंग, जियोकोडिंग, Places API और रूटिंग प्रदान करता है। Location Fused Location Provider प्रदान करता है, जो न्यूनतम बिजली खपत के साथ सटीक स्थान निर्धारण के लिए GPS, Wi-Fi और सेलुलर डेटा को जोड़ता है।
Google Play Services Wallet मॉड्यूल ऐप्स और वेबसाइटों पर भुगतान के लिए Google Pay और Google Passes (लॉयल्टी कार्ड, बोर्डिंग पास, टिकट) का समर्थन करता है। SafetyNet (Play Integrity API द्वारा प्रतिस्थापित) — डिवाइस अखंडता जाँच: रूट एक्सेस, कस्टम ROM, एमुलेटर। Play Integrity API (2024 से अनुशंसित) अधिक सटीक सत्यापन प्रदान करता है: डिवाइस अखंडता, ऐप अखंडता (हस्ताक्षर), खाता अखंडता (Google खाता)।
// FusedLocationProvider के माध्यम से स्थान अनुरोध
val fusedClient = LocationServices.getFusedLocationProviderClient(context)
val locationRequest = LocationRequest.Builder()
.setPriority(Priority.PRIORITY_HIGH_ACCURACY)
.setInterval(10000)
.setFastestInterval(5000)
.build()
if (ActivityCompat.checkSelfPermission(
context, Manifest.permission.ACCESS_FINE_LOCATION
) == PackageManager.PERMISSION_GRANTED) {
fusedClient.requestLocationUpdates(
locationRequest,
locationCallback,
Looper.getMainLooper()
)
}Google Play Services Awareness मॉड्यूल एक संयुक्त API है जो स्थान, समय, मौसम, उपयोगकर्ता गतिविधि और कनेक्टेड हेडफ़ोन के बारे में डेटा को मर्ज करता है। Awareness API ऐप को संदर्भ पर प्रतिक्रिया करने की अनुमति देता है: उदाहरण के लिए, जब उपयोगकर्ता काम पर हो तो साइलेंट मोड सक्षम करें, या बाहर जाने से पहले बारिश की सूचना दिखाएँ। API Play Services 16.0.0 से उपलब्ध है।
Google Play Services को Android प्रोजेक्ट में एकीकृत करने के लिए ऐप-स्तरीय build.gradle में निर्भरताएँ जोड़ी जाती हैं। Google APK आकार कम करने के लिए सामान्य play-services-all पैकेज के बजाय अलग-अलग मॉड्यूल निर्भरताओं का उपयोग करने की सलाह देता है। न्यूनतम Play Services SDK संस्करण 21.0.0 (Android 14 के अनुरूप) है, लेकिन अधिकांश मॉड्यूल API 19+ का समर्थन करते हैं।
एकीकरण के लिए Google Services Gradle Plugin और google-services.json फ़ाइल सेट करना आवश्यक है, जो Firebase Console से डाउनलोड की जाती है। JSON फ़ाइल में प्रोजेक्ट पहचानकर्ता, API कुंजियाँ और OAuth के लिए Client ID होती है। google-services.json के बिना, अधिकांश Play Services मॉड्यूल Google सर्वर पर प्रमाणित नहीं हो सकते। यदि प्रोजेक्ट Firebase का उपयोग नहीं करता है, तो AndroidManifest.xml में API कुंजी जोड़ना पर्याप्त है।
// build.gradle (प्रोजेक्ट स्तर)
buildscript {
dependencies {
classpath "com.google.gms:google-services:4.4.2"
}
}
// build.gradle (ऐप स्तर)
apply plugin: 'com.google.gms.google-services'
dependencies {
implementation "com.google.android.gms:play-services-auth:21.2.0"
implementation "com.google.android.gms:play-services-maps:19.0.0"
implementation "com.google.android.gms:play-services-location:21.3.0"
}एक महत्वपूर्ण बारीकियाँ: विभिन्न Google Play Services मॉड्यूल एक दूसरे के विभिन्न संस्करणों की आवश्यकता कर सकते हैं। यदि एक मॉड्यूल को play-services-basement संस्करण 18.0.0 चाहिए और दूसरे को 18.1.0, तो Gradle उच्च संस्करण के पक्ष में संघर्ष को हल करता है। सभी मॉड्यूल के लिए एक चर के माध्यम से एकल संस्करण का उपयोग करने की अनुशंसा की जाती है: ext.playServicesVersion = '21.2.0'। Google Play Services compileSdk संस्करण पर भी निर्भर करती हैं — संस्करण 21.0.0 के लिए compileSdk 34+ आवश्यक है।
Google Play Services के बिना उपकरण (Huawei, Honor, कुछ चीनी ब्रांड) GMS द्वारा प्रदान की गई APIs का उपयोग नहीं कर सकते। ऐसे उपकरणों के लिए, Google Firebase SDK की सिफारिश करता है, जिसमें क्रॉस-प्लेटफ़ॉर्म लाइब्रेरी शामिल हैं जो Play Services के बिना काम करती हैं। Firebase Authentication सीधे REST API का उपयोग करता है, Firebase Realtime Database WebSocket कनेक्शन का उपयोग करता है, Firebase Cloud Messaging अपने स्वयं के प्रोटोकॉल का उपयोग करता है।
एक वैकल्पिक दृष्टिकोण Huawei Mobile Services (HMS) का उपयोग करना है, जो समान APIs प्रदान करते हैं: Huawei Maps Kit, Location Kit, Push Kit। दोनों प्रकार के उपकरणों का समर्थन करने के लिए, डेवलपर एक अमूर्त परत लागू करते हैं जो स्टार्टअप पर GMS या HMS की उपलब्धता का पता लगाती है और उपयुक्त SDK को जोड़ती है। Counterpoint Research (2025) के अनुसार, GMS के बिना उपकरण वैश्विक Android बाजार का लगभग 5% हिस्सा हैं।
// डिवाइस पर GMS उपलब्धता की जाँच
fun isGmsAvailable(): Boolean {
return try {
GoogleApiAvailability.getInstance()
.isGooglePlayServicesAvailable(context) ==
ConnectionResult.SUCCESS
} catch (e: Exception) {
false
}
}
// GMS/HMS के लिए अमूर्त परत
interface PushService {
fun getToken(): String
}
class GmsPushService : PushService {
override fun getToken() =
FirebaseMessaging.getInstance().token.await()
}GMS के बिना उपकरणों पर चलने वाले एप्लिकेशन के लिए, Google APIs का उपयोग करने वाले सभी कार्यों का परीक्षण करना महत्वपूर्ण है। Play Services SERVICE_MISSING त्रुटि लौटाती हैं यदि सेवा नहीं मिलती है। ग्रेसफुल डिग्रेडेशन की अनुशंसा की जाती है: यदि Google Sign-In उपलब्ध नहीं है, तो ईमेल लॉगिन प्रदान करें; यदि Google Maps उपलब्ध नहीं है, तो Yandex.Maps या OpenStreetMap के साथ WebView दिखाएँ। Huawei AppGallery दुनिया भर में लगभग 15% Android एप्लिकेशन प्रकाशित करता है।
Google Play Services उपलब्धता की जाँच और सभी संभावित स्थितियों को संभालने का एक पूर्ण उदाहरण: सेवा उपलब्ध, अपडेट आवश्यक, सेवा अक्षम, सेवा अनुपलब्ध। कोड जाँच के लिए GoogleApiAvailability और Play Store पर ले जाने वाला Google का मानक डायलॉग दिखाने के लिए showErrorDialogFragment का उपयोग करता है।
class GmsCheckActivity : AppCompatActivity() {
companion object {
private const val REQ_UPDATE = 1001
}
fun checkGooglePlayServices() {
val api = GoogleApiAvailability.getInstance()
when (api.isGooglePlayServicesAvailable(this)) {
ConnectionResult.SUCCESS ->
initializeApp()
ConnectionResult.SERVICE_DISABLED ->
showSettingsDialog()
ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED ->
api.showErrorDialogFragment(
this, ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED,
REQ_UPDATE
)
}
}
override fun onActivityResult(request: Int,
result: Int, data: Intent?) {
super.onActivityResult(request, result, data)
if (request == REQ_UPDATE && result == RESULT_OK)
initializeApp()
}
}केवल पहली बार नहीं, बल्कि प्रत्येक ऐप लॉन्च पर Google Play Services की उपलब्धता की जाँच करने की अनुशंसा की जाती है। उपयोगकर्ता एप्लिकेशन इंस्टॉल करने के बाद सेटिंग्स में Play Services को अक्षम कर सकता है, जिससे सभी Google APIs टूट जाएँगी। महत्वपूर्ण कार्यों (उदाहरण के लिए, Google Pay भुगतान) के लिए, जाँच अनिवार्य होनी चाहिए — Play Services के बिना, एप्लिकेशन भुगतान प्रोसेस नहीं कर सकता।
Play Core एप्लिकेशन मॉड्यूल, रनटाइम अपडेट और अतिरिक्त संसाधनों को डाउनलोड करने के प्रबंधन के लिए Google Play Services की एक लाइब्रेरी है। Play Core Dynamic Delivery को सक्षम करता है — एप्लिकेशन मॉड्यूल की ऑन-डिमांड डिलीवरी: उपयोगकर्ता बेस एप्लिकेशन डाउनलोड करता है, और अतिरिक्त सुविधाएँ (उदाहरण के लिए, एक प्रशासन मॉड्यूल या प्रीमियम सामग्री) तभी डाउनलोड होती हैं जब उपयोगकर्ता पहली बार संबंधित स्क्रीन खोलता है।
Google Play Services Play Core के माध्यम से मॉड्यूलर डिलीवरी प्रारंभिक एप्लिकेशन इंस्टॉल आकार को 30-50% कम करती है। यह धीमे इंटरनेट वाले बाजारों के लिए विशेष रूप से महत्वपूर्ण है — Google Play Console के अनुसार, प्रत्येक 10 MB इंस्टॉल रूपांतरण को 1% कम करता है। Play Core SDK के लिए Android 5.0 (API 21) और Google Play Services 21.0.0+ आवश्यक है। महत्वपूर्ण: एक बार मॉड्यूल डाउनलोड हो जाने पर, इसे हटाया नहीं जा सकता, केवल पूर्ण ऐप अपडेट के साथ अपडेट किया जा सकता है।
// Play Core के माध्यम से ऑन-डिमांड मॉड्यूल लोडिंग
val manager = SplitInstallManagerFactory.create(context)
val request = SplitInstallRequest
.Builder()
.addModule("premium")
.build()
manager.startInstall(request)
.addOnSuccessListener {
Log.d("Split", "प्रीमियम मॉड्यूल लोड किया गया")
}Play Core में स्थानांतरण के लिए एप्लिकेशन आर्किटेक्चर में बदलाव की आवश्यकता है: कार्यक्षमता को Android Studio में ऑन-डिमांड मॉड्यूल में विभाजित किया जाता है, और Gradle प्रत्येक मॉड्यूल को एक अलग APK के रूप में बनाता है। Google Play Store फिर एक APK Set (Android App Bundle) असेंबल करता है और उपयोगकर्ता को केवल बेस APK प्रदान करता है। Play Core इन-ऐप अपडेट का भी समर्थन करता है — उपयोगकर्ता Play Store पर गए बिना ऐप को अपडेट कर सकता है। 2026 तक, Google Play पर लगभग 70% एप्लिकेशन Android App Bundle और Play Core का उपयोग करते हैं।
अक्सर पूछे जाने वाले प्रश्न
यदि आप Google Play Services हटाते हैं, तो सभी Google सेवाएँ काम करना बंद कर देंगी: Google Maps, Google Sign-In, FCM पुश सूचनाएँ, Google Pay, Play Integrity। इन APIs का उपयोग करने वाले एप्लिकेशन त्रुटियाँ दिखाएँगे या क्रैश होंगे। अधिकांश उपकरणों पर, Play Services को मानक तरीकों से हटाया नहीं जा सकता — केवल सेटिंग्स में अक्षम किया जा सकता है।
Google Play Services Play Store के माध्यम से स्वचालित रूप से अपडेट होती हैं। मैन्युअल अपडेट के लिए: Play Store खोलें → मेरे ऐप्स और गेम → Google Play Services ढूँढें → अपडेट करें। यदि अपडेट उपलब्ध नहीं है, तो APKMirror से नवीनतम संस्करण का APK डाउनलोड करें (केवल उन्नत उपयोगकर्ताओं के लिए)। स्वचालित अपडेट आमतौर पर रिलीज़ के 2 सप्ताह के भीतर होते हैं।
न्यूनतम समर्थित संस्करण Android 4.4 KitKat (API 19) है। हालाँकि, कुछ मॉड्यूल (उदाहरण के लिए, Credential Manager) को Android 6.0 (API 23) या उच्चतर की आवश्यकता है। आधुनिक विकास के लिए, Google Android 14 (API 34) को लक्षित करने और Play Services संस्करण 21.0.0+ का उपयोग करने की सलाह देता है। Android 4.4 पर पुराने उपकरणों को केवल महत्वपूर्ण Play Services अपडेट मिलते हैं।
हाँ, Firebase SDK GMS के बिना उपकरणों पर Google Play Services के बिना काम कर सकता है। Firebase Authentication, Realtime Database, Firestore, Cloud Functions और Hosting को Play Services की आवश्यकता नहीं है। Firebase Cloud Messaging (FCM) GMS के बजाय सीधे HTTP प्रोटोकॉल का उपयोग कर सकता है। हालाँकि, Firebase Crashlytics और Performance Monitoring को डेटा संग्रह के लिए Play Services की आवश्यकता है।
बेस Google Play Services APK सिस्टम विभाजन में लगभग 80-120 MB लेता है। अतिरिक्त मॉड्यूल (मानचित्र, auth, location) आवश्यकतानुसार डाउनलोड होते हैं और 10-50 MB जोड़ सकते हैं। तुलना के लिए: iOS पर Apple Push Notification Service लगभग 5 MB लेती है। आकार के बावजूद, Play Services उपयोगकर्ता के उपलब्ध स्टोरेज को प्रभावित नहीं करती — वे सिस्टम विभाजन में रहती हैं।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें