總覽
如要使用 Google Fit for Android,您需要 Android 應用程式的 OAuth 2.0 用戶端 ID。
所有 Android 應用程式都是以您持有私密金鑰的數位憑證進行簽署。如要進一步瞭解數位憑證,請參閱「Android 應用程式簽署指南」。
Android OAuth 用戶端 ID 會連結至特定憑證/套件組合。無論應用程式有多少使用者,每個憑證都只需要一個 ID。
要取得應用程式 ID,需要完成幾個步驟。這些步驟概述如下。
- 找出應用程式的憑證資訊。
- 在 Google API 控制台中建立或修改專案。
- 要求 OAuth 2.0 用戶端 ID。
找出應用程式的憑證資訊
API 金鑰是以應用程式數位憑證的簡短形式為基礎,稱為 SHA-1 指紋。如要顯示憑證的 SHA-1 指紋,請先確認您使用的是正確的憑證。You may have two certificates:
- 偵錯憑證:執行偵錯版本時,Android SDK 工具會自動產生這個憑證。請僅將這個憑證用於您正在測試的應用程式。 請勿嘗試發布以偵錯憑證簽署的應用程式。 如要進一步瞭解偵錯憑證,請參閱 Android 開發人員說明文件的登入偵錯模式。
- 發布憑證:Android SDK 工具會在您執行發布子版本時產生這個憑證。您也可以使用
keytool
程式產生這個憑證。當您準備好要將應用程式發布上架時,請使用這個憑證。
請按照下列步驟,使用 keytool
程式搭配 -v
參數,即可顯示憑證的 SHA-1 指紋。如要進一步瞭解 Keytool,請參閱 Oracle 說明文件。
顯示偵錯憑證指紋
找出您的偵錯 KeyStore 檔案。檔案名稱為
debug.keystore
,這是您第一次建立專案時建立的檔案。根據預設,檔案會儲存在與您的 Android 虛擬裝置 (AVD) 檔案相同的目錄中:- macOS 和 Linux:
~/.android/
- Windows Vista 和 Windows 7:
C:\Users\your_user_name\.android\
- macOS 和 Linux:
列出 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
顯示發布憑證指紋
-
找出您的發布憑證 KeyStore 檔案。發布 KeyStore 檔案並沒有預設名稱或位置。如果您在建構要發布的應用程式時未加以指定,版本會將您的
.apk
保持為未簽署狀態,而您必須先簽署才能發布應用程式。如使用發布憑證,您還需要別名和密碼,才能使用 KeyStore 和憑證。在 KeyStore 中輸入以下內容,即可列出所有金鑰的別名:keytool -list -keystore your_keystore_name
以完整的 KeyStore 路徑和名稱 (包括
.keystore
副檔名) 取代your_keystore_name
。系統會提示您輸入 KeyStore 密碼,然後keytool
就會顯示 KeyStore 中的所有別名。 -
輸入以下終端機或命令提示字元:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
以完整的 KeyStore 路徑和名稱 (包括
.keystore
副檔名) 取代your_keystore_name
。以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 用戶端 ID
請按照下列步驟在 Google API 控制台中為您的應用程式建立或修改專案、啟用 Fitness API,並要求 OAuth 2.0 用戶端 ID。
如要系統引導您完成整個程序並自動啟用 Fitness API,請按一下
或者,您也可以按照下列步驟在 Google API 控制台中啟用 Fitness API,並取得 OAuth 2.0 用戶端 ID。
- 前往 Google API 控制台。
- 請選取專案,或建立新專案。請為應用程式的 Android 和 REST 版本使用相同的專案。
- 按一下「繼續」以啟用 Fitness API。
- 按一下「前往憑證」。
- 按一下「新憑證」,然後選取「OAuth 用戶端 ID」。
- 在「應用程式類型」下方,選取「Android」。
在顯示的對話方塊中,輸入應用程式的 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
點選「建立」。新的 Android OAuth 2.0 用戶端 ID 和密鑰會顯示在專案 ID 清單中。OAuth 2.0 用戶端 ID 是字元字串,如下所示:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com