尝试在flex ios中编写只读数据库

时间:2013-10-23 17:04:13

标签: ios actionscript-3 flex sqlite flex4

我有一个flex应用程序。 我的问题是当我在iphone上运行查询更新时,控制台返回:

Attempt to write a readonly database.

1 个答案:

答案 0 :(得分:1)

嘿,你见过这个帖子: http://forums.adobe.com/message/3793410

基本上声称:

  
      iOS上的
  • 您的应用程序目录是“只读”(至少在使用本机应用程序时) - 所以应用程序目录中的资源(在   Air SDK的术语 - 不是iOS SDK)不可以   改性/写入/更新

  •   
  • 您可以将已创建的sqlite数据库文件与您的应用程序一起发送,但应将其复制到应用程序可写   目录 - 例如到文件。该目录可通过以下方式访问:

         

    File.documentsDirectory

  •   
  • 因此,当您的应用程序启动时,您可以执行以下操作:

  •   
     

1)构建文档目录数据库路径的路径

     

2)检查该路径中的数据库是否存在(如果文件存在)

     

3)如果文件不存在,则将其复制到该路径中   应用程序资源目录(在构建时将其捆绑在一起)   项目)或使用所有这些CREATE表创建新的空数据库   然后INSERT语句创建新的数据库副本

     

4)如果检查#2跳过数据库中是否存在文件,则每次下次启动时都是如此   创建/复制,然后开始使用它。