能用intent来获取吗
时间: 2023-12-15 16:04:26 浏览: 25
是的,你也可以使用 Intent 来获取相册中的视频:
```
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Video.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, REQUEST_CODE_PICK_VIDEO);
```
这个 Intent 会打开系统相册,并且只显示视频文件,用户可以选择一个视频文件后返回你的应用。在 onActivityResult() 方法中,你可以处理用户选择的视频文件:
```
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUEST_CODE_PICK_VIDEO && resultCode == RESULT_OK) {
Uri uri = data.getData();
String[] projection = { MediaStore.Video.Media.DATA };
Cursor cursor = getContentResolver().query(uri, projection, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
String path = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA));
// 处理获取到的视频
cursor.close();
}
}
}
```
这种方法会更加方便,因为它直接调用了系统相册,并且可以使用 Intent 的方式来获取用户选择的视频文件路径,不需要自己去查询 MediaStore。