Database 如何使用AdobeAir2.0加密数据库SQLite
我只是想问一下如何使用AdobeAir2.0加密数据库。我发现了一些使用AdobeAir1.5的代码。代码如下:Database 如何使用AdobeAir2.0加密数据库SQLite,database,sqlite,air,adobe,encryption,Database,Sqlite,Air,Adobe,Encryption,我只是想问一下如何使用AdobeAir2.0加密数据库。我发现了一些使用AdobeAir1.5的代码。代码如下: // Include AIRAliases.js to use air.* shortcuts var conn = new air.SQLConnection(); conn.addEventListener(air.SQLEvent.OPEN, openHandler); conn.addEventListener(air.SQLErrorEvent.ERROR, error
// Include AIRAliases.js to use air.* shortcuts
var conn = new air.SQLConnection();
conn.addEventListener(air.SQLEvent.OPEN, openHandler);
conn.addEventListener(air.SQLErrorEvent.ERROR, errorHandler);
var dbFile = air.File.applicationStorageDirectory.resolvePath("DBSample.sqlite");
var encryptionKey = new air.ByteArray();
encryptionKey.writeUTFBytes("Some16ByteString"); // This technique is not secure!
conn.openAsync(dbFile, air.SQLMode.CREATE, null, false, 1024, encryptionKey);
function openHandler(event)
{
air.trace("the database opened successfully");
}
function errorHandler(event)
{
if (event.error.errorID == 3138)
{
air.trace("Incorrect encryption key");
}
else
{
air.trace("Error message:", event.error.message);
air.trace("Details:", event.error.details);
}
}
它不起作用。它只是显示错误:air.SQLMode不是对象
有人能修好吗?感谢您之所以看到air.*别名,是因为该示例旨在在JavaScript中使用。如果您使用的是ActionScript,则需要删除air.*别名,只需导入类即可 对于JavaScript,由于没有“import”语句,AIR团队创建了一个文件airaliases.js,为所有AIR类创建别名,这样您就不必每次使用该类时都使用完全限定的类名。看到这些“AIR”很奇怪。尝试编写正确的导入并直接引用类名。SQLMode在flash.data中,而不是在air中。