Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
Sqlite Haxe-SQLLite在Android目标中崩溃_Sqlite_Haxe_Openfl - Fatal编程技术网

Sqlite Haxe-SQLLite在Android目标中崩溃

Sqlite Haxe-SQLLite在Android目标中崩溃,sqlite,haxe,openfl,Sqlite,Haxe,Openfl,我想在我用Haxe-OpenFl开发的Android游戏中使用Sqllite datbase,但当我试图查询数据库时,应用程序不断崩溃。如果这是不可能的,或者有任何其他方法来处理Android中的数据,请告诉我,因为json和共享对象在我的场景中不起作用 我也在OpenFl社区发布了这个问题——但我认为它与Haxe的关系比OpenFl的关系更大 我在做什么: 使用DB Browser创建数据库并将其保存到assets/data/DB/data.DB 然后,当应用程序启动时,我将它复制到lim

我想在我用Haxe-OpenFl开发的Android游戏中使用Sqllite datbase,但当我试图查询数据库时,应用程序不断崩溃。如果这是不可能的,或者有任何其他方法来处理Android中的数据,请告诉我,因为json和共享对象在我的场景中不起作用

我也在OpenFl社区发布了这个问题——但我认为它与Haxe的关系比OpenFl的关系更大

我在做什么:

  • 使用
    DB Browser
    创建数据库并将其保存到
    assets/data/DB/data.DB

  • 然后,当应用程序启动时,我将它复制到
    lime.system.system.applications存储目录

  • 它在
    应用程序存储目录中创建文件

  • 然后我尝试连接到新创建的db文件,它只是连接,但在连接到它之后,尝试获取它连接到的db的名称
    trace(“连接到数据库”+_conn.dbName)并且除了连接到数据库的文本之外,它不会在跟踪中显示任何内容
  • 忽略名称,我试图查询数据库,它只是关闭我的应用程序,没有任何错误或任何我知道的错误
My Project.xml

<android target-sdk-version="26" install-location="preferExternal" if="android" />
<android permission="android.permission.WRITE_EXTERNAL_STORAGE"/>
<android permission="android.permission.WRITE_INTERNAL_STORAGE"/>

<haxelib name="openfl" />
<haxelib name="hxcpp" />

<assets path="assets/data/db" rename="db" />

我打了个盹,在梦中得到了修复::D

问题就在这里

_conn = Sqlite.open(targetPath+NEW);
修正:

因为数据库名称已在路径中:p

var targetPath: String = lime.system.System.applicationStorageDirectory+ NEW;
这就是为什么总是睡8个小时,否则就会像我一样结束

_conn = Sqlite.open(targetPath);
var targetPath: String = lime.system.System.applicationStorageDirectory+ NEW;