0

日志:

Runtime Installer begin with version 3.3.0.3650 on Mac OS 10.7.4 x86
Commandline is: -updatecheck
Installed runtime (3.3.0.3650) located at /Library/Frameworks/Adobe AIR.framework
Performing pingback request
Failure during pingback request: [ErrorEvent type="error" bubbles=false cancelable=falsr eventPhase=2 text="Unhandled exception Error: Error #3001" errorID=3001]
Runtime Installer end with exit code 0

它在 Windows 上运行良好,但在 Mac 上失败。

四处挖掘我发现错误代码#3001与文件/目录权限问题有关。

检查 /Users/internetslave/Library/Application Support/Adobe 权限似乎没问题。来源

检查 /Library/Frameworks/Adobe AIR.framework 似乎也可以。

两者都有 drwxr-xr-x。

更新:权限不是问题,成功更新了同一系统上的其他应用程序。

var appUpdater;

function checkForUpdates() {
    appUpdater = new air.ApplicationUpdaterUI();
    appUpdater.configurationFile = new air.File("app:/update/update-config.xml");
    appUpdater.addEventListener(air.ErrorEvent.ERROR, onCheckForUpdatesError);
    appUpdater.initialize();

    setTimeout(function() { 
        appUpdater.checkNow(); 
    }, 500);
}

function onCheckForUpdatesError(event) {
    alert(event.toString());
}   

似乎无法在此处发布更新配置和描述符文件。

4

1 回答 1

0

因为那些人​​可能会偶然发现同样的问题。

问题是调用方法 checkNow 时 ApplicationUpdaterUI 尚未完成初始化。

因此,要么将 setTimeout 的第二个参数更改为更高的值,要么将这部分

appUpdater = new air.ApplicationUpdaterUI();
appUpdater.configurationFile = new air.File("app:/update/update-config.xml");
appUpdater.addEventListener(air.ErrorEvent.ERROR, onCheckForUpdatesError);
appUpdater.initialize();

在页面 onLoad 事件处理程序中并将 checkNow 方法附加到按钮 onClick 事件

function checkUpdates() {
    appUpdater.checkNow();
}

<input type="button" onclick="checkUpdates()" />

谢谢!

于 2012-06-27T05:59:59.217 回答