Play Age Signals API (बीटा वर्शन) का इस्तेमाल करने का मतलब है कि आप सेवा की शर्तों से सहमत हैं. साथ ही, Google Play की डेवलपर नीतियों का पालन करने के लिए भी सहमत हैं. उपयोगकर्ता की स्थिति और उम्र सीमा का अनुरोध करने के लिए, रनटाइम के दौरान अपने ऐप्लिकेशन से एपीआई को कॉल करें. Play Age Signals API सिर्फ़ उन देशों/इलाकों में रहने वाले उपयोगकर्ताओं का डेटा दिखाता है जहां Play को कानूनी तौर पर, उम्र के हिसाब से कैटगरी का डेटा देना ज़रूरी है.
Play, लागू होने वाले अधिकार क्षेत्र और देशों/इलाकों के हिसाब से तय की गई उम्र के ग्रुप के आधार पर, उम्र की सीमा दिखाता है. एपीआई, लागू होने वाले देशों/इलाकों और अधिकार क्षेत्रों में उम्र की कुछ डिफ़ॉल्ट सीमाएं दिखाता है. ये सीमाएं 0 से 12 साल, 13 से 15 साल, 16 से 17 साल, और 18 साल से ज़्यादा हैं. हालांकि, ये सीमाएं देश/इलाके के हिसाब से बदल सकती हैं.
अपने ऐप्लिकेशन में Play Age Signals API को इंटिग्रेट करना
अपने ऐप्लिकेशन में Play Age Signals API को इंटिग्रेट करने के लिए, अपने ऐप्लिकेशन की build.gradle फ़ाइल में यह डिपेंडेंसी जोड़ें:
implementation 'com.google.android.play:age-signals:0.0.1-beta02'
उम्र से जुड़े सिग्नल का अनुरोध करना
उम्र के सिग्नल का अनुरोध करने का एक उदाहरण यहां दिया गया है:
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 उसके जन्मदिन के दो से आठ हफ़्तों के अंदर, उस व्यक्ति के लिए कैश मेमोरी में सेव किए गए उम्र के सिग्नल अपने-आप अपडेट कर देता है.
(ज़रूरी नहीं) पसंद के मुताबिक उम्र की सीमाएं पाना
एपीआई, लागू होने वाले देशों/इलाकों और अधिकार क्षेत्रों में उम्र की कुछ डिफ़ॉल्ट सीमाएं दिखाता है. ये सीमाएं 0 से 12 साल, 13 से 15 साल, 16 से 17 साल, और 18 साल से ज़्यादा हैं. स्थानीय ज़रूरी शर्तों के आधार पर, आने वाले समय में इनमें बदलाव हो सकता है.
इसके अलावा, ऐप्लिकेशन के लिए तय की गई कम से कम उम्र के हिसाब से दिखाई जाने वाली उम्र की सीमाओं को पसंद के मुताबिक बनाया जा सकता है. इसके लिए, Google Play Console में उम्र के सिग्नल पेज पर जाकर, ऐप्लिकेशन के लिए कम से कम उम्र की जानकारी दें. Age Signals API, उम्र की पसंद के मुताबिक सीमाएं दिखाता है. उदाहरण के लिए, अगर आपने 9, 15, और 17 साल वाली कैटगरी चुनी है, तो 14 साल का उपयोगकर्ता 10 से 15 साल की उम्र सीमा में आएगा. कम से कम उम्र की कैटगरी के बीच दो साल का अंतर होना चाहिए. इसे साल में एक बार बदला जा सकता है.
Age Signals API से मिलने वाले रिस्पॉन्स में शामिल उम्र सीमाओं को पसंद के मुताबिक बनाने के लिए, अपने ऐप्लिकेशन के लिए कम से कम उम्र की जानकारी दें:
- Play Console में उम्र के हिसाब से सिग्नल पेज पर जाएं.
- ऐप्लिकेशन इस्तेमाल करने के लिए कम से कम उम्र टैब में जाकर, अपने ऐप्लिकेशन के लिए कम से कम उम्र की ज़्यादा से ज़्यादा तीन कैटगरी डालें.
- सेव करें पर क्लिक करें.
उम्र से जुड़े संकेतों के आधार पर जवाब
Play Age Signals API (बीटा वर्शन) से मिले जवाब में, ये फ़ील्ड और वैल्यू शामिल होती हैं. इन वैल्यू में बदलाव हो सकता है. अगर आपको सबसे नई वैल्यू चाहिए, तो ऐप्लिकेशन खुलने पर एपीआई रिस्पॉन्स का अनुरोध करें. इन सिग्नल का इस्तेमाल करके, उम्र के हिसाब से अनुभव देने की ज़िम्मेदारी आपकी है.
| जानकारी का फ़ील्ड | वैल्यू | ब्यौरा |
|---|---|---|
userStatus |
पुष्टि हो चुकी है | उपयोगकर्ता की उम्र 18 साल से ज़्यादा हो. Google ने उपयोगकर्ता की उम्र की पुष्टि करने के लिए, कारोबारी तौर पर सही तरीका इस्तेमाल किया है. जैसे, सरकारी आईडी, क्रेडिट कार्ड या चेहरे से उम्र का अनुमान लगाना. |
| निगरानी में रखा गया | उपयोगकर्ता के पास निगरानी में रखा गया Google खाता है. इसे माता-पिता मैनेज करते हैं और वे ही उपयोगकर्ता की उम्र सेट करते हैं.
उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें. |
|
| SUPERVISED_APPROVAL_PENDING | उपयोगकर्ता के पास निगरानी में रखा गया Google खाता है. साथ ही, निगरानी करने वाले माता-पिता/अभिभावक ने अब तक एक या उससे ज़्यादा अहम बदलावों को मंज़ूरी नहीं दी है.
उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें.
मंज़ूरी पा चुके आखिरी अहम बदलाव का पता लगाने के लिए, mostRecentApprovalDate का इस्तेमाल करें. |
|
| SUPERVISED_APPROVAL_DENIED | उपयोगकर्ता के पास निगरानी में रखा गया Google खाता है. साथ ही, निगरानी करने वाले माता-पिता ने एक या उससे ज़्यादा अहम बदलावों के लिए अनुमति नहीं दी है.
उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें.
mostRecentApprovalDate का इस्तेमाल करके, यह पता लगाएं कि पिछली बार किस अहम बदलाव को मंज़ूरी मिली थी. |
|
| कोई जानकारी नहीं है | उपयोगकर्ता की पुष्टि नहीं हुई है या लागू होने वाले अधिकार क्षेत्रों और इलाकों में उसकी निगरानी नहीं की जा रही है. इन उपयोगकर्ताओं की उम्र 18 साल से ज़्यादा या कम हो सकती है. Google Play से उम्र का सिग्नल पाने के लिए, उपयोगकर्ता से Play Store पर जाकर अपनी स्थिति ठीक करने के लिए कहें. | |
| खाली (वैल्यू खाली है) | अन्य सभी उपयोगकर्ताओं को यह वैल्यू दिखती है. | |
ageLower |
0 से 18 | निगरानी में रखे गए उपयोगकर्ता की उम्र सीमा की सबसे कम उम्र (शामिल है).
उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें. |
| खाली (वैल्यू खाली है) |
userStatus की वैल्यू मौजूद नहीं है या खाली है. |
|
ageUpper |
2 से 18 | निगरानी में रखे गए उपयोगकर्ता की उम्र सीमा की ऊपरी सीमा (शामिल है).
उपयोगकर्ता की उम्र सीमा का पता लगाने के लिए, ageLower और ageUpper का इस्तेमाल करें. |
| खाली (वैल्यू खाली है) | या तो userStatus की निगरानी की जा रही हो और उपयोगकर्ता के माता-पिता ने पुष्टि की हो कि उसकी उम्र 18 साल से ज़्यादा है.
या userStatus की पुष्टि हो गई है, यह अज्ञात है या खाली है. |
|
mostRecentApprovalDate |
तारीख का स्टैंप | effective from के लिए, हाल ही में किए गए अहम बदलावों को मंज़ूरी मिलने की तारीख. जब कोई ऐप्लिकेशन इंस्टॉल किया जाता है, तो इंस्टॉल करने से पहले किए गए सबसे हाल के अहम बदलाव की तारीख का इस्तेमाल किया जाता है. |
| खाली (वैल्यू खाली है) | या तो userStatus की निगरानी की जा रही है और कोई अहम बदलाव सबमिट नहीं किया गया है.
या userStatus की पुष्टि हो गई है, यह अज्ञात है या खाली है. |
|
installID |
Play से जनरेट किया गया अल्फ़ान्यूमेरिक आईडी. | यह आईडी, निगरानी में रखे गए उपयोगकर्ता के इंस्टॉल किए गए ऐप्लिकेशन को Google Play असाइन करता है. इसका इस्तेमाल, ऐप्लिकेशन के इस्तेमाल की अनुमति रद्द होने की सूचना देने के लिए किया जाता है. ऐप्लिकेशन के लिए दी गई अनुमतियां जो वापस ले ली गईं से जुड़ा दस्तावेज़ पढ़ें. |
| खाली (वैल्यू खाली है) | userStatus की पुष्टि हो गई है, इसके बारे में जानकारी नहीं है या यह खाली है. |
जवाब के उदाहरण
पुष्टि किए गए उपयोगकर्ता को ये सुविधाएं मिलती हैं:
userStatusAgeSignalsVerificationStatus.VERIFIEDहोगा.- जवाब के अन्य फ़ील्ड खाली होंगे.
निगरानी में रखे गए उपयोगकर्ता के लिए, आपको यह जानकारी मिलेगी:
userStatusAgeSignalsVerificationStatus.SUPERVISEDहोगा.ageLowerकोई संख्या होगी. उदाहरण के लिए, 13.ageUpperकोई संख्या होगी. उदाहरण के लिए, 15.mostRecentApprovalDateएक Java डेट ऑब्जेक्ट (जैसे,2026-01-01) होगा या खाली होगा (अगर ज़रूरी बदलाव को मंज़ूरी नहीं मिली है).installID, Play से जनरेट किया गया अल्फ़ान्यूमेरिक आईडी होगा. जैसे,550e8400-e29b-41d4-a716-446655441111.
निगरानी में रखे गए किसी ऐसे उपयोगकर्ता के लिए, जिसके खाते में किए गए अहम बदलावों को मंज़ूरी मिलना बाकी है, आपको यह सूचना मिलेगी:
userStatusAgeSignalsVerificationStatus.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 ऐप्लिकेशन का पुराना वर्शन इंस्टॉल हो. समस्या हल करने का तरीका
|
हां |
| -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 शामिल करें. साथ ही, ज़्यादा से ज़्यादा तकनीकी जानकारी शामिल करें. जैसे, गड़बड़ी की रिपोर्ट. | नहीं |