在Android 1.5 +上访问video和照片

所以我试图让用户select一个特定的媒体与我的Android应用程序使用这里描述的方法: 从图片应用程序在我的android应用程序中访问图片

它工作的很好,除了我似乎只能selectvideo或照片之间的用户,而不是在同一时间。 有没有一个好办法做到这一点:

startActivityForResult(新的意图(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI),SELECT_IMAGE);

谢谢!

Solutions Collecting From Web of "在Android 1.5 +上访问video和照片"

我用过这几次。 最好的方法是这样的:

Intent mediaChooser = new Intent(Intent.ACTION_GET_CONTENT); //comma-separated MIME types mediaChooser.setType("video/*, images/*"); startActivityForResult(mediaChooser, 1); 

即使这不是完全准确的,它在我用过的所有东西中都运行良好。它将打开一个Gallery-esque活动,并在用户的画廊中显示每个图片/video的缩略图列表。 onActivityResult()返回的意图有一个额外的称为“数据”,这将是一个内容:/ / URI到选定的媒体。

编辑:哎呀,要获取所选媒体的URI,你实际上要调用的getData()传递给onActivityResult()

基维 – 最简单的方法是创build一个意图,select一块媒体,并将其限制为video:

 Intent pickMedia = new Intent(Intent.ACTION_GET_CONTENT); pickMedia.setType("video/*"); startActivityForResult(pickMedia,12345); 

注意 – 12345是您的应用程序需要在请求callback中侦听的整数,以便您可以随时随地发送您接收到的任何信息。

然后,您还需要有相同的活动来监听从该意图发回的信息:

  @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 12345) { if (resultCode == Activity.RESULT_OK) { Uri selectedVideoLocation = data.getData(); // Do something with the data... } } } 

凉?

 intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); startActivityForResult(intent, 1); 

尝试这个

 Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("*/*"); startActivityForResult(intent, 101);