我开发了使用加密 obb 文件的 Android 应用程序。这个 obb 文件由 3 个文件组成(我用 jobb 工具创建的)。在大多数设备上一切正常,但在三个设备上存在 ERROR_COULD_NOT_MOUNT。而且我不明白如何解决它。我想分发应用程序没有任何错误:) 请帮我做!:)
我尝试过: 1)卸载并安装obb文件;2)从没有“只读”属性的文件夹创建obb文件。但是这一切都行不通。
重现问题的步骤(如果适用,包括示例代码)。 1)创建文件夹,放入3个不同的文件。2) 从步骤 1 中的文件夹创建 obb 文件。 3) 尝试从应用程序挂载此文件(示例代码如下)。
最终文件 mainFile = new File(Environment.getExternalStorageDirectory() + "/Android/obb/" + packageName + "/"
+“主要”。+ 版本代码 + "." + 包名 + ".obb");
OnObbStateChangeListener 监听器 = 新 OnObbStateChangeListener() {
@覆盖
公共无效 onObbStateChange(字符串路径,int 状态){
super.onObbStateChange(路径,状态);
如果(状态 == OnObbStateChangeListener.MOUNTED){
做下一步();
} else if (state == OnObbStateChangeListener.ERROR_COULD_NOT_MOUNT) {
Toast.makeText(getApplicationContext(), "ERROR_COULD_NOT_MOUNT", Toast.LENGTH_LONG).show();
}
}
};
if (!storageManager.isObbMounted(mainFile.getAbsolutePath())) {
storageManager.unmountObb(mainFile.getAbsolutePath(), true, listener);
storageManager.mountObb(mainFile.getAbsolutePath(), "password_string", listener);
} 别的 {
做下一步();
}
发生了什么。 我在以下设备上出现“ERROR_COULD_NOT_MOUNT”错误:1) HTC PJ401 One S;2)三星GT-I9505 Galaxy S IV;3) 三星 SM-N9005 Galaxy Note 3。但在三星 SM-N900T Galaxy Note 3 和三星 GT-I9500 Galaxy S IV 上一切正常。