apache-flex Adobe Air Android调试

c2e8gylq  于 2022-11-01  发布在  Apache
关注(0)|答案(2)|浏览(160)

我正在使用Flash Builder 4.6开发一个使用Air的Android游戏。当我在PC上调试时,它工作正常,但当我插入Android手机并尝试调试时,我得到了一个数据库文件位置的错误。
这是我目前的位置设置:

private static var DefaultDB:File = File.applicationDirectory.resolvePath("com/arakaron/Assets/Database/DefaultDb.db");

我应该将其设置为什么/在哪里?似乎当我调试应用程序时,没有任何内容被传输到手机上,因为我在手机上找不到任何Arakaron资源。
任何帮助都是最好的。

  • 谢谢-谢谢
ebdffaop

ebdffaop1#

您不能以这种方式访问DB。
请使用下面的代码。文件。应用程序存储目录。resolvePath(“DefaultDb.db”);
您的数据库必须在应用程序存储中。如果您希望在文件夹中有,则按如下方式定义文件夹名称:“数据库\默认数据库. db”;

9udxz4iz

9udxz4iz2#

Android上的File.applicationDirectory是指您的应用和资产。在Android上,它包含在您的APK中,当您访问资产时,操作系统会将其解压缩到内存中。除非您正在从您的包中阅读资产,否则不应使用此目录。此目录中的资产只能通过url访问,并且不会有nativePath属性。
最有可能的情况是,您应该使用File.applicationStorageDirectory,或者如果可以安全地删除文件而不会中断应用程序的操作,则应该使用File.cacheDirectory
您可以在以下位置阅读更多信息:http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118666ade46-7fe4.html
如果将数据库与应用程序打包在一起,则应使用文件复制过程将文件复制到上述位置之一,然后再尝试将其作为数据库进行访问。

相关问题