Battleground Mobile 之类的应用程序如何在没有存储权限的情况下访问 obb?

How do apps like BattlegroundMobile access to obb without storage permissions?

我已经在我的游戏应用程序上开发了 obb 功能。简单解释一下obb函数的逻辑,

但是如果提取资产,应该需要外部存储权限。 造成10%~15%的客户流失

我一直在寻找的很多帖子都说需要许可。 但有些应用程序如 battlegroundmobile 虽然使用 obb 功能但不请求访问权限。

所以,我想知道应用程序如何以编程方式避免权限要求。

extracts obb file to app data folder with java.util.zip and mount to the assets.

也许这就是你的问题所在。

Battleground Mobile 未将 obb 文件复制或提取到内部存储。它正在访问 OBB 文件夹内文件中的数据流。如果只是使用OBB文件夹中的文件,则不需要请求权限

下载大小为 1.53 GB。 obb 文件位于 Internal Storage - Android - obb - com.tencent.ig 文件夹下。它的大小是 1.53 GB。所以 APK 的大小非常小。

它会在启动后额外下载 195 MB 的更新数据。 下载的文件存储在

/storage/emulated/0/Android/data/com.tencent.ig

内部存储 - Android - 数据

您可以通过 getExternalFilesDir 访问。

同样,无需请求权限即可下载或读取该文件夹。

应用总存储空间为 1.85GB。 应用程序:1.65 GB 数据:202 MB 缓存:10.59 MB

如果您清除数据,它将删除所有更新。但是OBB文件夹里的内容还在。