2012-09-24 43 views
0

我们只是将生产中的应用程序更新推向了我们的应用程序。 当我们推送SDK 3.2时,初始版本使用Air SDK 2.5。当检测到新的版本和下载的应用程序,我们有一个错误#16824.AIR 2.5到3.2升级失败,错误16824和16815

如果用户卸载2.5应用程序,并手动安装3.2之一,应用程序工作正常。

任何想法?

------编辑

我们与2.5(错误)的update.xml命名空间

<update xmlns="http://ns.adobe.com/air/framework/update/description/2.5">...

但与3.2纳秒更换时:

<update xmlns="http://ns.adobe.com/air/framework/update/description/3.2">...

该应用不会下载,我得到一个错误16815.

有一个答案there但我们已经仔细检查了updater swc是否正确,即从SDK3.2开始。

错误16815是“无效的更新描述符(未知描述符版本)”。 见参考here

+0

的可能重复[ADOBE AIR:错误#16824:版本不匹配,而试图自动更新](http://stackoverflow.com/questions/4748610/adobe-air-error-16824-version-mismatch-while-trying - 自动更新) – JeffryHouser

+1

flextras,感谢您的指针,但我已经超过了发生在2.5的模式更改。我的问题是在2.5和3.2之间(或更高)。 – Breiz

回答

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,它们都具有相同的限制。 步骤来解决:

  1. 在src目录
  2. 复制UpdateDescriptor.as到这个包
  3. 添加以下块到UpdateDescriptor.as
创建一个包air.update.descriptors

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!