错误1046:未找到类型或不是编译时常量:EncryptedLocalStore

时间:2015-09-08 09:49:04

标签: actionscript-3 air

即使导入没有抛出错误,我也收到错误:

1046: Type was not found or was not a compile-time constant: EncryptedLocalStore.   

这是我的代码:

import flash.data.EncryptedLocalStore;

var str:String = "Bob";
var bytes:ByteArray = new ByteArray();
bytes.writeUTFBytes(str);
EncryptedLocalStore.setItem("firstName", bytes);

var storedValue:ByteArray = EncryptedLocalStore.getItem("firstName");
trace(storedValue.readUTFBytes(storedValue.length)); // "Bob"

EncryptedLocalStore.removeItem("firstName");

我已经检查过,并且在AIR 1.0(或3.0)中引入了EncryptedLocalStore。我使用的是AIR 3.6。我也在图书馆项目中使用它。

1 个答案:

答案 0 :(得分:0)

很奇怪。通过执行以下操作,我能以某种方式摆脱错误:

  • 清洁
  • 重新启动
  • 在项目属性>中选择包含Adobe AIR库;编译器设置
  • 将-swf-version = 19添加到编译器参数
  • 清洁
  • 选择使用最小Flash Player版本
  • 清洁
  • 更改为其他SDK
  • 清理项目。

注意:此时此工作正在进行中。然后,我通过这些更改反过来,在执行以下操作之后,它仍然有效。

  • 更改回原始SDK
  • 清洁
  • 取消选中在项目属性>中包含Adobe AIR库。编译器设置
  • 清洁
  • 从编译器参数中删除-swf-version = 19
  • 清洁
  • 删除使用最低Flash Player版本并输入Flash Player 15.0.0

我回到我开始的地方,但现在它正在工作?

<强>更新
好的我明白了:

  1. 选择&#34;包含Adobe AIR库&#34;
  2. 切换SDK(点击申请不起作用) 错误应该消失
  3. 切换回上一个SDK