隱私權指南

我們在開發 Android 時,不僅著重於協助使用者善用各項創新功能,也持續將維護使用者的安全性和隱私權當做首要任務。請使用本頁面的檢查清單,做為常見的隱私權指南和最佳做法來源。

本頁說明的一些最佳做法也會列在一覽表中。

檢查清單:盡可能減少權限要求

請秉持資訊公開的原則,並為應用程式使用者提供控制選項,以獲得使用者的信任。

  • 要求功能所需的最低權限:為應用程式進行重大變更時,請參閱「要求的權限」,確認應用程式功能仍需要用到這些權限。
    • Android 常會在新版本中導入重視隱私權的資料存取方式,這樣一來,應用程式不需要權限也能取得資料。詳情請參閱「評估應用程式是否需要宣告權限」。
    • 如果您透過 Google Play 發布應用程式,則可以使用 Android Vitals 取得拒絕授權的應用程式使用者比例。如果大多數使用者常拒絕授予必要權限,請根據這項資料重新評估此類功能的設計。
  • 解釋應用程式中的功能為何需要特定權限:請按照建議流程操作。只在必要時才提出權限要求,而不是一啟動應用程式就要求權限,使用者就會比較清楚應用程式為何需要權限。
  • 請注意,使用者或系統可能會多次拒絕授予權限:Android 尊重使用者的選擇,因此會忽略同一個應用程式提出的權限要求。
  • 在沒有權限的情況下優雅降級:當使用者拒絕或撤銷授權時,應用程式應該優雅降級,例如在使用者未授予麥克風權限時停用語音輸入功能。
  • 移除不必要的存取權:更新應用程式時,請針對應用程式不再需要的執行階段權限,移除應用程式的存取權
  • 瞭解 SDK 或程式庫需要的權限:如果您使用的 SDK 或程式庫會存取受危險權限保護的資料,使用者通常會認為是您的應用程式需要相應權限。請務必瞭解 SDK 需要哪些權限及其原因

檢查清單:盡可能避免使用位置資料

使用者的位置資料屬於私密資訊,請盡量避免使用。如果您必須使用定位服務,請採取適當措施,盡可能避免收集位置資料。請使用下列檢查清單,讓應用程式盡量不使用位置資料。

  • 在沒有位置資料的情況下優雅降級:在 Android 10 (API 級別 29) 以上版本中,使用者可以將應用程式限制為只在使用期間才能要求位置存取權。設計應用程式時,要讓應用程式能夠在沒有「一律允許」位置存取權時優雅降級。
  • 使用附近的藍牙或 Wi-Fi 裝置:如果應用程式需要使用藍牙或 Wi-Fi,將使用者的裝置與鄰近裝置配對,請使用不需要位置存取權的隨附裝置管理工具。進一步瞭解藍牙Wi-Fi 權限。
  • 盡可能使用概略定位精確度:查看應用程式所需的位置精細程度。只要取得概略的位置存取權,就足以達成大部分的位置資訊相關用途。
  • 必要時才在背景存取位置資訊:如果應用程式需要背景位置資訊 (例如使用地理圍欄功能),請讓使用者明確知道應用程式在背景存取這項資訊。進一步瞭解使用背景位置資訊的注意事項
  • 在使用者看得到應用程式時存取位置資料:這可讓使用者進一步瞭解應用程式要求存取位置資訊的原因。
  • 請勿從背景啟動前景服務:建議您改為透過通知啟動應用程式,然後在應用程式 UI 處於可見狀態時執行位置資訊程式碼。如果應用程式必須保留位置存取權,才能在使用者退出應用程式的 UI 後,繼續執行使用者啟動的工作,請先啟動前景服務再進入背景。

檢查清單:安全地處理資料

注意:如要進一步瞭解哪些資料屬於私密資料,請參閱 Google Play 開發人員政策中心的使用者資料文章頁面。

請以公開透明且安全的方式處理私密資料。建議您使用下列檢查清單做為指南,在應用程式中以更安全的方式處理使用者資料。

  • 稽核資料存取權:在 Android 11 (API 級別 30) 以上版本中,執行資料存取稽核,瞭解您的應用程式及其依附元件如何存取使用者的私人資料,並取得深入分析結果,更輕鬆地找出非預期的資料存取作業。

  • 宣告套件瀏覽權限需求:如果應用程式指定 Android 11 以上版本,根據預設,您的應用程式不具備特定應用程式的瀏覽權限。請參閱這篇文章,瞭解如何讓您的應用程式取得其他應用程式的瀏覽權限。

  • 支援限定範圍儲存空間:為了讓使用者進一步控管檔案,並避免檔案過於散亂,若應用程式指定 Android 10 (API 級別 29) 以上版本,會自動取得限定範圍外部儲存空間的存取權,或稱為限定範圍儲存空間。這類應用程式只能存取自行建立的目錄和媒體。瞭解如何遷移至限定範圍儲存空間

  • 使用可由使用者重設的 ID:為了保護使用者的隱私權,請使用符合您的應用程式用途且最嚴格的 ID (請參閱這份文件中的可重設 ID 檢查清單)。

  • 提供醒目揭露事項與同意聲明:遵循 Google Play 使用者資料政策最佳做法,向使用者提供醒目揭露事項和同意聲明要求。

  • 聲明應用程式的資料使用行為:妥善填寫 Google Play 管理中心資料的安全性表單,說明應用程式會收集與分享哪些類型的使用者資料。

  • 將私密資料安全地傳送至其他應用程式:使用明確意圖,將私密資料傳送至其他應用程式。請授予一次性資料存取權,進一步限制其他應用程式的存取權。

  • 請勿在 Logcat 訊息或記錄檔中加入私密資料:瞭解詳情

檢查清單:使用可重設的 ID

請尊重使用者的隱私權,並使用可重設的 ID。詳情請參閱「專屬 ID 的最佳做法」。

檢查清單:支援面向使用者的隱私權功能

請以公開透明且安全的方式處理私密資料。請使用下列檢查清單做為指南,確保應用程式能安全地處理使用者資料。

  • 提供存取私密資訊的理由:在 Android 12 (API 級別 31) 以上版本,使用者可以在系統設定中查看隱私資訊主頁,詳細瞭解應用程式存取使用者位置、麥克風與相機資訊的時間點。進一步瞭解如何將這份說明提供給使用者

  • 提示使用者解除應用程式休眠狀態:如果使用者連續數個月未使用指定 Android 11 (API 級別 30) 以上版本的應用程式,系統會該應用程式設為休眠狀態。如想瞭解應用程式休眠狀態,以及如何引導使用者解除該狀態,請參閱這篇文章

  • 將私密資料安全地傳送至其他應用程式:如需將私密資料傳送至其他應用程式,請使用明確意圖,並授予一次性資料存取權,進一步限制其他應用程式存取資料。

  • 以視覺化方式說明應用程式正在擷取音訊或圖像:即使應用程式在前景運作,也要顯示即時指標,讓使用者瞭解應用程式正在使用麥克風或相機擷取內容。請注意,Android 9 (API 級別 28) 以上版本不允許應用程式在背景運作時存取麥克風或相機

隱私權一覽表

隱私權一覽表可讓您快速瞭解 Android 中一些最實用的隱私權 API,以及設計應用程式時應特別留意的最佳做法。

這份一覽表也能以 PDF 格式下載: