请求系统相册有三个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