קבלת מזהה לקוח ב-OAuth 2.0

סקירה כללית

כדי להשתמש ב-Google Fit ל-Android, נדרש מזהה לקוח OAuth 2.0 עבור אפליקציות ל-Android.

כל האפליקציות ל-Android חתומות באמצעות אישור דיגיטלי שעבורו מפתח פרטי. כדאי לעיין במדריך ל-Android לחתימה על אפליקציות לקבלת מידע נוסף על תעודות דיגיטליות.

מזהי לקוח של OAuth ב-Android מקושרים לצמדים ספציפיים של אישורים/חבילות. שלך צריך רק מזהה אחד לכל אישור, לא משנה כמה משתמשים יש לכם את האפליקציה.

כדי לקבל מזהה לאפליקציה, צריך לבצע כמה שלבים. השלבים האלה מפורטים שלמטה.

  1. מאתרים את פרטי האישור של האפליקציה.
  2. יוצרים או משנים פרויקט במסוף Google API.
  3. מבקשים מזהה לקוח ב-OAuth 2.0.

איתור פרטי האישור של האפליקציה

מפתח ה-API מבוסס על צורה קצרה של האישור הדיגיטלי של האפליקציה, נקרא טביעת אצבע SHA-1. כדי להציג את ה-SHA-1 טביעת אצבע לאישור, תחילה יש לוודא שמשתמשים אישור. יכול להיות שיש לכם שני אישורים:

  • אישור לניפוי באגים: כלי Android SDK יוצרים האישור הזה באופן אוטומטי כשמבצעים גרסת build לניפוי באגים. שימוש רק בהצעה הזו אישורים באפליקציות שאתם בודקים. אין לנסות לפרסם אפליקציה החתומה באמצעות אישור לניפוי באגים. האישור על תוצאות ניפוי הבאגים מתואר בפירוט רב יותר במאמר חתימה במצב ניפוי באגים בתיעוד למפתחים של Android.
  • אישור גרסה: הכלים ל-Android SDK מייצרים את האישור הזה כשמבצעים build של גרסה. אפשר גם ליצור את באמצעות התוכנה keytool. אפשר להשתמש באישור הזה כאשר אתם מוכנים להפיץ את האפליקציה שלכם לעולם.

יש לפעול לפי השלבים הבאים כדי להציג טביעת אצבע SHA-1 של אישור באמצעות התוכנית keytool עם הפרמטר -v. לקבלת מידע נוסף מידע על 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. מאתרים את קובץ מאגר המפתחות של אישור ההפצה. אין ברירת מחדל המיקום או השם של מאגר המפתחות של הגרסה. אם לא תציינו תאריך בזמן שאתם יוצרים את האפליקציה שלכם להפצה, ה-build ישאיר החתימה של .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 ספרות הקסדצימליות מספרים שמופרדים בנקודתיים.

בקשת מזהה לקוח OAuth 2.0 במסוף Google API

כדי ליצור או לשנות פרויקט לאפליקציה שלכם, צריך לבצע את השלבים הבאים: Google API Console, מפעילים את Fitbit API ומבקשים מזהה לקוח OAuth 2.0.

אם ברצונך לקבל הדרכה בתהליך ולהפעיל את כושר API באופן אוטומטי, לחיצה

אחזור Client-ID

לחלופין, אפשר לבצע את השלבים הבאים כדי להפעיל את Fitness API Google API Console וקבל מזהה לקוח OAuth 2.0.

  1. עוברים אל מסוף Google API.
  2. בוחרים פרויקט או יוצרים פרויקט חדש. שימוש באותו פרויקט בשביל Android ו-REST של האפליקציה שלך.
  3. לוחצים על המשך כדי להפעיל את Fitbit API.
  4. לוחצים על Go to credentials (מעבר אל פרטי הכניסה).
  5. לוחצים על New credentials (פרטי כניסה חדשים) ובוחרים באפשרות OAuth Client ID (מזהה לקוח 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