2012-11-03 116 views
0

我試圖使用以下代碼保存並從Adobe AIR應用程序獲取數據。但它只是保持警報只有未定義。有人能找到錯誤嗎?無法在Adobe AIR中獲取保存的數據ELS

  function saveData(n, v){ 
       var bytes = new air.ByteArray(); 
       bytes.writeUTFBytes(v); 
       return air.EncryptedLocalStore.setItem(n, bytes); 
      } 

      function getData(n){ 
       var storedValue = air.EncryptedLocalStore.getItem(n); 
       return air.trace(storedValue.readUTFBytes(storedValue.length)); 
      } 

      saveData('item1', 'value1'); 
      alert(getData('item1')); 

回答

2

嘗試刪除air.trace功能

function saveData(n:String, v:String):void 
{ 
    var bytes = new air.ByteArray(); 
    bytes.writeUTFBytes(v); 

    air.EncryptedLocalStore.setItem(n, bytes); 
} 

function getData(n):String 
{ 
    var storedValue = air.EncryptedLocalStore.getItem(n); 

    return storedValue.readUTFBytes(storedValue.length); 
} 

saveData("item1", "value1"); 
alert(getData("item1")); 
+0

奏效。謝謝;)爲什麼它不以這種方式工作?它的代碼在adobe中給出 – user632347

+1

好,在你的代碼中你正在返回一個跟蹤函數,它可以正常工作,因爲getData()函數沒有返回類型,因此可以返回任何東西,但是字符串是從ByteArray返回的內容.readUTFBytes()和一個函數不是一個字符串。就我個人而言,我不用這種方式用AIR編程AS3(是網絡編程嗎?),所以我對它有點不熟悉。也許它不是被認爲是嚴格打字的?你可以修改教程的鏈接嗎? – TheDarkIn1978

+0

當然,這裏是鏈接http://help.adobe.com/en_US/AIR/1.5/devappshtml/WSd10e5fbe156f4b9b219e2108120012b9a34-7fff.html – user632347