【问题标题】:How to embed a SQLite DB (*.db file) to the AIR application?如何将 SQLite DB(*.db 文件)嵌入 AIR 应用程序?
【发布时间】:2012-02-10 06:28:03
【问题描述】:

我想将 SQLite 数据库(*.db 文件)嵌入到 AIR 应用程序中,例如图像、mp3 等。 这是为了确保无法为其他用户复制我的数据库。

【问题讨论】:

标签: database actionscript-3 sqlite air embed


【解决方案1】:

不,你不能。即使你可以打包它,数据也不会真正受到保护:因为 .air 包本质上只是一个增强的 .zip 存档,任何人都可以从 .air 文件中提取数据库。

您要做的是加密您的数据库并用密码保护它,这样只有授权用户才能访问数据库。

有足够的文档说明如何执行此操作。这是 Adob​​e 提供的入门教程:http://www.adobe.com/devnet/air/flex/quickstart/articles/encrypted_database.html

【讨论】:

  • 事实上,您可以在 AIR 应用程序中嵌入数据库文件。我刚刚将此问题标记为骗子;这个答案描述了这个过程:stackoverflow.com/questions/573350/…
  • 我应该说“嵌入 AIR 应用程序”只是意味着将其包含在 AIR 存档中,正如@RIAstar 所说,它只是一个 .zip 存档。因此,除非您对其进行加密,否则它不会受到保护,正如 RIAstar 所说。但是,这比 AIR 提供的任何其他选项都提供了更多保护,除了在运行时通过网络连接流式传输资产。
【解决方案2】:

我认为这是不可能的。如果您将其嵌入到 air 文件并安装 AIR 应用程序,则 db 将被复制到安装文件夹中。

您可以在用户存储位置创建数据库

var file:File = File.applicationStorageDirectory.resolvePath("name.db"); 

用户仍然可以在资源管理器中导航到文件。它将存储在 /users/username/appdata/appname/Local Store 下

AppData 是一个隐藏文件夹。

【讨论】:

    猜你喜欢
    • 2011-06-12
    • 1970-01-01
    • 1970-01-01
    • 2020-07-04
    • 2021-11-01
    • 1970-01-01
    • 2014-04-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多