我正在使用Flash(NOT Flex)在AIR(v3.3)中构建应用程序,我遇到了更新框架的问题。我找到的所有资源都是针对旧版本的AIR和/或引用Flex构建。 这是我第一次这样做,并且非常感谢一些指导......
我有一个简单的测试应用程序 - 一个图像(将v1更改为v2)和一个文本字段。 这就是我尝试过的(http://goo.gl/uvycg之后):
...
var appUpdater:ApplicationUpdaterUI = new ApplicationUpdaterUI();
...
public function checkForUpdate():void
{
...
appUpdater.updateURL = "http://mysite.com/updates/update-descriptor.xml";
appUpdater.isCheckForUpdateVisible = false;
appUpdater.addEventListener(UpdateEvent.INITIALIZED, onUpdate);
appUpdater.addEventListener(ErrorEvent.ERROR, onError);
appUpdater.initialize();
}
private function onUpdate(event:UpdateEvent):void
{
txt.text = 'onUpdate()';
appUpdater.checkNow();
}
private function onError(event:ErrorEvent):void {
txt.text = 'onError() ' + event.toString();
}
这是我的updateDescriptor.2.5.xml:
<?xml version="1.0" encoding="utf-8"?>
<update xmlns="http://ns.adobe.com/air/framework/update/description/2.5">
<versionNumber>2.0</versionNumber>
<versionLabel>Beta 2</versionLabel>
<url>http://mysite.com/updates/UpdateTest.air</url>
<description>
<![CDATA[ update of bees. geometric growth. ]]>
</description>
因此,应用程序v2的更新描述符在服务器上,我安装并运行应用程序的v1,所有发生的事情是我在文本字段中看到onUpdate()消息,并且没有更新。 我哪里错了?谢谢!
答案 0 :(得分:0)
基于documentation,您似乎需要确保ApplicationUpdaterUI的当前状态为“ready”,否则“checkNow()”将不执行任何操作。
可以找到有关Adobe AIR更新的最新信息HERE。它全面适用。