我的应用正在尝试向用户提供大量内容,因此应用的大小远远大于50mb。我们无法减少或删除某些内容,因此我们决定采用扩展方法。
我正在尝试使用本教程:Android APK Expansion Files,并且已成功将扩展文件放入我的设备进行测试。我可以在扩展中获取任何视频文件的输入流。但是当我尝试为VideoView设置VideoUri时,它会开始崩溃。以下是一些代码:
ZipFileContentProvider contentProvider = new ZipFileContentProvider();
String contentPath = "content://";
File root = Environment.getExternalStorageDirectory();
String EXP_PATH = File.separator + "Android" + File.separator + "obb" + File.separator;
String path = root.toString() + EXP_PATH + context.getPackageName() + File.separator + "main.1.com.c4e1.in2cricket.obb";
String zipFileName = contentPath + path + "/" + fileName;
Uri uri = Uri.parse(zipFileName);
videoView.setVideoUri(uri);
public class ZipFileContentProvider extends APEZProvider {
@Override
public String getAuthority() {
return "com.c4e1.in2cricket.provider.ZipFileContentProvider";
}
}
答案 0 :(得分:2)
使用zip和obb文件时,记录您正在处理的zipEntries始终是一个好习惯。
检查此日志以确保您的假设正确无误。
使用APEZProvider为mediaplayer提供uri。
中查看此内容希望这会对你有所帮助。