AIR Autoupdater en 10 pasos
Tuesday, July 14th, 2009
Ale, aquí os dejo cómo configurar un autoupdater para AIR en diez pasos.
1. Bajar el SDK de AIR.
2. Copiar el archivo applicationupdater_ui.swc a nuestra carpeta de proyecto.
3. Linkarlo en configuración de publicación.

4. Crear un updateConfig.xml con los siguientes parámetros:
<configuration xmlns="http://ns.adobe.com/air/framework/update/configuration/1.0">
<url>http://www.robot04.com/reforest/update.xml</url>
<delay>1</delay>
<defaultUI>
<dialog name="checkForUpdate" visible="false" />
<dialog name="downloadUpdate" visible="true" />
<dialog name="downloadProgress" visible="true" />
<dialog name="installUpdate" visible="true" />
<dialog name="fileUpdate" visible="false" />
<dialog name="unexpectedError" visible="true" />
</defaultUI>
</configuration>
5. En el Main o donde iniciéis la app (esto es solo una muestra, a partir de aquí se pueden jugar con todos los parámetros del ApplicationUpdater y configurarlo a vuestro gusto):
{
import air.update.events.UpdateEvent;
import air.update.events.StatusUpdateErrorEvent;
import flash.events.ErrorEvent;
import air.update.events.StatusUpdateEvent;
import air.update.ApplicationUpdaterUI;
public class Main
{
public function Main()
{
initUpdater();
}
public function initUpdater():void
{
appUpdater = new ApplicationUpdaterUI(); appUpdater.addEventListener(StatusUpdateErrorEvent.UPDATE_ERROR, updateError);
appUpdater.addEventListener(UpdateEvent.INITIALIZED, updateInitialized);
appUpdater.addEventListener(StatusUpdateEvent.UPDATE_STATUS, updateStatus);
appUpdater.configurationFile = new File("app:/updateConfig.xml");
appUpdater.initialize();
}
private function updateInitialized(event:UpdateEvent):void
{
checkForUpdates();
}
private function checkForUpdates():void
{
appUpdater.checkNow();
}
private function updateError(event:ErrorEvent):void
{
trace("Error");
}
private function updateStatus(event:StatusUpdateEvent):void
{
trace("update status: " + event.version);
trace("update available: " + event.available);
trace("update details: " + event.details);
}
}
}
6. Añadir el updateConfig.xml en los settings de AIR: File --> AIR Settings --> Included Files + updateConfig.xml.
7. Compilar versión dejando, por ejemplo, en los AIR Settings en el campo de versión 0.90, la instalamos y compilamos otra versión cambiando el valor de la versión a la 0.91.
8. Crear un update.xml con:
<update xmlns="http://ns.adobe.com/air/framework/update/description/1.0">
<version>0.91</version>
<url>http://www.robot04.com/reforest/reforest.air</url>
<description><![CDATA[
Versión 0.91
* Añadida actualización automática
]]></description>
</update>
9. Subir la versión nueva y el update.xml al servidor.
10. Añadir un nuevo tipo MIME ".air" al server
Abrimos la aplicación instalada y veremos que nos aparece la ventana de Update para descargar la nueva versión.
Nota: joder que mal se ven los estilos de syntax hiliter para los xml. Ya lo cambiaré.