Android 4.4 6.0 7.0拍照、訪問圖庫一些記錄

Android 4.4 6.0 7.0拍照、訪問圖庫一些記錄

按照個人實踐和理解,總結出以下一些情況。
以下內容純粹是本人自己目前總結出來的,可能存在重大誤導錯誤,請持懷疑態度


4.4以後使用Intent 的 GET_CONTENT,setType訪問圖庫返回的uri爲帶doucument的content://…provider類型Uri,爲只讀Uri無法存入更改後圖片,可以轉化爲絕對路徑,再轉化爲fileuri(Uri.fromfile()方法)。4.4存入圖片uri支持content://media… uri和file://.. uri類型。


6.0以前使用Intent的PICK和setData返回傳統的media類型,6.0以後返回cotent://…provider類型,也是隻讀Uri,無法存入修改圖片。解決方法同上。但要注意如果是7.0及其以上,不能轉化爲meida類型Uri,只能是file類型Uri(Uri.fromfile)存入圖片


7.0以後存入圖片只能使用Uri.fromfile。但是除此之外,不能使用Uri.fromfile方法,必須使用FileProvider代替獲得content://…fileprovider Uri,但是此Uri是不可讀的。可以轉化爲mediaUri讀取,再轉化爲file uri存入。


content://meida 和普通系統的content://…provider可以使用一樣的獲取絕對路徑的方法。


簡單說4.4前2種Uri訪問2種也可以存入
4.4-6.0三種訪問兩種存入
6.0-7.0四種訪問兩種存入
大於等於7.0四種訪問一種存入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章