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

סקירה כללית

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

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

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

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

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

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

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

  • אישור לניפוי באגים: הכלי הזה ל-Android SDK יוצר את האישור הזה באופן אוטומטי כשיוצרים build לניפוי באגים. יש להשתמש באישור הזה רק באפליקציות שבודקים. אין לנסות לפרסם אפליקציה שחתומה באמצעות אישור ניפוי באגים. אישור ניפוי הבאגים מפורט יותר במאמר כניסה במצב ניפוי באגים במסמכי התיעוד למפתחים של Android.
  • אישור גרסה: אישור ה-SDK של הכלים ל-Android יוצר את גרסת ה-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 Windows ו-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, כדי להפעיל את Fitness API ולבקש מזהה לקוח ב-OAuth 2.0.

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

קבלת מזהה לקוח

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

  1. נכנסים אל Google API Console.
  2. בוחרים פרויקט או יוצרים פרויקט חדש. משתמשים באותו פרויקט לגרסאות של האפליקציה ל-Android ול-REST.
  3. לוחצים על Continue (המשך) כדי להפעיל את Fitness API.
  4. לוחצים על עוברים אל פרטי הכניסה.
  5. לוחצים על Credentials חדשים ובוחרים באפשרות Client-ID של מזהה לקוח.
  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. לוחצים על Create (יצירה). מזהה הלקוח והסוד החדשים של Android OAuth 2.0 מופיעים ברשימת המזהים של הפרויקט. מזהה הלקוח ב-OAuth 2.0 הוא מחרוזת של תווים, בערך כך:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com