یک شناسه مشتری OAuth 2.0 دریافت کنید

بررسی اجمالی

برای استفاده از Google Fit برای Android، به شناسه مشتری OAuth 2.0 برای برنامه های Android نیاز دارید.

همه برنامه‌های اندروید با یک گواهی دیجیتال امضا می‌شوند که کلید خصوصی آن را نگه می‌دارید. برای اطلاعات بیشتر در مورد گواهی‌های دیجیتال، به راهنمای اندروید برای امضای برنامه‌های خود مراجعه کنید.

شناسه‌های سرویس گیرنده Android OAuth به جفت‌های گواهی/بسته خاص مرتبط هستند. شما فقط به یک شناسه برای هر گواهی نیاز دارید، مهم نیست چند کاربر برای برنامه دارید.

گرفتن شناسه برای برنامه شما به چندین مرحله نیاز دارد. این مراحل در زیر مشخص شده است.

  1. اطلاعات گواهی برنامه خود را پیدا کنید.
  2. پروژه ای را در Google API Console ایجاد یا تغییر دهید.
  3. شناسه مشتری OAuth 2.0 را درخواست کنید.

اطلاعات گواهی برنامه خود را پیدا کنید

کلید API مبتنی بر فرم کوتاهی از گواهی دیجیتال برنامه شما است که به عنوان اثر انگشت SHA-1 آن شناخته می‌شود. برای نمایش اثر انگشت SHA-1 برای گواهی، ابتدا مطمئن شوید که از گواهی مناسب استفاده می کنید. ممکن است دو گواهی داشته باشید:

  • گواهی اشکال‌زدایی : ابزارهای Android SDK این گواهی را به‌طور خودکار هنگام ساخت اشکال‌زدایی تولید می‌کنند. این گواهی را فقط با برنامه هایی که در حال آزمایش هستید استفاده کنید. سعی نکنید برنامه‌ای را منتشر کنید که با گواهی اشکال‌زدایی امضا شده است. گواهی اشکال زدایی با جزئیات بیشتر در ورود به حالت اشکال زدایی در اسناد برنامه نویس Android توضیح داده شده است.
  • گواهی انتشار : ابزارهای Android SDK این گواهی را هنگامی که یک نسخه نسخه را انجام می دهید، تولید می کنند. همچنین می توانید این گواهی را با استفاده از برنامه keytool ایجاد کنید. هنگامی که آماده انتشار برنامه خود در جهان هستید از این گواهی استفاده کنید.

برای نمایش اثر انگشت SHA-1 گواهی با استفاده از برنامه keytool با پارامتر -v مراحل زیر را دنبال کنید. برای اطلاعات بیشتر در مورد Keytool، به مستندات Oracle مراجعه کنید.

گواهی اشکال زدایی

نمایش اثر انگشت گواهی اشکال زدایی

  1. فایل فروشگاه کلید اشکال زدایی خود را پیدا کنید. نام فایل debug.keystore است و اولین باری که پروژه خود را می سازید ایجاد می شود. به طور پیش‌فرض، در همان فهرستی که فایل‌های دستگاه مجازی Android (AVD) شما ذخیره می‌شود:

    • macOS و Linux : ~/.android/
    • ویندوز ویستا و ویندوز 7 : C:\Users\your_user_name\.android\
  2. اثر انگشت SHA-1 را فهرست کنید:

    • برای لینوکس یا macOS، یک پنجره ترمینال را باز کنید و موارد زیر را وارد کنید:

      keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
    • برای ویندوز ویستا و ویندوز 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، از جمله پسوند .keystore جایگزین کنید. از شما خواسته می شود رمز عبور فروشگاه کلید را وارد کنید. سپس keytool تمام نام های مستعار را در keystore نمایش می دهد.

  2. موارد زیر را در ترمینال یا خط فرمان وارد کنید:

    keytool -list -v -keystore your_keystore_name -alias your_alias_name

    your_keystore_name با مسیر کاملاً واجد شرایط و نام keystore، از جمله پسوند .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 عدد هگزادسیمال دو رقمی است که با دو نقطه از هم جدا شده اند.

شناسه مشتری OAuth 2.0 را در کنسول API Google درخواست کنید

این مراحل را برای ایجاد یا تغییر پروژه ای برای برنامه خود در Google API Console دنبال کنید، Fitness API را فعال کنید و یک شناسه مشتری OAuth 2.0 درخواست کنید.

اگر می‌خواهید در این فرآیند راهنمایی شوید و Fitness API را به طور خودکار فعال کنید، کلیک کنید

شناسه مشتری دریافت کنید

همچنین، برای فعال کردن Fitness API در Google API Console و دریافت شناسه مشتری OAuth 2.0، این مراحل را دنبال کنید.

  1. به کنسول API Google بروید.
  2. یک پروژه را انتخاب کنید یا یک پروژه جدید ایجاد کنید. از همین پروژه برای نسخه های Android و REST برنامه خود استفاده کنید.
  3. برای فعال کردن Fitness API روی Continue کلیک کنید.
  4. برو به اعتبارنامه کلیک کنید.
  5. روی New credentials کلیک کنید، سپس OAuth Client ID را انتخاب کنید.
  6. در قسمت Application type 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 Client ID رشته ای از کاراکترها است، چیزی شبیه به این:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com