elp*_*prl 12 android android-contentprovider
在Google的扩展文件开发指南(http://developer.android.com/guide/market/expansion-files.html#ZipLib)部分的底部,有以下文字.
APEZProvider - 大多数应用程序不需要使用此类.此类定义了一个ContentProvider,它通过内容提供程序Uri封送ZIP文件中的数据,以便为期望Uri访问媒体文件的某些Android API提供文件访问.Apk Expansion包中提供的示例应用程序演示了一个场景,其中此类可用于使用VideoView.setVideoURI()指定视频.有关如何扩展此类以在应用程序中使用的示例,请参阅示例应用程序的类SampleZipfileProvider.
有问题的示例应用程序不包含此类.但它确实包含对AndroidManifest.xml中的.SampleVideoPlayerActivity文件的引用,该文件也不存在于项目中.
有没有人试图实现一个基于APEZProvider它的具体类并使用它VideoView.setVideoURI()?
我已经实现了这个类:
public class ZipFileContentProvider extends APEZProvider {
@Override
public String getAuthority() {
return "com.myCompany.myAppName.provider.ZipFileContentProvider";
}
}
Run Code Online (Sandbox Code Playgroud)
但我不知道如何在VideoView.setVideoURI()电话中使用它.有人可以帮忙吗?
elp*_*prl 27
事实证明我的ZipFileContentProvider就足够了.对于遇到这个问题的人.以下是我使用VideoView.setVideoURI()方法的内容提供程序所做的操作.
将提供程序添加到Manifest.
<provider android:authorities="com.myCompany.myAppName.provider.ZipFileContentProvider" android:name=".ZipFileContentProvider"></provider>
Run Code Online (Sandbox Code Playgroud)
在视频播放器类中:
final String AUTHORITY = "com.myCompany.myAppName.provider.ZipFileContentProvider";
final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY);
video = (VideoView) findViewById(R.id.video);
video.setVideoURI(Uri.parse(CONTENT_URI + "/" + videoFileName + ".mp4"));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3277 次 |
| 最近记录: |