請求系統相冊有三個Action:android
(注意如下 圖庫(縮略圖) 和 圖片(原圖) 的區別)ide
ACTION_OPEN_DOCUMENT 僅限4.4或以上使用 默認打開原圖
ACTION_GET_CONTENT 4.4如下默認打開縮略圖 。 以上打開文件管理器 供選擇,選擇圖庫打開爲縮略圖頁面,選擇圖片打開爲原圖瀏覽。
ACTION_PICK 均可用,打開默認是縮略圖界面,還須要進一步點開查看。測試
下面會詳細介紹他們在不一樣版本系統中的測試結果區別:圖片
測試系統:adroid 4.4.2 夜神模擬器
content://com.android.providers.media.documents/document/image%3A1372>>ACTION_OPEN_DOCUMENT從圖片獲取,打開是文件管理器的圖片選擇器,可是隻能選擇圖片不能選圖庫,也不能選擇其餘文件
content://com.android.providers.media.documents/document/image%3A1372>>ACTION_GET_CONTENT從圖片獲取 打開的仍是文件管理器,能夠選擇圖庫也能夠選擇圖片
content://media/external/images/media/1372>>>>>>>>》》》ACTION_GET_CONTENT從圖庫獲取
content://media/external/images/media/1541>>>>>>>>》》》》ACTION_PICK默認打開圖庫,無法選擇圖庫仍是圖片
綜上: uri只跟 圖庫仍是圖片選擇有關,跟action無關,是選擇圖片仍是圖庫纔跟action有關
測試系統: android 4.4.4
ACTION_OPEN_DOCUMENT ACTION_GET_CONTENT都是直接打開圖片,頁面比較漂亮
ACTION_PICK默認打開圖庫,界面比較醜
測試系統:android 6.0 華爲
content://com.android.providers.media.documents/document/image%3A35144>>>ACTION_OPEN_DOCUMENT 不可選圖庫仍是圖片
content://com.android.providers.media.documents/document/image%3A176> ACTION_GET_CONTENT選擇圖片中的
content://media/external/images/media/35144>>>>>>>>》》》》ACTION_GET_CONTENT選擇圖庫中的
content://media/external/images/media/35144>>>>>>>>》》》》》ACTION_PICK默認打開圖庫,無法選擇圖庫仍是圖片
測試系統:android4.2.1 華爲
ACTION_GET_CONTENT 彈出圖庫和文件管理器,供選擇
ACTION_OPEN_DOCUMENT 直接崩,不能使用
ACTION_PICK 直接打開圖庫
綜上得出 :
結論一:
ACTION_OPEN_DOCUMENT 直接打開的是圖片
ACTION_GET_CONTENT 打開後可選擇是圖庫獲取仍是圖片獲取
ACTION_PICK 直接打開的就是圖庫
結論二:
從圖片獲取到的uri 格式爲:content://com.android.providers.media.documents/document/image%3A35144>>>
cong圖庫獲取到的uri格式爲:content://media/external/images/media/35144>>>>>>
結論三:
4.4.4以上版本android系統,圖片的界面比圖庫的界面好看。
結論四:
content://media/external/images/media/35144這種格式,轉換成路徑後能夠直接用
content://com.android.providers.media.documents/document/image%3A35144這種格式,轉換成路徑後不能直接用。
結論五:
ACTION_OPEN_DOCUMENT不能在android4.4如下版本用,不然會crash,個人低版本手機系統有問題,沒辦法打印log因此看不到崩潰緣由,猜想是取不到數據,報空
io