首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

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

1.5+上的视频和照片访问

在Android 1.5+上,视频和照片的访问主要依赖于两种方式:使用ContentProvider或直接操作Uri

使用ContentProvider

  • ContentProvider:是一种访问数据的方式,它提供了一套统一的接口,规范了在不同应用之间共享数据的行为。
代码语言:markdown
复制
### 使用ContentProvider

1. 注册ContentProvider
```java

public static final String CONTENT_PROVIDER_PATH = "com.example.contentprovider";

ContentProviderClient contentProviderClient = getContentResolver().acquireContentProviderClient(CONTENT_PROVIDER_PATH);

ContentProvider provider = contentProviderClient.getProvider();

代码语言:txt
复制
2. 使用ContentProvider
```java

Uri uri = Uri.parse("content://com.example.contentprovider/videos");

Cursor cursor = getContentResolver().query(uri, new String[]{MediaStore.Video.VideoColumns.DATA}, null, null, null);

cursor.moveToFirst();

String filePath = cursor.getString(0);

cursor.close();

代码语言:txt
复制
#### 直接操作Uri

- **Uri**:是访问数据的另一种方式,它是对数据路径的抽象,在Android中主要用于访问ContentProvider中的数据。

```markdown

直接操作Uri

  1. 获取UriUri uri = getContentResolver().acquireContentUri(MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
  2. 使用UriInputStream inputStream = getContentResolver().openInputStream(uri); Bitmap bitmap = BitmapFactory.decodeStream(inputStream); inputStream.close();

小结

  • 使用ContentProvider方式需要注册ContentProvider,在数据访问方面有较大的局限性。
  • 直接操作Uri方式则更加灵活,可以访问系统外部存储,但需要处理IO异常。

扩展阅读

参考资料

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券