2 Stimmen

Problem in einer einzelnen Instanz einer Aktivität in Android

Ich habe zwei Aktivitäten. A y B . A startet B . Beide laufen auf dem Bildschirm, und beide sind sichtbar. Jetzt sagen B sichtbar ist.

Mit einem speziellen Tastendruck möchte ich die A in den Vordergrund und macht sie aktiv. Das Problem, dem ich gegenüberstehe, ist, dass, wenn die Sondertaste gedrückt wird, eine andere Instanz von A wird gestartet und die neue Instanz wird in den Vordergrund gestellt.

Aber ich will das Original A nach vorne zu kommen. Ich möchte diese Änderung in der Framework-Schicht und nicht anwendungsspezifisch vornehmen, indem ich die singleInstance Thema im LaunchMode in AndroidManifest archivo.

0 Stimmen

0 Stimmen

Ach ja, das ist eine ROM-Frage

1voto

mario83 Punkte 11

Aus der Android-Dokumentation von Google:

Festlegung der Startmodi

Mit den Startmodi können Sie festlegen, wie ein neue Instanz einer Aktivität mit der aktuellen Aufgabe verbunden wird. Sie können verschiedene Startmodi auf zwei Arten definieren: Über die Manifestdatei

Wenn Sie eine Aktivität in Ihrem Manifestdatei deklarieren, können Sie angeben, wie die Aktivität mit Aufgaben verknüpft werden soll wenn sie startet. Absichtsflags verwenden

Wenn Sie startActivity() aufrufen, können Sie ein Flag in das Intent einfügen das deklariert wie (oder ob) die neue Aktivität sich mit der aktuellen Aufgabe verbinden soll.

Sie können also Ihre Aktivität A von Aktivität B aus starten, indem Sie eine Absicht und die Übergabe der FLAG_ACTIVITY_SINGLE_TOP Flagge.

0voto

Macarse Punkte 89366

Warum wollen Sie das nicht mit dem Manfiest erreichen?

Wenn Änderungen im Manifest über den Code möglich wären, könnte die Anwendung ihre Berechtigungen nach der Installation ändern, was nicht sinnvoll ist.

0 Stimmen

Die Änderung, die ich vornehmen möchte, sollte für alle Anwendungen sichtbar sein und nicht nur für eine bestimmte Anwendung, so dass ich das Framework ändern muss, so dass, wann immer die spezielle Taste gedrückt wird, die Aktivität auf der Rückseite in den Vordergrund kommen sollte, ohne eine neue Instanz zu starten.

0 Stimmen

@Revathi K J: Oh, du machst also ein benutzerdefiniertes ROM. Versuchen Sie zu sehen, wo Android die xml parst und dort den Hardcode singleInstance Flagge.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X