我们刚刚在生产中推广了我们的应用程序更新。 初始版本使用Air SDK 2.5,而我们推送了SDK 3.2。在检测到新版本并下载应用程序后,我们发现错误#16824。
如果用户卸载2.5应用程序,并手动安装3.2应用程序,则应用程序正常工作。
有什么想法吗?
------编辑
我们的update.xml包含2.5(错误的)命名空间
<update xmlns="http://ns.adobe.com/air/framework/update/description/2.5">...
但是当用3.2 ns替换它时:
<update xmlns="http://ns.adobe.com/air/framework/update/description/3.2">...
该应用未下载,我收到错误16815。
有一个答案there但我们已经仔细检查过更新程序swc是正确的,即来自SDK3.2。
错误16815是“无效的更新描述符(未知描述符版本)。” 请参阅参考here
答案 0 :(得分:1)
RAGE !!!!!!!!!!!!!!
对于错误16815,请检查sdk文件夹中的以下文件:
<sdk>\frameworks\projects\air\ApplicationUpdater\src\ApplicationUpdater\air\update\descriptors\UpdateDescriptor.as
函数isKnownVersion
授权的唯一名称空间为1.0和2.5。
我已经检查过SDK 3.2和3.4,它们都有相同的限制。 步骤修复:
public static const NAMESPACE_UPDATE_3_2:Namespace = new Namespace("http://ns.adobe.com/air/framework/update/description/3.2");
和
case NAMESPACE_UPDATE_3_2.uri:
你现在已经允许了你最喜欢的sdk!