我遇到了两个不同的错误,一个来自平板电脑,另一个来自手机.
我已将ZIP未压缩文件上传到Google Play商店,其中包含4个音频文件(超过一天前),我遇到了一些问题.
尝试从一台设备下载时,它会下载扩展文件,并在99%时出现错误"AAC文件验证失败".
这是由于"SampleDownloaderActivity"中的'false'参数 - >'protected void onPostExecute(布尔结果)'
无论如何,执行
Helpers.doesFileExist(this, str, 27959282L, false);
Run Code Online (Sandbox Code Playgroud)
返回TRUE并且Zip(obb)中的mp3文件工作/播放正确.
尝试从其他设备下载时,会出现:"下载失败,因为无法找到资源".
我在控制台中发现了一条消息,我认为这是指向我的罪魁祸首.
[licensechecker]无法绑定到服务.
搜索后,我尝试过:
我还没有找到任何解决方案.我在'DND-AAC'(从Google Code获得)的工作资源中遇到了相同的结果.
我正在关注所有官方扩展文件指南,但我找不到它.我无法访问我需要的包含的obb文件.
我需要6个音频文件(80Mb),我在zip文件中"存储"(未压缩)并重命名为"main.2001.test.expansion.proj.obb"并存储在'/ mnt/sdcard/Android/obb/test中.expansion.proj /"
我会尝试访问这些文件
String mainFileName = Helpers.getExpansionAPKFileName(this,true,2001);
if(!Helpers.doesFileExist(this, mainFileName, 27959282L, false))
{
//download
} else {
Log.d("test_file","file exist");
}
ZipResourceFile expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this,2001,2001);
if(expansionFile!=null)
{
ZipEntryRO[] ziro = expansionFile.getAllEntries();
for (ZipEntryRO entry : ziro) {
Log.d("test_files_zip", "fileZip filename: "+entry.getZipFileName());
try{
AssetFileDescriptor ro = entry.getAssetFileDescriptor();
Log.d("test_files_zip", "--fileZip getfiledescriptor.tostring: "+ro.getFileDescriptor().toString());
Log.d("test_files_zip", "--fileZip createinputstring.tostring: "+ro.createInputStream().toString());
AssetFileDescriptor assetFileDescriptor = expansionFile.getAssetFileDescriptor(entry.getZipFileName()+"/audio02.mp3");
if(assetFileDescriptor!=null) {
Log.d("test_files_mp3", "length: "+assetFileDescriptor.getLength()); //checking it exists
}
}catch (IOException e){ Log.e("test_exp","IoExcp: "+e.getMessage()); }
}
}
Run Code Online (Sandbox Code Playgroud)
In - > assetFileDescriptor = …
我已经制作了像SampleDownloaderActivity这样的简单示例项目,我设置了BASE64_PUBLIC_KEY和扩展文件版本和长度,上传了apk和扩展文件到Google Play,保存了它们......运行应用程序后收到了这样的消息:"下载失败,因为资源可以找不到"