कीलेस काम नहीं करता (ERROR_NOT_AUTHORIZED
)
जब ARCore API सर्वर से संपर्क करने पर ERROR_NOT_AUTHORIZED
मिलता है, तो पक्का करें कि आपके ऐप्लिकेशन में
com.google.android.gms:play-services-auth
लाइब्रेरी मौजूद हो:
- अपना ऐप्लिकेशन बनाएं और APK
विश्लेषक की मदद से आर्टफ़ैक्ट की जांच करें. पक्का करें कि
बनाई गई ऐप्लिकेशन बाइनरी में
com.google.android.gms.auth
पैकेज शामिल हो. साथ ही, इसके कॉन्टेंट का नाम बदला या छोटा न किया गया हो.- अगर यह मौजूद नहीं है, तो ज़रूरी लाइब्रेरी शामिल करें को फ़ॉलो करें. साथ ही, पक्का करें कि लाइब्रेरी शामिल है और छोटा करने की सेटिंग सही हैं.
keytool
सुविधा का इस्तेमाल करके, काम नहीं करने वाले टारगेट आर्टफ़ैक्ट में मौजूद सुरक्षा की जानकारी दिखाएं:एएबी आर्टफ़ैक्ट
keytool -printcert -jarfile artifact.aab
APK आर्टफ़ैक्ट
keytool -printcert -jarfile artifact.apk
पक्का करें कि SHA-1 सर्टिफ़िकेट फ़िंगरप्रिंट, आपके प्रोजेक्ट के OAuth 2.0 क्लाइंट आईडी में इस्तेमाल किए गए क्रेडेंशियल से मेल खाता हो.
पक्का करें कि आपने Google Cloud में सही प्रोजेक्ट के लिए ARCore API चालू किया है.
कई तरह के बिल्ड (जैसे कि डीबग) में, कुंजी के बिना अनुमति देने की सुविधा काम करती है, लेकिन अन्य में नहीं
अगर कुंजी के बिना अनुमति देने की सुविधा कुछ बिल्ड में काम करती है, लेकिन दूसरे बिल्ड में नहीं, तो पक्का करें कि काम न करने वाले आर्टफ़ैक्ट में मौजूद फ़िंगरप्रिंट, Google Cloud Console में शामिल फ़िंगरप्रिंट से मेल खाता हो. कीलेस ऑथराइज़ेशन काम नहीं करता देखें. साथ ही, यह पुष्टि करने का तरीका अपनाएं कि उस आर्टफ़ैक्ट के लिए इस्तेमाल किया जाने वाला साइनिंग पासकोड, Google Cloud में लिस्ट किए गए फ़िंगरप्रिंट से मेल खाता है या नहीं.
Play ऐप्लिकेशन साइनिंग की सुविधा का इस्तेमाल करते समय, कुंजी के बिना अनुमति देने की सुविधा काम नहीं करती है
अगर 'कीलेस ऑथराइज़ेशन' आपके लोकल बिल्ड पर काम करता है, लेकिन 'Play ऐप्लिकेशन साइनिंग' चालू होने के बाद, Google Play Store पर अपलोड करने के बाद काम नहीं करता, तो पक्का करें कि आपके प्रोजेक्ट के क्रेडेंशियल में रजिस्टर किया गया SHA-1 सर्टिफ़िकेट फ़िंगरप्रिंट उस फ़िंगरप्रिंट से मेल खाता हो जिसका इस्तेमाल Google आपके ऐप्लिकेशन पर साइन करने के लिए करता है:
- Google Play में ऐप्लिकेशन साइनिंग पेज पर, स्क्रोल करके ऐप्लिकेशन साइनिंग पासकोड के सर्टिफ़िकेट पर जाएं. SHA-1 सर्टिफ़िकेट फ़िंगरप्रिंट पर ध्यान दें.
- पिछले चरण में दिए गए SHA-1 सर्टिफ़िकेट फ़िंगरप्रिंट का इस्तेमाल करके, नया OAuth 2.0 क्लाइंट आईडी बनाएं.
ज़्यादा जानकारी के लिए, Play ऐप्लिकेशन साइनिंग देखें.
एपीआई पासकोड की पुष्टि करने की सुविधा काम नहीं कर रही है
अगर एपीआई पासकोड की पुष्टि करने की सुविधा काम नहीं कर रही है, तो यह तरीका अपनाएं:
- पक्का करें कि आपने Google Cloud में सही प्रोजेक्ट के लिए ARCore API चालू किया है.
- अगर आपने एपीआई पासकोड से जुड़ी कोई पाबंदी चालू की हुई है, तो उसे कुछ समय के लिए बंद कर दें.
- पक्का करें कि आपके प्रोजेक्ट के क्रेडेंशियल में सूची में शामिल एपीआई पासकोड, आपके ऐप्लिकेशन से इस्तेमाल की गई एपीआई कुंजी से पूरी तरह मेल खाता हो. साथ ही, उसमें कोई खाली जगह या कोई अन्य वर्ण न हो.