2

我在 android 中创建开发应用程序,其中包含大约 500 mb 的视频,用于上传 apk 扩展文件方法我上传扩展并下载它,但现在我无法播放视频 http://blogmobile.itude.com/2012/11/22/ expand-your-horizo​​ns-using-expansion-files-for-android/ 我按照这个例子播放视频,但它不适用于我http://ktakeda47.blogspot.com/2012/04/apk-expansion-files.html我按照此链接下载扩展文件。现在请帮助我如何从扩展文件 Dir="/sdcard/Android/obb" 播放视频?

4

1 回答 1

2

我正在使用以下代码使用lib从 obbAPKexpansion文件播放 mp4:APKExpansionSupport

ZipResourceFile expansionFile = null;
AssetFileDescriptor mAFD= null;
try {
    expansionFile = APKExpansionSupport.getAPKExpansionZipFile(this, 1, 0);
    mAFD = expansionFile.getAssetFileDescriptor(strVideoFile);
} catch (IOException e) {
    e.printStackTrace();
} catch (NullPointerException e) {
    e.printStackTrace();
}
    if (expansionFile==null || mAFD == null){
        Toast.makeText(this, "obb is not here or doesn't contain file: "+strVideoFile, Toast.LENGTH_LONG).show();
        return false;
    }
        mMediaPlayer.setDataSource(mAFD.getFileDescriptor(), mAFD.getStartOffset(), mAFD.getLength());

请记住 - 您必须在没有任何压缩级别的情况下打包 obb zip 存档。这个非常重要。它必须是没有压缩的 zip 存档 (level=0)。
然而,URI在 APKES 文档中提到了一个(说到VideoView ,但我无法获得如何URI从 APKES 获取的胶水。最后我在这里找到了如何做到这一点 所以要使用 URI,你必须com.android.vending.expansion.zipfile.APEZProvider像他的示例中那样扩展并对 Manifest 进行更改,它应该可以工作。

于 2013-09-20T08:26:00.550 回答