WL 5.0.6.1 Android - Direct Update utrzymuje zasoby Native / Cordova aktywne / w pamięci (np. BusyIndicator), ale referencje są tracone

Mamy problem, gdy mamy następującą sekwencję:

Uruchamianie aplikacjiRozpoczynają się zasoby internetowePokaż wskaźnik zajętości (1)Połącz z serwerem WLZostanie uruchomiona aktualizacja bezpośredniaPonowne uruchomienie zasobów sieciowychPokaż wskaźnik zajętości (2)Połącz z serwerem WLPowodzenieZaładuj i zmień stronę powitalnąUkryj wskaźnik zajętości (2)

Ma to taki skutek, że w bezpośrednio aktualizowanych zasobach internetowych (oczywiście) tracimy / brakuje odniesienia do wskaźnika zajętości (1) i nie jesteśmy w stanie ukryć tego wskaźnika po uruchomieniu bezpośredniej aktualizacji. Tak więc mamy dwa wskaźniki (1) (2) otwarte i tylko jeden (2) jest zamknięty, stary (1) jest na zawsze.

Jednym z rozwiązań byłoby uzyskanie zdarzenia, zanim bezpośrednia aktualizacja zostanie uruchomiona / wykonana ... tam moglibyśmy ukryć nasz wskaźnik (1). Stałoby się to bardzo podobne do tego pytania:IBM Worklight - Jak mogę wykonać kod JavaScript przed aktualizacją aplikacji?

Bardziej ogólnym podejściem byłoby uruchomienie „głębszego” ponownego uruchomienia aplikacji ... co oznacza również ponowne uruchomienie rodzimej powłoki i wszystkich zasobów cordova. Następnie wszystkie rodzime zasoby, takie jak wskaźnik zajętości i inne rzeczy, powinny zostać usunięte i zresetowane, prawda?

Czy jest jakiś sposób na osiągnięcie tak „głębokiego” ponownego uruchomienia aplikacji po bezpośredniej aktualizacji? Czy ten problem jest znany?

AKTUALIZACJA 5 września

Widzieliśmy, że następujące zdarzenia są uruchamiane przed ponownym uruchomieniem zasobów sieciowych przez DirectUpdate:

window.addEventListener("beforeunload",
    function() { 
       WL.Logger.debug("busy test - unload2"); 
        app.busytest.hide();
            }
        , false);

window.addEventListener("unload",
    function() { 
       WL.Logger.debug("busy test - unload3"); 
         app.busytest.hide();
            }
        , false);

... ale niestety ukrywanie naszego busytestu WL.BusyIndicator nie działa już w tych wydarzeniach. Czy ktoś ma jakieś pomysły?

Ale może w przypadku DirectUpdate można umieścić jakiś inny kod czyszczenia?

questionAnswers(1)

yourAnswerToTheQuestion