Android 打开系统图库,查看相册和视频(只查看不获取)

一、介绍

      有个需求是点击app内按钮,直接打开系统的图库,可以查看相册和视频

      但是因为android的系统都是定制的,所以使用api中提供的图库包名并不能进行成功跳转

 

二、实现

      那么。。翻遍全网 找到个这个

      vnd.android.cursor.dir 表示打开互联网媒体类型的列表文件。。巴拉巴拉。。自己查吧。。

 Intent intent = new Intent(Intent.ACTION_VIEW);
 intent.setType("vnd.android.cursor.dir/image");
 startActivity(intent);

      发现在华为手机上可以用了,兴奋不已

然而。。换个手机比如 vivo oppo。。只有图片并没有视频

效果自己试吧,不提供配图。。(懒)

emmm,然后就开启试错之路。。

忽然发现 把后缀的类型改为video如何,机智如我=.=

最后。。终于几个测试机都可以正常查看图片和视频了

 Intent intent = new Intent(Intent.ACTION_VIEW);
 intent.setType("vnd.android.cursor.dir/video");
 startActivity(intent);

实现完毕,只改了一个单词。。

您可以使用以下代码在 Android 应用中调用系统相册选择视频: 1. 首先,在您的 AndroidManifest.xml 文件中添加以下权限: ``` <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> ``` 2. 接下来,在您的 Activity 中添加以下代码: ``` // 定义一个常量,用于标识选择视频的请求码 private static final int SELECT_VIDEO_REQUEST_CODE = 1; // 在您的 Activity 中添加以下方法,用于启动系统相册并选择视频 private void selectVideo() { Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Video.Media.EXTERNAL_CONTENT_URI); startActivityForResult(intent, SELECT_VIDEO_REQUEST_CODE); } // 在您的 Activity 中添加以下方法,用于处理选择视频后的结果 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == SELECT_VIDEO_REQUEST_CODE && resultCode == RESULT_OK) { Uri selectedVideoUri = data.getData(); // 在这里处理选择视频后的逻辑 } } ``` 3. 最后,在您的布局文件中添加一个按钮或其他控件,用于触发选择视频的操作: ``` <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="选择视频" android:onClick="selectVideo"/> ``` 这样,当用户点击按钮时,系统相册将会打开,并且用户可以选择一个视频。选择完成后,您的 Activity 将会收到一个 onActivityResult 回调,您可以在这里处理选择视频后的逻辑。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值