2012-09-11 44 views
2

我正在使用Flash(NOT Flex)在AIR(v3.3)中構建應用程序,並且遇到更新框架問題。我發現的所有資源都適用於舊版本的AIR和/或引用Flex版本。 這是我第一次做到這一點,並會真正感謝一些指導......Adob​​e AIR 3.3更新框架

我有一個簡單的測試應用程序 - 一個圖像(從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

我正在測試一個導出的應用程序。 – 2Mogs

回答

0

基於documentation,看起來您需要確保ApplicationUpdaterUI的當前狀態爲「就緒」,否則「checkNow()」將不會執行任何操作。

有關Adobe AIR更新的最新信息,請參見HERE。它全面適用。