我在应用程序中尝试做的是让用户从手机的图库中选择图片。我使用的代码如下:
Intent intentBrowseFiles = new Intent();
intentBrowseFiles.setType("image/*");
intentBrowseFiles.setAction(Intent.ACTION_GET_CONTENT);
intentBrowseFiles.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
startActivityForResult(Intent.createChooser(intentBrowseFiles,"Select Picture"), SHOW_GALLERY);
通过输入:
intentBrowseFiles.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
我以为这只会激发画廊的意图,但是用户只能选择驱动器,投递箱和其他在线帐户以及本地画廊...
我不需要任何其他远程资源,这里缺少什么吗?
当您使用诸如之类的意图动作时ACTION_GET_CONTENT
,就是在告诉系统选择要打开的应用程序。如果用户尚未为其设置默认值,它将询问要使用哪个应用程序。对话框中的应用程序将显示任何表示可以处理该类型意图的应用程序。
如果要使用意图启动特定活动,则必须按名称进行调用。这里的问题是,图库应用可能在不同的设备上以不同的方式命名,或完全删除。
通常,允许用户选择自己喜欢的应用是正确的选择。绝对是“ Androidy”方式。
无论哪种方式,都EXTRA_LOCAL_ONLY
只会告诉接收方应用程序仅应返回存在的数据。它不会强制执行该条件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句