OAuth 2.0 क्लाइंट आईडी पाना

खास जानकारी

Android के लिए Google Fit का इस्तेमाल करने के लिए, आपको Android ऐप्लिकेशन के लिए OAuth 2.0 क्लाइंट आईडी की ज़रूरत होगी.

सभी Android ऐप्लिकेशन को एक ऐसे डिजिटल सर्टिफ़िकेट से साइन किया जाता है जिसके लिए आपके पास निजी कुंजी होती है. डिजिटल सर्टिफ़िकेट के बारे में ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन पर हस्ताक्षर करने के लिए, Android गाइड देखें.

Android OAuth क्लाइंट आईडी, खास सर्टिफ़िकेट/पैकेज पेयर से जुड़े होते हैं. आपके पास चाहे कोई भी उपयोगकर्ता हो, उसे हर सर्टिफ़िकेट के लिए सिर्फ़ एक आईडी चाहिए.

अपने ऐप्लिकेशन का आईडी पाने के लिए कई चरणों की ज़रूरत होती है. इन चरणों के बारे में नीचे बताया गया है.

  1. अपने ऐप्लिकेशन के सर्टिफ़िकेट की जानकारी ढूंढें.
  2. Google API (एपीआई) कंसोल में प्रोजेक्ट बनाना या उसमें बदलाव करना.
  3. OAuth 2.0 क्लाइंट आईडी का अनुरोध करना.

अपने ऐप्लिकेशन के सर्टिफ़िकेट की जानकारी ढूंढना

एपीआई कुंजी, आपके ऐप्लिकेशन के डिजिटल सर्टिफ़िकेट के छोटे फ़ॉर्मैट पर आधारित होती है. इसे SHA-1 फ़िंगरप्रिंट कहा जाता है. अपने सर्टिफ़िकेट के लिए SHA-1 फ़िंगरप्रिंट दिखाने के लिए, सबसे पहले पक्का करें कि सही सर्टिफ़िकेट का इस्तेमाल किया जा रहा है. आपके पास दो सर्टिफ़िकेट हो सकते हैं:

  • डीबग सर्टिफ़िकेट: Android SDK टूल इस बिल्ड को अपने-आप जनरेट करते हैं. ऐसा तब किया जाता है, जब आप डीबग बिल्ड करते हैं. इस सर्टिफ़िकेट को सिर्फ़ उन ऐप्लिकेशन के साथ इस्तेमाल करें जिनकी जांच हो रही है. डीबग करने के सर्टिफ़िकेट के साथ साइन किया गया ऐप्लिकेशन पब्लिश करने की कोशिश न करें. Android डेवलपर दस्तावेज़ में, डीबग मोड में साइन इन करना सेक्शन में, डीबग सर्टिफ़िकेट के बारे में ज़्यादा जानकारी दी गई है.
  • रिलीज़ सर्टिफ़िकेट: रिलीज़ बिल्ड करते समय, Android SDK टूल यह सर्टिफ़िकेट जनरेट करते हैं. इस सर्टिफ़िकेट को keytool प्रोग्राम का इस्तेमाल करके भी जनरेट किया जा सकता है. इस सर्टिफ़िकेट का इस्तेमाल तब करें, जब आप अपना ऐप्लिकेशन दुनिया के लिए रिलीज़ करने के लिए तैयार हों.

-v पैरामीटर के साथ keytool प्रोग्राम का इस्तेमाल करके, सर्टिफ़िकेट के SHA-1 फ़िंगरप्रिंट को दिखाने के लिए यह तरीका अपनाएं. मुख्य टूल के बारे में ज़्यादा जानकारी के लिए, Oracle के दस्तावेज़ देखें.

डीबग सर्टिफ़िकेट

डीबग सर्टिफ़िकेट का फ़िंगरप्रिंट दिखाना

  1. डीबग कीस्टोर फ़ाइल ढूंढें. फ़ाइल का नाम debug.keystore है. इसे पहली बार प्रोजेक्ट बनाते समय बनाया जाता है. डिफ़ॉल्ट रूप से, इसे उसी डायरेक्ट्री में सेव किया जाता है जिसमें आपकी Android वर्चुअल डिवाइस (एवीडी) फ़ाइलें मौजूद होती हैं:

    • macOS और Linux: ~/.android/
    • Windows Vista और Windows 7: C:\Users\your_user_name\.android\
  2. SHA-1 फ़िंगरप्रिंट की सूची बनाएं:

    • Linux या macOS के लिए, टर्मिनल विंडो खोलें और ये डालें:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • Windows Vista और Windows 7 के लिए:

      keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android

आपको इससे मिलता-जुलता आउटपुट दिखेगा:

Alias name: androiddebugkey
Creation date: Jan 01, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4aa9b300
Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033
Certificate fingerprints:
     MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9
     SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75
     Signature algorithm name: SHA1withRSA
     Version: 3
रिलीज़ सर्टिफ़िकेट

रिलीज़ सर्टिफ़िकेट का फ़िंगरप्रिंट दिखाना

  1. अपनी रिलीज़ सर्टिफ़िकेट कीस्टोर फ़ाइल ढूंढें. रिलीज़ कीस्टोर के लिए कोई डिफ़ॉल्ट जगह या नाम नहीं है. अगर आप यह तय नहीं करते हैं कि ऐप्लिकेशन रिलीज़ करने के लिए आपका कौनसा ऐप्लिकेशन इस्तेमाल किया जाएगा, तो बिल्ड आपके .apk को साइन नहीं करेगा और आपको इसे पब्लिश करने से पहले साइन करना होगा. रिलीज़ सर्टिफ़िकेट के लिए, आपको सर्टिफ़िकेट के उपनाम और कीस्टोर और सर्टिफ़िकेट के पासवर्ड भी चाहिए. कीस्टोर में दी गई सभी कुंजियों के उपनामों को सूची में शामिल किया जा सकता है:

    keytool -list -keystore your_keystore_name

    your_keystore_name को पूरी तरह क्वालिफ़ाइड पाथ और कीस्टोर के नाम से बदलें. इसमें, .keystore एक्सटेंशन भी शामिल है. आपको कीस्टोर का पासवर्ड डालने के लिए कहा जाएगा. इसके बाद, keytool कीस्टोर में सभी उपनाम दिखाता है.

  2. टर्मिनल या कमांड प्रॉम्प्ट पर यह जानकारी डालें:

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    your_keystore_name को पूरी तरह क्वालिफ़ाइड पाथ और कीस्टोर के नाम से बदलें. इसमें, .keystore एक्सटेंशन भी शामिल है. your_alias_name को, उस उपनाम से बदलें जो आपने सर्टिफ़िकेट बनाते समय असाइन किया था.

आपको इससे मिलता-जुलता आउटपुट दिखेगा:

Alias name: <alias_name>
Creation date: Feb 02, 2013
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=Android Debug, O=Android, C=US
Issuer: CN=Android Debug, O=Android, C=US
Serial number: 4cc9b300
Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033
Certificate fingerprints:
    MD5:  AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9
    SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75
    Signature algorithm name: SHA1withRSA
    Version: 3

SHA1 से शुरू होने वाली लाइन में सर्टिफ़िकेट का SHA-1 फ़िंगरप्रिंट शामिल होता है. फ़िंगरप्रिंट, दो अंकों के 20 हेक्साडेसिमल नंबर का क्रम होता है जिन्हें कोलन लगाकर अलग किया जाता है.

Google API (एपीआई) कंसोल में OAuth 2.0 क्लाइंट आईडी का अनुरोध करना

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

अगर आपको इस प्रोसेस की जानकारी चाहिए और फ़िटनेस एपीआई को अपने-आप चालू करना है, तो

Client-ID पाना

इसके अलावा, Google API (एपीआई) कंसोल में फ़िटनेस एपीआई चालू करने और OAuth 2.0 क्लाइंट आईडी पाने के लिए, यह तरीका अपनाएं.

  1. Google API (एपीआई) कंसोल पर जाएं.
  2. कोई प्रोजेक्ट चुनें या नया प्रोजेक्ट बनाएं. अपने ऐप्लिकेशन के Android और REST वर्शन के लिए एक ही प्रोजेक्ट का इस्तेमाल करें.
  3. फ़िटनेस एपीआई चालू करने के लिए जारी रखें पर क्लिक करें.
  4. क्रेडेंशियल पर जाएं पर क्लिक करें.
  5. नए क्रेडेंशियल पर क्लिक करें. इसके बाद, OAuth क्लाइंट आईडी चुनें.
  6. ऐप्लिकेशन टाइप में जाकर, Android चुनें.
  7. क्लिक करने के बाद मिलने वाले डायलॉग बॉक्स में, अपने ऐप्लिकेशन का SHA-1 फ़िंगरप्रिंट और पैकेज नाम डालें. उदाहरण के लिए:

    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75

    com.example.android.fit-example

  8. बनाएं पर क्लिक करें. आपका नया Android OAuth 2.0 क्लाइंट आईडी और सीक्रेट, आपके प्रोजेक्ट के आईडी की सूची में दिखते हैं. OAuth 2.0 क्लाइंट आईडी, वर्णों की एक स्ट्रिंग होती है. यह कुछ इस तरह से होती है:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com