使用 Play 應用程式簽署功能

使用 Play 應用程式簽署功能時,Google 會為您管理及保護應用程式的簽署金鑰,並使用該金鑰簽署從您應用程式套件產生的最佳化發行 APK。Play 應用程式簽署功能會將您的應用程式簽署金鑰儲存在 Google 的安全基礎架構上,並提供提升安全性的升級選項。
 

如要使用 Play 應用程式簽署功能,您必須是帳戶擁有者,或是有權發布正式版、排除特定裝置及使用這項功能的使用者,且須接受《Play 應用程式簽署服務條款》。

運作方式

使用 Play 應用程式簽署功能時,您的金鑰會存放在 Google 用來儲存自身金鑰的安全基礎架構中,受到 Google 金鑰管理服務的保護。如要進一步瞭解 Google 的基礎架構,請參閱《Google Cloud 安全性白皮書》。

Android 應用程式會以私密金鑰簽署。為了確保應用程式更新值得信任,每組私密金鑰都有相關聯的公用憑證,讓裝置和服務驗證應用程式更新是否來自相同來源。更新檔的簽名必須和安裝版應用程式的簽名相同,裝置才會接受更新。如果讓 Google 來管理您的應用程式簽署金鑰,這個驗證程序會更加安全。

注意:對於在 2021 年 8 月之前建立的應用程式,您還是可以上傳 APK 並自行管理金鑰,既不必使用 Play 應用程式簽署功能,也不必採用 Android App Bundle 格式發布應用程式。但在這種情況下,如果 KeyStore 遺失或遭到盜用,您將無法更新應用程式,必須改用新的套件名稱重新發布應用程式。有鑑於此,Play 會建議開發人員為這些應用程式採用 Play 應用程式簽署功能,並且改用應用程式套件。

設定及管理 Play 應用程式簽署功能

如果您的應用程式尚未使用 Play 應用程式簽署功能,請按照下方說明操作。

步驟 1:建立上傳金鑰

  1. 按照操作說明建立上傳金鑰。
  2. 使用上傳金鑰簽署應用程式套件。

步驟 2:備妥版本

  1. 按照操作說明準備及推出版本
  2. 選取測試群組後,「應用程式完整性」部分就會顯示應用程式的 Play 應用程式簽署狀態。
  3. 如要使用 Google 產生的應用程式簽署金鑰繼續作業,請上傳您的應用程式套件。您也可以選取「變更應用程式簽署金鑰」,然後使用下列選項:
    • 使用 Google 產生的應用程式簽署金鑰:超過 90% 新應用程式都使用 Google 產生的應用程式簽署金鑰。使用 Google 產生的金鑰可以避免金鑰遺失或遭到盜用 (金鑰無法下載)。如果選擇這個選項,即可從應用程式套件探索工具下載利用 Google 產生的金鑰所簽署的發行 APK,並在其他管道發行這個 APK;您也可以針對在其他管道發行的 APK 使用不同金鑰。
    • 使用其他應用程式簽署金鑰:選擇應用程式簽署金鑰後,您可以將同一組金鑰用於開發人員帳戶中的其他應用程式,或是在本機保留應用程式簽署金鑰的副本,讓相關作業更有彈性。舉例來說,您可能因為某些裝置已預先安裝您的應用程式,所以已經有確定的金鑰。如果將金鑰保留在 Google 伺服器以外的地方,萬一本機副本外洩,就可能增加風險。您可以參考下列選項,瞭解如何使用其他金鑰:
  4. 依照其餘指示進行準備作業及推出版本

注意:您必須接受《服務條款》並選擇加入應用程式簽署計畫,才能繼續操作。

步驟 3:向 API 供應商註冊您的應用程式簽署金鑰

如果您的應用程式使用了任何 API,您通常需要為 API 註冊應用程式簽署金鑰,以便使用憑證指紋進行驗證。尋找憑證的方法如下:

  1. 開啟 Play 管理中心,然後前往「Play 應用程式簽署頁面 (依序點選「測試及發布 」>「設定」>「應用程式簽署」)。
    • 提示:您也可以透過「應用程式完整性頁面 (依序點選「測試及發布 」>「應用程式完整性」) 存取這個頁面,其中包含完整性和簽署服務,有助於確保使用者在應用程式和遊戲中獲得您希望提供的體驗。
  2. 捲動至「應用程式簽署金鑰憑證」部分,然後複製您應用程式簽署憑證的指紋 (MD5、SHA-1 及 SHA-256)。
    • 如果 API 供應商需要不同類型的指紋,您也可以下載 .der 格式的原始憑證,然後使用 API 供應商要求的轉換工具來轉換這個憑證的格式。

建立上傳金鑰及更新 KeyStore

為了提升安全性,建議您使用新的上傳金鑰來簽署應用程式,不要使用應用程式簽署金鑰。

您可以在選擇採用 Play 應用程式簽署功能時建立上傳金鑰,或是日後再前往「Play 應用程式簽署頁面 (依序點選「測試及發布 」>「設定」>「應用程式簽署」) 建立上傳金鑰。

建立上傳金鑰的方法如下:

  1. 按照 Android 開發人員網站的說明操作,將您的金鑰存放在安全的地方。
  2. 為新的上傳金鑰匯出憑證 (PEM 格式)。接著,替換下列以底線標示的引數:
    • $ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem
  3. 發布過程中如果出現要求註冊的提示,請上傳您的憑證,並向 Google 進行註冊。

如果您使用上傳金鑰:

  • 上傳金鑰只會在 Google 註冊,目的是用來驗證應用程式作者的身分。
  • 系統會先從您上傳的 APK 中移除您的簽名,再將 APK 提供給使用者。

升級應用程式簽署金鑰

本節涵蓋升級應用程式簽署金鑰的相關操作說明。如果上傳金鑰遺失,您不需要要求升級金鑰。請改為參閱本頁底部「上傳金鑰遺失或遭到盜用?」一節。

在某些情況下,您可以要求升級應用程式簽署金鑰。

要求升級應用程式簽署金鑰的常見原因如下:

  • 您需要使用經過更嚴格加密的金鑰。
  • 您的應用程式簽署金鑰遭到盜用。

重要事項:金鑰升級功能只支援使用應用程式套件的應用程式。

透過 Play 管理中心要求升級金鑰前,請先詳閱下方「提出金鑰升級要求前的重要注意事項」一節。您也可以接著展開下方其他章節,進一步瞭解如何要求升級金鑰。

最佳做法

  • 如果您同時也在 Google Play 以外的地方發行應用程式 (或是未來有這方面的計畫) 並想使用同一組簽署金鑰,有兩種方式可供選擇:
    • 讓 Google 產生金鑰 (建議做法),然後從應用程式套件探索工具下載經過簽署的通用 APK,發行在 Google Play 以外的地方。
    • 您也可以產生要用於所有應用程式商店的應用程式簽署金鑰,並在設定 Play 應用程式簽署功能時將金鑰副本傳送給 Google。
  • 為了保護您的帳戶,請為所有能夠存取 Play 管理中心的帳戶啟用兩步驟驗證功能
  • 將應用程式套件發布至測試群組後,您可以前往應用程式套件探索工具存取 Google 從您應用程式套件所產生的可安裝 APK。您可以執行下列作業:
    • 複製並分享內部應用程式分享連結;只要輕觸該連結,即可測試 Google Play 會在不同裝置上安裝應用程式套件的哪些內容。
    • 下載經簽署的通用 APK。這個 APK 是以 Google 保存的應用程式簽署金鑰進行簽署,凡是應用程式支援的裝置皆可安裝。
    • 下載含有特定裝置所有專屬 APK 的 ZIP 封存檔。這些 APK 是以 Google 保存的應用程式簽署金鑰進行簽署。您可以使用 adb install-multiple *.apk 指令,在裝置上安裝這個 ZIP 封存檔中的 APK。
  • 為了提升安全性,請另外產生與應用程式簽署金鑰不同的上傳金鑰。
  • 如果您使用了任何 Google API,建議您前往 Google Cloud 控制台,為您的應用程式註冊上傳金鑰和應用程式簽署金鑰憑證。
  • 如果您使用的是 Android 應用程式連結,請務必更新網站上相應 Digital Asset Links JSON 檔案中的金鑰。

上傳金鑰遺失或遭到盜用?

如果私密上傳金鑰不慎遺失或遭到盜用,您可以建立新的金鑰,然後請開發人員帳戶擁有者在 Play 管理中心啟動金鑰重設程序。

Google 支援團隊註冊新的上傳金鑰後,帳戶擁有者和全域管理員就會在收件匣中收到訊息,以及一封含有更多資訊的電子郵件。接著,您就可以更新 KeyStore,並向 API 供應商註冊金鑰。

帳戶擁有者也可以在 Play 管理中心取消重設要求。

重要事項:重設上傳金鑰並不會影響 Google Play 在將 APK 提供給使用者前,用於重新簽署 APK 的應用程式簽署金鑰。

APK 簽署配置 v4

搭載 Android 11 以上版本的裝置均支援新的 APK 簽署配置 v4。Play 應用程式簽署功能會將 v4 簽署功能用於符合資格的應用程式,讓這些應用程式可以存取在新款裝置上推出的最佳化發行功能。開發人員無須對此採取任何因應措施,v4 簽署功能的使用者也不會受到影響。

相關內容

這對您有幫助嗎?

我們應如何改進呢?
10114694346821087413
true
搜尋說明中心
true
true
true
true
true
92637
false
false
false
搜尋
清除搜尋內容
關閉搜尋
主選單