Marshmallow上的權限管理

hgel1829 8年前發布 | 8K 次閱讀 安卓開發 Android開發 移動開發

來自: https://github.com/smallSohoSolo/android-developer-blog-cn/blob/master/2016/february-01.md

Marshmallow和用戶數據

發送自 Joanna Smith,Advocate和Giles Hogben的開發者, 任職于Google隱私團隊。

Marshmallow設計了很多改變去幫助你的App去管理用戶數據,目的是讓開發者能更加輕松的做對的事,所以Android 6.0 Marshmallow我們讓你的一切在控制之中。

這篇文章強調了在你的App運行時候請求權限和硬件管理的時候如何 獲取用戶的信任 ,并且給你指明了 最好的實踐 案例去澄清你的App的目的。

權限上的改變

在Marshmallow中, 權限已經從安裝時請求移到了運行時請求 ,這在SDK23中是強制性的改變,那意味著在Android6.0中這將到所有的開發者和程序,你的App無論如何都要更新,所以你應該好好想想怎么做。

運行時權限意味著你的App現在可以在當前的上下文中請求敏感數據,這給你一個機會去解釋為什么需要這條權限

權限現在也被以群為單位組織起來,所以現在用戶可以在不理解技術術語的情況下在請求權限的時候做一個明智的決定。因為用戶有了選擇的權利,他們現在可以決定不給予一個權限,或者撤回一個以前授予的權限。所以你的App需要去考慮請求權限失敗之后的問題,還有做好在用戶拒絕你之后的交互。

標識符的改變

另一個影響用戶信任的方面就是用用戶的數據去做對的事。在Marshmallow中,我們為了引導開發者這么做關閉了許多數據的訪問權限。

最明顯的是 本地Wifi和藍牙的MAC地址將不可獲取 ,getMacAddress()函數和BluetoothAdapter.getDefaultAdapter().getAddress()函數現在都會返回02:00:00:00:00:00。

然而, Google play服務現在提供實例ID ,可以標記一個正在設備中運行的應用程序實例,實例ID可以很可靠的替換設備唯一的硬件ID,這個ID不會因為重置或者返廠而被更改。詳情查看Google開發者的這篇文章, What is Instance ID?

接下來是什么

用戶的信任度很大程度上依賴于他們感受到的和看到的,處理不當的權限和標識控制會增加用戶被追蹤的風險。并且會讓用戶感覺你的App并不關心用戶。所以為了幫助你解決這個問題,我們做了新的方案去幫助開發者讓他們的用戶感受到他們的app在做正確的事。

多么愉快的編程體驗!希望你的App會讓用戶更加開心~~

 本文由用戶 hgel1829 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!