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

खास जानकारी

Android ऐप्लिकेशन के लिए Google Fit का इस्तेमाल करने के लिए, आपको 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 फ़िंगरप्रिंट को दिखाने के लिए, यह तरीका अपनाएं. Keytool के बारे में ज़्यादा जानकारी के लिए, Oracle दस्तावेज़ देखें.

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

डीबग सर्टिफ़िकेट का फ़िंगरप्रिंट दिखाया जा रहा है

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

    • 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 कंसोल में अपने ऐप्लिकेशन के लिए प्रोजेक्ट बनाने या उसमें बदलाव करने के लिए, यह तरीका अपनाएं. इसके बाद, Fitness API चालू करें, और OAuth 2.0 क्लाइंट आईडी का अनुरोध करें.

अगर आप इस प्रक्रिया के बारे में निर्देश पाना चाहते हैं और अपने-आप Fitness API को चालू करना चाहते हैं, तो क्लिक करें

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

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

  1. Google API (एपीआई) कंसोल पर जाएं.
  2. कोई प्रोजेक्ट चुनें या नया प्रोजेक्ट बनाएं. अपने ऐप्लिकेशन के Android और REST वर्शन के लिए एक ही प्रोजेक्ट का इस्तेमाल करें.
  3. Fitness API को चालू करने के लिए जारी रखें पर क्लिक करें.
  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