做者:html
上期 #11WeeksOfAndroid 系列文章中內容咱們介紹了 聯繫人和身份,本期咱們將聚焦 隱私和安全 。咱們將爲你們陸續帶來 #11WeeksOfAndroid 內容,深刻探討 Android 的各個關鍵技術點,您不會錯過任何重要內容。android
隱私和安全是咱們設計 Android 的核心,隨着每個新版本的發佈,咱們都會加大這一方面的投入。Android 11 也持續在這些領域取得重要進展,本文中咱們將分享有關 Android 隱私和安全的一系列更新和資源。但首先,讓咱們快速瀏覽一下 Android 11 中那些最爲重要的更新,用以保護用戶隱私並提升平臺的安全性。segmentfault
Android 11 將爲用戶提供對敏感權限的更多控制權。在 Android 11 的整個開發過程當中,咱們與開發者社區開展了密切的合做,在設計隱私相關的功能時保持了必定的平衡: 增進用戶對隱私的控制權,同時儘量減小對開發者的影響。讓咱們探索一下其中的部分功能:安全
在 Android 10 中,咱們引入了精細的位置權限控制,讓用戶可以限制應用僅在使用時 (即僅在應用處於前臺時) 訪問位置信息。當系統顯示新的運行時權限選項時,超過 50% 的狀況下用戶會選擇僅容許應用在前臺時訪問位置。這一點證實用戶確實想要更精細的權限控制。所以在 Android 11 中,咱們引入了 單次受權,經過該功能,用戶可受權應用訪問設備的麥克風、攝像頭或位置信息,但該訪問權限僅在受權當時有效。做爲應用開發者,您無需對應用進行任何更改即可使其支持一次性權限,而且用戶下次使用該應用時,應用能夠再次請求權限。如需詳細瞭解如何利用這些新更改構建隱私友好型應用,請查看 相關技術視頻。框架
在 Android 10 中,咱們添加了後臺位置使用狀況提醒,以便用戶按期查看應用使用此敏感數據的狀況。用戶收到並處理提醒時,在超過 75% 的狀況下會下降應用的位置權限級別,或拒絕授予權限。此外,絕大部分要求在後臺訪問位置的應用用例都是不正當的。ide
在 Android 11 中,用戶將沒法再經過運行時提示授予後臺位置權限,相反,該權限將須要經過更審慎的操做來授予。若是您的應用須要在後臺訪問位置,系統將確保該應用首先請求在前臺訪問位置。而後,該應用會單獨向系統發送權限請求,隨後系統會將用戶帶到 "設置" 中以完成權限授予,從而升級該應用權限,使其可以在後臺訪問位置。模塊化
咱們曾在 2 月發佈《更加安全透明的用戶位置訪問》,即 Google Play 開發者須要得到批准,其應用才能在後臺訪問用戶位置,以免位置數據被濫用。如今咱們爲開發者提供更長的時間來作出修改,在 2021 年以前咱們不會強行要求既有的應用遵照本政策。請查看指導視頻,找到您的代碼中可能在後臺使用位置的部分。post
大多數用戶傾向於在其設備上下載並安裝 60 多個應用,但常用的只有總數的三分之一。若是用戶很長一段時間未使用某適配 Android 11 的應用,系統將 "自動重置" 全部與該應用關聯的已授予運行時權限,並通知用戶。用戶下次使用該應用時,應用能夠再次請求權限。若是您的應用有正當的理由,須要保留權限,則能夠提示用戶在 "設置" 中關閉該功能。網站
即便在用戶已向開發者授予權限的狀況下,Android 仍鼓勵開發者限制對敏感數據的訪問。在 Android 11 中,開發者能夠經過 新 API,更清楚地瞭解本身的應用對私有數據和受保護數據的使用狀況。使用該 API 後,應用能夠跟蹤系統什麼時候記錄到應用對私人數據進行了訪問。google
在 Android 10 中,咱們引入了 分區存儲,該功能爲外部存儲提供了篩選視圖,便於用戶訪問應用特定的文件和媒體集合。此更改經過用多種方式限制對共享的存儲空間的普遍訪問,從而保護用戶隱私,包括將存儲權限更改成僅容許讀取訪問照片、視頻和音樂,以及改進應用的存儲屬性。自 Android 10 推出分區存儲以來,爲幫助開發者使用這一功能,咱們結合衆多開發者的反饋,作出許多改進,包括: 更新權限界面以加強用戶體驗、添加對媒體的直接文件路徑訪問以改善與現有媒體庫的兼容性、更新用於修改媒體的 API、添加 管理外部存儲 權限 (Manage External Storage) 以容許須要普遍文件訪問的特定用例,以及添加受保護的外部應用目錄。在 Android 11 中,全部目標 API 級別 (Target SDK Level) 爲 30 的應用都將強制使用分區存儲功能。請 觀看下面的視頻 瞭解詳情,如需進一步瞭解詳細內容,請查看 開發者文檔。
Google Play 系統更新最初做爲 Project Mainline 的一部分隨 Android 10 一塊兒推出。這些更新的主要優點在於能夠提升 Android 內部平臺子系統的模塊化程度和精細程度,這樣一來用戶無需設備廠商提供全量系統更新,即可直接經過 Google Play 更新核心操做系統組件。今年早些時候,在 Project Mainline 幫助下,咱們得以快速修復媒體解碼子系統中的一個關鍵漏洞。而 Android 11 爲其添加了新的模塊,同時保持了現有模塊的安全屬性。例如,可提供密碼學原語的 Conscrypt 模塊,在 Android 11 中一樣可以經過 FIPS 驗證。
開發者如今可使用 BiometricPrompt API,來指定應用解鎖或訪問應用中敏感部分所需的生物識別身份驗證器的強度。咱們正計劃將此 API 添加到 Jetpack 生物識別庫中,以便實現向後兼容,並將隨着這項工做的進行分享更多更新。
此 API 將解鎖新的用例,例如汽車駕駛證、居民身份證和數字身份標識。咱們的安全團隊正在努力完善此 API,經過使用安全硬件來保護和控制對數據的訪問,從而確保身份憑據信息可以安全存儲。與傳統的紙質文檔相比,該 API 可 加強用戶的隱私。咱們正在與各種政府機構和行業夥伴開展合做,以確保可以在 Android 11 上實現此類數字化優先的身份體驗。
感謝各位開發者在咱們不斷提升隱私性和安全性的過程當中所展示的靈活變通能力,以及提供的有效反饋。您能夠訪問 Android 11 Beta 版開發者網站,瞭解更多功能。您還能夠了解有關 隱私 和 安全 的通用最佳作法。
您能夠查看 #11WeeksOfAndroid 視頻內容的 播放列表,或前往官方網站詳細瞭解更多主題。咱們將持續聚焦新的方向。請持續關注,感謝您與咱們相伴前行!