gpt4 book ai didi

android - 为我没有源代码的应用程序禁用 WAL?

转载 作者:行者123 更新时间:2023-11-29 23:15:33 26 4
gpt4 key购买 nike

我有一个应用程序的 apk,它与 Android 9 不兼容,因为它现在强制使用 WAL 而不是日志模式。有没有办法在不访问应用程序源代码的情况下禁用 WAL?

最佳答案

如果您无法控制应用程序的来源,那么我不相信您可以更改模式。

也就是说,应用程序无法运行的最可能原因是使用了预先存在的数据库(从 Assets 文件夹中复制)。

如果是这样,并且您可以访问该应用程序正在运行的另一台设备(即低于 Android 9)并且您可以访问数据库文件(可能需要 root 设备)。很有可能在删除 Android 9 设备上的 -shm 和 -wal 文件后复制该数据库文件(同样它可能需要已经 Root )会起作用(尽管会使用 WAL),但问题是很可能纯粹是对现有数据库的复制。

  • 我使用 5.0 和 10.0 设备(模拟器)进行了测试,效果很好。

但是,如果您确实有权访问代码:-

您可以使用 SQLite 数据库 disableWriteAheadLogging方法。如果使用 SQLiteOpenHelper 的子类,您将通过覆盖 onConfigure 方法来执行它。

如果不使用 SQLiteOpenHelper 的子类,那么您可以使用 journal_mode 设置日志模式编译指示。

关于android - 为我没有源代码的应用程序禁用 WAL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55434564/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com