App aus einem Thread heraus starten

  • Hallo,
    ich bin Android Programmieranfänger und kämpfe seit Tagen mit einem scheinbar unlösbaren Problem:
    Ich habe eine Main-Applikation die einen Service startet.
    Der Service wiederum startet einen unabhängigen Thread, der auf eingehende TCP-IP-Pakete lauscht.
    Nach dem Start des Service wird die Main-Applikation wieder beendet, der Service und der Thread läuft
    im Hintergrund weiter.
    Trifft ein bestimmtes TCP-IP Paket ein, soll der Thread die Mainapplikation erneut starten,und diesen
    Start bekomme ich einfach nicht hin.
    Im Internet gibt es zwar eine Menge Beispiele,von denen ich aber keines kompilieren kann, weil die dort
    genannten Funktionen vom Thread heraus nicht aufrufbar sind.
    Hat jemand eine Idee, wie das funktionieren könnte?


    Ein oft genanntes Beispiel lautet so:


    Code
    final Intent intent = new Intent(getApplicationContext(), MainActivity.class);
                        intent.setAction(Intent.ACTION_VIEW);
                        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                        intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    
    
                        startActivity(intent);

    In diesem Beispiel kommt beim kompilieren eine Fehlermeldung für getApplicationContext() und startActivity()

  • Du kannst einen Handler benutzen um aus dem Thread heraus mit dem Service zu kommunizieren.


    Du solltest aber vorsichtig sein mit deiner anwendung. Kann der Service keine Activity mehr starten, kannst du memory leaks erzeugen. Denn dann hast du keine möglichkeit mehr auf den service zuzugreifen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!