【发布时间】:2012-02-10 06:28:03
【问题描述】:
我想将 SQLite 数据库(*.db 文件)嵌入到 AIR 应用程序中,例如图像、mp3 等。 这是为了确保无法为其他用户复制我的数据库。
【问题讨论】:
标签: database actionscript-3 sqlite air embed
我想将 SQLite 数据库(*.db 文件)嵌入到 AIR 应用程序中,例如图像、mp3 等。 这是为了确保无法为其他用户复制我的数据库。
【问题讨论】:
标签: database actionscript-3 sqlite air embed
不,你不能。即使你可以打包它,数据也不会真正受到保护:因为 .air 包本质上只是一个增强的 .zip 存档,任何人都可以从 .air 文件中提取数据库。
您要做的是加密您的数据库并用密码保护它,这样只有授权用户才能访问数据库。
有足够的文档说明如何执行此操作。这是 Adobe 提供的入门教程:http://www.adobe.com/devnet/air/flex/quickstart/articles/encrypted_database.html
【讨论】:
我认为这是不可能的。如果您将其嵌入到 air 文件并安装 AIR 应用程序,则 db 将被复制到安装文件夹中。
您可以在用户存储位置创建数据库
var file:File = File.applicationStorageDirectory.resolvePath("name.db");
用户仍然可以在资源管理器中导航到文件。它将存储在 /users/username/appdata/appname/Local Store 下
AppData 是一个隐藏文件夹。
【讨论】: