Google Play की गेम सेवाओं के साथ काम करता है

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

हम यह बदलाव, डेवलपर के सुझाव और Google Play इंस्टैंट के लॉन्च होने के बाद से, इकोसिस्टम को बेहतर बनाने के लिए किए जा रहे लगातार निवेश के आधार पर कर रहे हैं.

उपयोगकर्ताओं की संख्या बढ़ाने के लिए, हम डेवलपर को अपने रेगुलर ऐप्लिकेशन या गेम पर उपयोगकर्ताओं को भेजने का सुझाव देते हैं. इसके लिए, डीपलिंक का इस्तेमाल करके, उपयोगकर्ताओं को ज़रूरत के हिसाब से किसी खास प्रोसेस या सुविधा पर रीडायरेक्ट करें.

इंस्टैंट प्ले वाले सभी गेम में, Google Play की गेम सेवाओं का इस्तेमाल करके, अपने-आप साइन इन होने की सुविधा होनी चाहिए. Google Play की गेम सेवाओं का इस्तेमाल करके, खिलाड़ी की एक जैसी आईडी उपलब्ध कराएं. इसका इस्तेमाल, क्लाउड से सेव की गई प्रोग्रेस को वापस पाने के लिए किया जा सकता है.

लाइब्रेरी के साइज़ पर पड़ने वाला असर

Google Play की गेम सेवाओं की लाइब्रेरी के साइज़ पर पड़ने वाला असर इस बात पर निर्भर करता है कि गेम इंजन, Unity, Java या नेटिव पर चलता है या नहीं.

Java

साइज़ पर पड़ने वाला असर कम होता है, क्योंकि ProGuard को यह जानकारी दी जाती है कि किन क्लास का इस्तेमाल किया जा रहा है.

Unity

Google Play की गेम सेवाओं के आधिकारिक प्लग-इन का इस्तेमाल करके, अपने Unity गेम में गेम सेव करने की सुविधा जोड़ी जा सकती है. अगर ProGuard के सुझावों का इस्तेमाल किया जाता है, तो साइज़ पर पड़ने वाला असर करीब 200 केबी होता है.

नेटिव

नेटिव Play Games की सेवाओं के SDK टूल का इस्तेमाल करके, Android NDK पर बने गेम में, गेम सेव करने की सुविधा जोड़ी जा सकती है.

लाइब्रेरी में शामिल ज़्यादातर Java कोड को हटाने के लिए, नीचे दिए गए सामान्य ProGuard कॉन्फ़िगरेशन का इस्तेमाल करें. इस कॉन्फ़िगरेशन की मदद से, Play की गेम सेवाओं में साइन इन करने और गेम सेव करने की सुविधा लागू की जा सकती है. साथ ही, एपीके में सिर्फ़ 250 केबी जुड़ते हैं.

# The native PGS library wraps the Java PGS SDK using reflection.
-dontobfuscate
-keeppackagenames

# Needed for callbacks.
-keepclasseswithmembernames,includedescriptorclasses class * {
    native <methods>;
}

# Needed for helper libraries.
-keep class com.google.example.games.juihelper.** {
  public protected *;
}
-keep class com.sample.helper.** {
  public protected *;
}

# Needed for GoogleApiClient and auth stuff.
-keep class com.google.android.gms.common.api.** {
  public protected *;
}

# Keep all of the "nearby" library, which is needed by the native PGS library
# at runtime (though deprecated).
-keep class com.google.android.gms.nearby.** {
  public protected *;
}

# Keep all of the public PGS APIs.
-keep class com.google.android.gms.games.** {
  public protected *;
}