我即将创建一个OBB文件,只是为了添加大约80 MB的视频。我试图通过命名约定main.2.my.package.name.obb
通过Win RAR创建一个obb文件,我确实使用提到的Store
格式来压缩我的文件。 A screenshot - 。当我尝试运行以下代码时
ZipFileContentProvider contentProvider = new ZipFileContentProvider();
String contentPath = "content://my.package.name.provider";
File root = Environment.getExternalStorageDirectory();
String EXP_PATH = File.separator + "Android" + File.separator + "obb" + File.separator;
String path = root.toString() + EXP_PATH + getPackageName() + File.separator + "main.2.dmcc.mea.golive.golive.obb";
String zipFileName = contentPath + path + "/" + "video/app_video.mp4";
Log.e("The URI is ", "" + zipFileName);
uri = Uri.parse(zipFileName);
public class ZipFileContentProvider extends APEZProvider {
@Override
public String getAuthority() {
return "my.package.name.provider";
}
}
清单中的那个如下:
<provider
android:name="my.package.name.ZipFileContentProvider"
android:authorities="my.package.name.provider"
android:exported="false"
android:multiprocess="true" />
<meta-data
android:name="mainVersion"
android:value="1"></meta-data>
所以,我尝试通过将生成的OBB文件放在sdcard/Android/obb
中来测试它,但我得到了IllegalStateException
在尝试访问该文件时。 A screenshot。
是的,我尝试通过Android工具中提供的JOBB工具创建obb文件,但我是在尝试创建jobb文件时出错的不幸人之一。我发现它是Google报告的Android中存在的一个错误 - see here。我已经坐了近十年了。
底线:JOBB无法正常工作,感谢Google和WinRAR似乎有点搞砸了。我完全不知道如何继续前进。
我的参考链接包括: Link 1 Link 2 Link 3
我强烈和 SERIOSULY 假设IllegalStateException
仅由于obb文件已损坏或至少是我所知道的事实而发生。
有人可以再拯救我十年吗?
P.S:我确实使用了我的真实包裹名称,以防万一有人认为他们疯狂地充满了智慧。
编辑1:我刚刚通过alpha测试测试了我的应用,但同样的错误仍然存在。很伤心,确实!!
编辑2:我正在做一个愚蠢的错误,用obb的扩展名保存文件,同时将其压缩到我应该以zip格式保存文件并将其上传到Play商店中会为我做转换。我这样做但仍面临同样的问题。
编辑3:我通过JOBB工具从另一台PC成功创建了一个obb文件,其中该工具似乎正常工作,我尝试上传该obb文件。现在,当我下载它时,我现在向NullPointerException
return mAPKExtensionFile.getAssetFileDescriptor(path)
发送了一个新错误。路径在obb文件中非常正确,我猜它无法找到实际的obb文件本身!最后,我想“现在我可能有谷歌允许死!”