2010-11-24 5 views
0

Je veux juste savoir comment chiffrer la base de données à l'aide d'Adobe Air 2.0. J'ai trouvé quelques codes utilisant Adobe Air 1.5. voici les codes:Comment chiffrer la base de données SQLite à l'aide d'Adobe AIR 2.0

// 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); 
    } 
} 

cela ne fonctionne pas. il montre juste erreur: air.SQLMode n'est pas un objet

quelqu'un peut le réparer? Merci

+0

il est étrange de voir ces "air". Essayez d'écrire les importations appropriées et référez-vous directement aux noms de classe. SQLMode est dans flash.data, pas d'air. – alxx

Répondre

1

La raison pour laquelle vous voyez les alias air. * Est que l'exemple est destiné à être utilisé en JavaScript. Si vous utilisez ActionScript, vous devrez supprimer les alias air. * Et simplement importer les classes à la place. Pour JavaScript, puisqu'il n'y a pas d'instruction "import", l'équipe AIR a créé un fichier airaliases.js qui crée des alias pour toutes les classes AIR, de sorte que vous n'ayez pas à utiliser le nom de classe complet chaque fois. temps que vous voulez utiliser la classe.

Questions connexes