2009-11-30 10 views

Odpowiedz

3
package 
{ 
    import mx.core.Application; 
    import mx.core.WindowedApplication; 
    import adobe.utils.ProductManager; 

    public function reboot():void 
    { 
    var app:WindowedApplication = 
     WindowedApplication(Application.application); 

    var mgr:ProductManager = 
     new ProductManager("airappinstaller"); 

    mgr.launch("-launch " + 
     app.nativeApplication.applicationID + " " + 
     app.nativeApplication.publisherID); 

    app.close(); 
    } 
} 

Również upewnić się, że opcja „allowBrowserInvocation” jest włączona w aplikacji AIR szablonu deskryptora

"How to restart an AIR application from code"

+2

fYI: To nie działa w trybie debugowania. Ponieważ wysłany przez Ciebie kod był dokładnie taki sam, jak użyliśmy już. Teraz próbowałem go w zainstalowanej instancji i działało! Dzięki. –

7

Witam drodzy i zostały ustalone ten methode dla Flex 4.6

package 
{ 
    import adobe.utils.ProductManager; 

    import flash.desktop.NativeApplication; 

    import mx.core.FlexGlobals; 
    import spark.components.WindowedApplication; 

    public function Reboot():void 
    { 
     var app:WindowedApplication = WindowedApplication(FlexGlobals.topLevelApplication); 

     var mgr:ProductManager = new ProductManager("airappinstaller"); 
     mgr.launch("-launch "+app.nativeApplication.applicationID+" "+app.nativeApplication.publisherID); 
     app.close(); 
    } 
} 
+0

@VMAtm: Zamyka aplikację, ale nie jest ponownie uruchamiany .. – Naju

+0

PS: Dzięki za edycję, VMAtm :) @rightPath musisz przeczytać inną wersję przez mx i struktury komponentów iskrowych :) Dzięki za poprawę :) – SourceSkyBoxer