在Android 1.5 +上访问视频和照片

Fun*_*Hat 10 video android photo mediastore

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

它工作得很好,除了我可以看似只在视频或照片之间选择以向用户呈现,而不是同时.有一个很好的方法来做到这一点:

startActivityForResult(new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI),SELECT_IMAGE);

谢谢!

Rob*_*ert 17

我好几次都用过这个.最好的方法是这样的:

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

即使这不完全准确,它在我用过的所有内容中都运行良好.它将打开一个Gallery-esque活动,其中包含用户图库中每个图片/视频的缩略图列表.返回的意图onActivityResult()有一个额外的名为"DATA"的内容://所选媒体的URI.

编辑:oops,获取您想要在传递给onActivityResult()的Intent上调用getData()的所选媒体的URI

  • 嗨!我使用的是Android 1.6,它不起作用!只有图片或视频才可以.任何的想法? (3认同)
  • 罗伯特 - 出于某种原因,每当我使用以下行时,我都会看到一个空的选择器:mediaChooser.setType("video/*,images/*"); 我也试过这个没有运气... mediaChooser.setType("video/*,image/*"); 但是,每个单独工作正常...即mediaChooser.setType("video/*"); mediaChooser.setType( "图像/*"); 你能粘贴一个有效的代码片段吗?****编辑 - 似乎这样在2.0版后不再起作用了 (2认同)