Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
你能在android上升级sqlite3版本吗?_Android_Database_Sqlite_Foreign Keys_Upgrade - Fatal编程技术网

你能在android上升级sqlite3版本吗?

你能在android上升级sqlite3版本吗?,android,database,sqlite,foreign-keys,upgrade,Android,Database,Sqlite,Foreign Keys,Upgrade,我正在编写一个应用程序,它使用外键约束,而外键约束仅在版本2.2上才提供支持,我的手机是2.1。当应用程序安装时,有没有办法在htc desire或任何其他android手机上升级sqlite3版本?简短回答,没有 更长的回答。 是的,但是您必须具有root,因为sqlite二进制文件位于/system/xbin中。您需要具有root访问权限才能覆盖该文件。您将无法升级任何其他设备,除非它们也具有根目录和支持update.zips的恢复映像,该映像可以使用“测试密钥”签名。然后您必须手动分发更新

我正在编写一个应用程序,它使用外键约束,而外键约束仅在版本2.2上才提供支持,我的手机是2.1。当应用程序安装时,有没有办法在htc desire或任何其他android手机上升级sqlite3版本?

简短回答,没有

更长的回答。
是的,但是您必须具有root,因为sqlite二进制文件位于/system/xbin中。您需要具有root访问权限才能覆盖该文件。您将无法升级任何其他设备,除非它们也具有根目录和支持update.zips的恢复映像,该映像可以使用“测试密钥”签名。然后您必须手动分发更新zip文件,用户必须在恢复模式下重新启动该文件,刷新update.zip以应用“补丁”

正如Ryan指出的,如果您有根访问权限,您可以更改二进制文件,但还有另一种可能性:您可以将编译的SQLite本机文件添加到应用程序中,并通过JNI访问它们。下面是一个使用SQLite和Spatialite扩展的示例项目:

讨厌!谢谢你的回答。看起来我必须在没有外键的情况下管理数据库,然后8-(如果你对答案满意,别忘了标记答案已接受。如果你不标记答案,将来很难获得答案。