Play Age Signals API (बीटा वर्शन) का इस्तेमाल करना

Play Age Signals API (बीटा वर्शन) का इस्तेमाल करने का मतलब है कि आप सेवा की शर्तों से सहमत हैं. साथ ही, आप Google Play Developer Program की नीतियों का पालन करने के लिए भी सहमत हैं. उपयोगकर्ता की स्थिति और उम्र सीमा का अनुरोध करने के लिए, रनटाइम के दौरान अपने ऐप्लिकेशन से एपीआई को कॉल करना होता है. Play Age Signals API सिर्फ़ उन देशों/इलाकों में रहने वाले उपयोगकर्ताओं का डेटा दिखाता है जहां Google Play को कानूनी तौर पर, उम्र की कैटगरी से जुड़ा डेटा देना ज़रूरी है.

Google Play, लागू होने वाले अधिकार क्षेत्र और देशों/इलाकों के हिसाब से तय की गई उम्र के ग्रुप के आधार पर, उम्र सीमा दिखाता है. एपीआई, लागू होने वाले देशों/इलाकों और अधिकार क्षेत्रों में उम्र की कुछ डिफ़ॉल्ट सीमाएं दिखाता है. ये सीमाएं हैं: 0 से 12 साल, 13 से 15 साल, 16 से 17 साल, और 18 साल से ज़्यादा. हालांकि, ये सीमाएं देश/इलाके के हिसाब से बदल सकती हैं.

अपने ऐप्लिकेशन में Play Age Signals API को इंटिग्रेट करना

Play Age Signals API, Android 6.0 (एपीआई लेवल 23) और इसके बाद के वर्शन पर काम करता है. अपने ऐप्लिकेशन में Play Age Signals API को इंटिग्रेट करने के लिए, अपने ऐप्लिकेशन की build.gradle फ़ाइल में यह डिपेंडेंसी जोड़ें:

implementation 'com.google.android.play:age-signals:0.0.2'

उम्र से जुड़े सिग्नल का अनुरोध करना

उम्र से जुड़े सिग्नल के लिए अनुरोध करने का उदाहरण यहां दिया गया है:

Kotlin

// Create an instance of a manager
val ageSignalsManager =
    AgeSignalsManagerFactory.create(ApplicationProvider.getApplicationContext())

// Request an age signals check
ageSignalsManager
    .checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener { ageSignalsResult ->
        // Store the install ID for later...
        val installId = ageSignalsResult.installId()

        if (ageSignalsResult.userStatus() == AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED) {
          // Disallow access...
        } else {
           // Do something else if the user is SUPERVISED, VERIFIED, etc.
        }
    }

Java

// Create an instance of a manager
AgeSignalsManager ageSignalsManager =
    AgeSignalsManagerFactory.create(ApplicationProvider.getApplicationContext());

// Request an age signals check
ageSignalsManager
    .checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(
        ageSignalsResult -> {
          // Store the install ID for later...
          String installId = ageSignalsResult.installId();

          if (ageSignalsResult
              .userStatus()
              .equals(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)) {
            // Disallow access ...
          } else {
            // Do something else if the user is SUPERVISED, VERIFIED, etc.
          }
        });

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

(ज़रूरी नहीं) पसंद के मुताबिक उम्र की सीमाओं का डेटा

Play Age Signals API, लागू होने वाले देशों/इलाकों और अधिकार क्षेत्रों में डिफ़ॉल्ट तौर पर उम्र की कुछ सीमाएं दिखाता है. ये सीमाएं हैं: 0 से 12 साल, 13 से 15 साल, 16 से 17 साल, और 18 साल से ज़्यादा. स्थानीय ज़रूरी शर्त के आधार पर, आने वाले समय में इनमें बदलाव किए जा सकते हैं.

इसके अलावा, दिखाई जाने वाली उम्र की सीमाओं को ऐप्लिकेशन के लिए तय की गई कम से कम उम्र के हिसाब से पसंद के मुताबिक बनाया जा सकता है. इसके लिए, Google Play Console में उम्र से जुड़े सिग्नल पेज पर जाकर, ऐप्लिकेशन इस्तेमाल करने वालों की कम से कम उम्र तय करें. Age Signals API, पसंद के मुताबिक बनाई गई उम्र की सीमाएं दिखाता है. उदाहरण के लिए, अगर आपने 9, 15, और 17 साल की कैटगरी चुनी है, तो ऐप्लिकेशन इस्तेमाल करने वाला ऐसा उपयोगकर्ता जिसकी उम्र 14 साल है, वह 10 से 15 साल की उम्र सीमा में आएगा.

Age Signals API से मिलने वाले जवाब में शामिल उम्र सीमाओं को पसंद के मुताबिक बनाने के लिए, आपका ऐप्लिकेशन इस्तेमाल करने के लिए कम से कम उम्र तय करें. ऐसा करने के लिए, यह तरीका अपनाएं:

  1. Play Console में उम्र के हिसाब से सिग्नल पेज पर जाएं.
  2. पसंद के मुताबिक तय की गई उम्र सीमाएं टैब पर जाकर, अपने ऐप्लिकेशन के लिए कम से कम तीन उम्र डालें. कम से कम उम्र की कैटगरी के बीच दो साल या इससे ज़्यादा का अंतर होना ज़रूरी है. इसे साल में एक बार बदला जा सकता है.
  3. सेव करें पर क्लिक करें.

उम्र से जुड़े सिग्नल से मिलने वाली जानकारी

Play Age Signals API (बीटा वर्शन) से मिली जानकारी में, ये फ़ील्ड और वैल्यू शामिल होती हैं. इन वैल्यू में बदलाव हो सकता है. अगर आपको सबसे नई वैल्यू चाहिए, तो ऐप्लिकेशन खुलने पर एपीआई से जानकारी पाने का अनुरोध करें. इन सिग्नल का इस्तेमाल करके, उम्र के हिसाब से सही अनुभव उपलब्ध कराना आपकी ज़िम्मेदारी है.

जानकारी का फ़ील्ड वैल्यू ब्यौरा
userStatus पुष्टि हो चुकी है उपयोगकर्ता की उम्र 18 साल से ज़्यादा हो. Google ने उपयोगकर्ता की उम्र की पुष्टि करने के लिए, कारोबार के नज़रिये से सही तरीका इस्तेमाल किया हो. जैसे, सरकारी आईडी, क्रेडिट कार्ड या चेहरे से उम्र का अनुमान लगाना. अगर userStatus की वैल्यू VERIFIED है, तो अन्य फ़ील्ड को अनदेखा किया जा सकता है.
निगरानी में है उपयोगकर्ता के पास निगरानी में रखा गया Google खाता हो जिसे उसके माता-पिता मैनेज करते हों और उन्होंने उपयोगकर्ता की उम्र सेट की हो. उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें. मंज़ूरी मिलने पर किए गए आखिरी अहम बदलाव का पता लगाने के लिए, mostRecentApprovalDate का इस्तेमाल करें.
SUPERVISED_APPROVAL_PENDING उपयोगकर्ता के पास निगरानी में रखा गया Google खाता हो. साथ ही, निगरानी करने वाले माता-पिता/अभिभावक ने अब तक एक या उससे ज़्यादा अहम बदलावों को मंज़ूरी नहीं दी हो. उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें. मंज़ूरी मिलने पर किए गए आखिरी अहम बदलाव का पता लगाने के लिए, mostRecentApprovalDate का इस्तेमाल करें.
SUPERVISED_APPROVAL_DENIED उपयोगकर्ता के पास निगरानी में रखा गया Google खाता हो. साथ ही, निगरानी करने वाले माता-पिता/अभिभावक ने एक या उससे ज़्यादा अहम बदलावों को मंज़ूरी देने से मना कर दिया हो. उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें. मंज़ूरी मिलने पर किए गए आखिरी अहम बदलाव का पता लगाने के लिए, mostRecentApprovalDate का इस्तेमाल करें.
कोई जानकारी नहीं है उपयोगकर्ता लागू होने वाले अधिकार क्षेत्र या इलाके में हो, लेकिन उसकी पुष्टि नहीं हुई हो या उसे निगरानी में नहीं रखा गया हो. इन उपयोगकर्ताओं की उम्र 18 साल से ज़्यादा या कम हो सकती है. Google Play से उम्र का सिग्नल पाने के लिए, उपयोगकर्ता से Play Store पर जाकर उनकी स्थिति ठीक करने के लिए कहें.
null अन्य सभी उपयोगकर्ताओं को यह वैल्यू दिखती है. अगर userStatus की वैल्यू null है, तो अन्य फ़ील्ड को अनदेखा किया जा सकता है.
ageLower 0 से 18 निगरानी में रखे गए उपयोगकर्ता की उम्र सीमा की सबसे कम उम्र (शामिल है). उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें.
null
userStatus की वैल्यू मौजूद नहीं है या खाली है.
ageUpper 2 से 18 निगरानी में रखे गए उपयोगकर्ता की उम्र सीमा की सबसे ज़्यादा उम्र (शामिल है). उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें.
null या तो userStatus की निगरानी की जा रही हो और उपयोगकर्ता के माता-पिता ने पुष्टि की हो कि उसकी उम्र 18 साल से ज़्यादा हो. या userStatus की पुष्टि हो गई है, यह अज्ञात है या खाली है.
mostRecentApprovalDate डेटस्टैंप मंज़ूरी मिलने पर किए गए आखिरी अहम बदलाव के effective from की तारीख. किसी ऐप्लिकेशन को इंस्टॉल करने पर, इंस्टॉल करने से पहले हुए सबसे हाल के बड़े बदलाव की तारीख का इस्तेमाल किया जाता है.
null या तो userStatus की निगरानी की जा रही हो और कोई अहम बदलाव सबमिट न किया गया हो. या userStatus की पुष्टि हो गई है, यह अज्ञात है या खाली है.
installID Google Play से जनरेट किया गया अल्फ़ान्यूमेरिक आईडी. यह आईडी, Google Play की ओर से निगरानी में रखे गए उपयोगकर्ता के इंस्टॉल किए गए ऐप्लिकेशन को असाइन किया जाता है. इसका इस्तेमाल, ऐप्लिकेशन के लिए दी गई अनुमति रद्द होने की सूचना देने के लिए किया जाता है. इस विषय से जुड़े लेख पढ़ें: ऐप्लिकेशन के लिए दी गई अनुमतियां जो वापस ले ली गईं.
null userStatus की पुष्टि हो गई है, इसके बारे में जानकारी नहीं है या यह खाली है.

जवाब के उदाहरण

पुष्टि किए गए उपयोगकर्ता के लिए आपको यह जानकारी मिलेगी:

  • userStatus AgeSignalsVerificationStatus.VERIFIED होगी.
  • जवाब के अन्य फ़ील्ड खाली होंगे.

निगरानी में रखे गए उपयोगकर्ता के लिए, आपको यह जानकारी मिलेगी:

  • userStatus AgeSignalsVerificationStatus.SUPERVISED होगा.
  • ageLower कोई संख्या होगी. जैसे, 13.
  • ageUpper कोई संख्या होगी. जैसे, 15.
  • mostRecentApprovalDate एक Java डेट ऑब्जेक्ट होगा (जैसे, 2026-01-01) या खाली होगा (अगर ज़रूरी बदलाव को मंज़ूरी नहीं मिली है).
  • installID, Play से जनरेट किया गया अल्फ़ान्यूमेरिक आईडी होगा. जैसे, 550e8400-e29b-41d4-a716-446655441111.

निगरानी में रखे गए किसी ऐसे उपयोगकर्ता के लिए जिसके खाते में अहम बदलाव करने की अनुमति मिलना बाकी है, आपको ये सूचनाएं मिलेंगी:

  • userStatus AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING होगा.
  • ageLower कोई संख्या होगी. जैसे, 13.
  • ageUpper कोई संख्या होगी. जैसे, 15.
  • mostRecentApprovalDate एक Java डेट ऑब्जेक्ट होगा (जैसे, 2026-01-01) या खाली होगा (अगर ज़रूरी बदलाव को मंज़ूरी नहीं मिली है).
  • installID, Play से जनरेट किया गया अल्फ़ान्यूमेरिक आईडी होगा. जैसे, 550e8400-e29b-41d4-a716-446655441111.

एपीआई के गड़बड़ी कोड मैनेज करना

अगर आपका ऐप्लिकेशन, Play Age Signals API के लिए अनुरोध करता है और कॉल पूरा नहीं होता है, तो आपके ऐप्लिकेशन को गड़बड़ी का कोड मिलता है. ये गड़बड़ियां कई वजहों से हो सकती हैं. जैसे, Play Store ऐप्लिकेशन का पुराना वर्शन इस्तेमाल किया जाना.

फिर से कोशिश करने की रणनीति

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

गड़बड़ी के कोड की वैल्यू, संख्या में गड़बड़ी का कोड ब्यौरा फिर से कोशिश की जा सकती है
-1 API_NOT_AVAILABLE Play Age Signals API उपलब्ध नहीं है. ऐसा हो सकता है कि डिवाइस पर Play Store ऐप्लिकेशन का पुराना वर्शन इंस्टॉल हो.

समस्या हल करने का तरीका
  • उपयोगकर्ता से Play Store को अपडेट करने के लिए कहें.
हां
-2 PLAY_STORE_NOT_FOUND डिवाइस पर Play Store ऐप्लिकेशन नहीं मिला. उपयोगकर्ता से Play Store इंस्टॉल करने या उसे चालू करने के लिए कहें. हां
-3 NETWORK_ERROR कोई भी नेटवर्क उपलब्ध नहीं है. उपयोगकर्ता से कनेक्शन की जांच करने के लिए कहें. हां
-4 PLAY_SERVICES_NOT_FOUND Play Services उपलब्ध नहीं है या इसका वर्शन बहुत पुराना है. उपयोगकर्ता से Play services को इंस्टॉल, अपडेट या चालू करने के लिए कहें. हां
-5 CANNOT_BIND_TO_SERVICE Play Store में सेवा से बाइंड नहीं किया जा सका. ऐसा डिवाइस पर Play Store का पुराना वर्शन इंस्टॉल होने या डिवाइस की मेमोरी ज़्यादा भरी होने की वजह से हो सकता है. उपयोगकर्ता से Play Store ऐप्लिकेशन को अपडेट करने के लिए कहें. एक्स्पोनेंशियल बैकऑफ़ के साथ फिर से कोशिश करें. हां
-6 PLAY_STORE_VERSION_OUTDATED Play Store ऐप्लिकेशन को अपडेट करना ज़रूरी है. उपयोगकर्ता से Play Store ऐप्लिकेशन को अपडेट करने के लिए कहें. हां
-7 PLAY_SERVICES_VERSION_OUTDATED Play Services को अपडेट करना ज़रूरी है. उपयोगकर्ता से Play Services को अपडेट करने के लिए कहें. हां
-8 CLIENT_TRANSIENT_ERROR क्लाइंट डिवाइस में कुछ समय के लिए कोई गड़बड़ी हुई. फिर से कोशिश करने की रणनीति लागू करें. इसमें कोशिश करने की ज़्यादा से ज़्यादा संख्या को एग्ज़िट की शर्त के तौर पर इस्तेमाल करें. अगर समस्या अब भी बनी रहती है, तो उपयोगकर्ता से कुछ समय बाद फिर से कोशिश करने के लिए कहें. हां
-9 APP_NOT_OWNED ऐप्लिकेशन को Google Play से इंस्टॉल नहीं किया गया था. उपयोगकर्ता को Google Play से आपका ऐप्लिकेशन डाउनलोड करने के लिए कहें. नहीं
-100 INTERNAL_ERROR सिस्टम में कोई अज्ञात गड़बड़ी हुई. फिर से कोशिश करने की रणनीति लागू करें. इसमें कोशिश करने की ज़्यादा से ज़्यादा संख्या को एग्ज़िट की शर्त के तौर पर इस्तेमाल करें. अगर समस्या अब भी बनी रहती है, तो उपयोगकर्ता से कुछ समय बाद फिर से कोशिश करने के लिए कहें. अगर इसमें लगातार गड़बड़ी आती है, तो Google Play डेवलपर सहायता टीम से संपर्क करें. विषय में Play Age Signals API शामिल करें. साथ ही, ज़्यादा से ज़्यादा तकनीकी जानकारी शामिल करें. जैसे, गड़बड़ी की रिपोर्ट. नहीं