我有一个root应用程序,它读取WhatsApp的SQLite数据库。我正在使用sqlite
二进制文件来执行SQL查询,并将结果读入我的应用程序。
现在,这一切都运行正常,但我注意到某些设备上似乎缺少SQLite可执行文件,尤其是Galaxy S3 GT-I9300。 (我可以通过崩溃统计数据看到这一点。)
我的应用程序还会将sqlite3
可执行文件安装到用户手机上。 SQLite可执行文件需要位于/system/xbin/sqlite3
或/system/bin/sqlite3
。我已将sqlite3
二进制文件与assets
中的应用程序捆绑在一起,我的应用程序将资产解包并将其复制到正确的位置。我从Android模拟器中提取了sqlite3
二进制文件。
现在,我一直看到错误,这些错误会导致库文件libncurses.so
丢失。在我的手机上,该文件位于/system/bin/libncurses.so
。
现在,我是否应该将libncurses.so
文件与我的应用程序捆绑在一起?还有什么我需要捆绑的吗?
如果有更好的方式在设备上获取sqlite3
,我会很高兴听到它。
答案 0 :(得分:0)
如果你想要转义依赖关系,只需自己构建静态链接所有需要的库。
答案 1 :(得分:0)