Android Q 隱私權變更:應用作用域和媒體作用域存儲空間

為了讓用戶更好地控制自己的文件,并限制文件混亂情況添诉,Android Q 更改了應用訪問設備外部存儲空間中文件的方式嬉探。Android Q 用更精細的媒體特定權限替換了 READ_EXTERNAL_STORAGE 和 WRITE_EXTERNAL_STORAGE 權限,并且無需特定權限霸奕,應用即可訪問自己在外部存儲設備上的文件帮毁。這些變更會影響您的應用在外部存儲設備中保存和訪問文件的方式实苞。

本指南介紹了如何更新應用,以使其可以繼續(xù)共享烈疚、訪問和更新保存在外部存儲設備上的文件黔牵,還提供了兼容性注意事項,并說明了如何激活此行為變更爷肝。

針對應用私有文件的隔離存儲沙盒

Android Q 在外部存儲設備中為每個應用提供了一個“隔離存儲沙盒”(例如 /sdcard)猾浦。任何其他應用都無法直接訪問您應用的沙盒文件陆错。由于文件是您應用的私有文件,因此您不再需要任何權限即可在外部存儲設備中訪問和保存自己的文件金赦。此變更可讓您更輕松地保證用戶文件的隱私性音瓷,并有助于減少應用所需的權限數(shù)量。

如果用戶卸載了您的應用夹抗,系統(tǒng)就會清理隔離存儲沙盒中的文件

在外部存儲設備中存儲文件的最佳位置是Context.getExternalFilesDir()返回的位置绳慎,因為此位置的行為方式在所有 Android 版本中都保持一致。使用此方法時漠烧,請在媒體環(huán)境中傳遞與您要創(chuàng)建或打開的文件類型對應的文件杏愤。例如,要訪問或保存應用私有圖片已脓,請調用 Context.getExternalFilesDir(Environment.DIRECTORY_PICTURES)声邦。

媒體文件的共享集合

應用創(chuàng)建了屬于相應用戶的文件,并且希望在卸載該應用時保留此用戶摆舟,則將這些文件保存到某個通用媒體集合(也稱為“共享集合”)中。共享集合包括:照片和視頻邓了、音樂和下載內容

查看其他應用的文件所需的權限
您的應用無需請求任何權限即可在這些共享集合中創(chuàng)建和修改自己的文件恨诱。但是,如果您的應用需要創(chuàng)建和修改其他應用已創(chuàng)建的文件骗炉,則必須先請求相應的權限:

訪問照片和視頻共享集合中其他應用的文件時照宝,需要READ_MEDIA_IMAGESREAD_MEDIA_VIDEO權限(具體取決于您的應用需要訪問的文件類型)。

訪問音樂共享集合中其他應用的文件時句葵,需要 READ_MEDIA_AUDIO 權限厕鹃。

訪問共享集合

在請求必要的權限后,您的應用會使用 MediaStore API 訪問這些集合:

對于照片和視頻共享集合乍丈,請使用 MediaStore.Images 或 MediaStore.Video剂碴。
對于音樂共享集合,請使用 MediaStore.Audio轻专。
對于下載內容共享集合忆矛,請使用 MediaStore.Downloads。

對于 Android Q 上新安裝的應用请垛,對 getExternalStoragePublicDirectory() 的調用僅會提供對應用存儲在其隔離存儲沙盒中的文件的訪問權限催训。要始終擁有對其他應用的文件的訪問權限,請更新應用的邏輯以改用 MediaStore宗收。

保留您的應用在共享集合中的文件

默認情況下漫拭,當用戶卸載您的應用時,Android Q 會清理您保存到沙盒中的文件混稽。要在卸載應用時保留這些文件采驻,請使用存儲訪問框架审胚,或將文件保存到共享集合中。

要保留共享集合中的文件挑宠,請在相關的 MediaStore 集合中新插入一行菲盾,并用以下方法填充此行對應的列:

  • 至少應為 DISPLAY_NAMEMIME_TYPE 列提供值。
  • (可選)您可以使用 PRIMARY_DIRECTORYSECONDARY_DIRECTORY 列來影響文件在磁盤上的存儲位置各淀。
  • 保留 DATA 列不定義懒鉴。這樣一來,平臺便可以靈活地將文件保留在沙盒之外碎浇。

插入此行后临谱,您可以使用 ContentResolver.openFileDescriptor() 之類的 API 讀取新建文件的數(shù)據(jù)或向其中寫入數(shù)據(jù)。

但是奴璃,如果用戶稍后重新安裝了您的應用悉默,該應用將無法訪問這些文件,除非它執(zhí)行以下操作之一:

  • 請求對集合的相應權限苟穆。
  • 從存儲訪問框架向用戶發(fā)送請求抄课。

這種情況類似于一個應用嘗試訪問另一個應用的文件的情況

照片的特別注意事項

Android Q 新增了多項增強功能,讓用戶可以更好地控制在外部存儲設備中訪問照片的方式雳旅。

訪問照片中的位置信息
一些照片在其 Exif 元數(shù)據(jù)中包含位置信息跟磨,以便用戶查看照片的拍攝地點。由于此位置信息很敏感攒盈,因此默認情況下 Android Q 會對該信息進行遮蓋

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末抵拘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子型豁,更是在濱河造成了極大的恐慌僵蛛,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件迎变,死亡現(xiàn)場離奇詭異充尉,居然都是意外死亡,警方通過查閱死者的電腦和手機衣形,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門喉酌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人泵喘,你說我怎么就攤上這事泪电。” “怎么了纪铺?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵相速,是天一觀的道長。 經(jīng)常有香客問我鲜锚,道長突诬,這世上最難降的妖魔是什么苫拍? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮旺隙,結果婚禮上绒极,老公的妹妹穿的比我還像新娘。我一直安慰自己蔬捷,他們只是感情好垄提,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著周拐,像睡著了一般铡俐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上妥粟,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天审丘,我揣著相機與錄音,去河邊找鬼勾给。 笑死滩报,一個胖子當著我的面吹牛,可吹牛的內容都是我干的播急。 我是一名探鬼主播露泊,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼旅择!你這毒婦竟也來了?” 一聲冷哼從身側響起侣姆,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤生真,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后捺宗,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體柱蟀,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年蚜厉,在試婚紗的時候發(fā)現(xiàn)自己被綠了长已。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡昼牛,死狀恐怖术瓮,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情贰健,我是刑警寧澤胞四,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站伶椿,受9級特大地震影響辜伟,放射性物質發(fā)生泄漏氓侧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一导狡、第九天 我趴在偏房一處隱蔽的房頂上張望约巷。 院中可真熱鬧,春花似錦旱捧、人聲如沸独郎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽囚聚。三九已至,卻和暖如春标锄,著一層夾襖步出監(jiān)牢的瞬間顽铸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工料皇, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留谓松,地道東北人。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓践剂,卻偏偏與公主長得像鬼譬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子逊脯,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內容

  • 引言 轉自 Application developer best practies优质。部分內容有編輯。 正文 該文檔...
    碳烤魚8912閱讀 983評論 0 1
  • File對象適用于從頭到尾讀取或寫入大量數(shù)據(jù)而不會跳過军洼。 例如巩螃,它適用于圖像文件或通過網(wǎng)絡交換的任何內容。保存文件...
    鹿小純0831閱讀 871評論 0 0
  • Android 操作系統(tǒng)內置了安全功能匕争,可顯著降低應用出現(xiàn)安全問題的頻率及其造成的影響避乏。系統(tǒng)經(jīng)過精心設計,您在通常...
    UP7CR閱讀 1,556評論 0 3
  • 李希容閱讀 100評論 0 2
  • 一甘桑、女兒中午跟媽媽在外面睡午覺拍皮,但還沒睡醒,就被媽媽叫醒跑杭,因為媽媽要先送她回家铆帽,然后去上班了。女兒一路上讓媽媽抱著...
    銀小娟閱讀 116評論 0 0