我正在使用Flash Builder 4.6开发一个使用Air的Android游戏。当我在PC上调试时,它工作正常,但当我插入Android手机并尝试调试时,我得到了一个数据库文件位置的错误。
这是我目前的位置设置:
private static var DefaultDB:File = File.applicationDirectory.resolvePath("com/arakaron/Assets/Database/DefaultDb.db");
我应该将其设置为什么/在哪里?似乎当我调试应用程序时,没有任何内容被传输到手机上,因为我在手机上找不到任何Arakaron资源。
任何帮助都是最好的。
- 谢谢-谢谢
2条答案
按热度按时间ebdffaop1#
您不能以这种方式访问DB。
请使用下面的代码。文件。应用程序存储目录。resolvePath(“DefaultDb.db”);
您的数据库必须在应用程序存储中。如果您希望在文件夹中有,则按如下方式定义文件夹名称:“数据库\默认数据库. db”;
9udxz4iz2#
Android上的
File.applicationDirectory
是指您的应用和资产。在Android上,它包含在您的APK中,当您访问资产时,操作系统会将其解压缩到内存中。除非您正在从您的包中阅读资产,否则不应使用此目录。此目录中的资产只能通过url
访问,并且不会有nativePath
属性。最有可能的情况是,您应该使用
File.applicationStorageDirectory
,或者如果可以安全地删除文件而不会中断应用程序的操作,则应该使用File.cacheDirectory
。您可以在以下位置阅读更多信息:http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118666ade46-7fe4.html
如果将数据库与应用程序打包在一起,则应使用文件复制过程将文件复制到上述位置之一,然后再尝试将其作为数据库进行访问。