Die Anwendung wird über einer anderen Anwendung ausgeführt

8

Ich möchte eine Aktivität machen, die über jede App geöffnet werden kann.

Normalerweise sehen Sie, selbst wenn die Aktivität als Dialog festgelegt ist, beim Wechseln zu meiner App meine App und im Hintergrund das Startprogramm:

Aber ich möchte, dass die App über jede App wie folgt geht: (made in photoshop):

Ich habe diese Frage Erstellen eines System-Overlays gesehen Fenster (immer oben) , aber in ICS gibt es keine Funktionalität für das Layout. Außerdem möchte ich ein Dialogfeld von meiner App aus geben, ohne die andere App zu minimieren ...

    
Android Joker 22.04.2012, 09:55
quelle

2 Antworten

21

es gibt viele Apps, die eine schwebende Ansicht über alles wie: airbrowser, LilyPad, Stick es, AirTerm, Smart Taskbar, aircalc ...

zeigen

Um diese Funktion zu erreichen, müssen Sie eine spezielle Berechtigung namens "android.permission.SYSTEM_ALERT_WINDOW" haben und so etwas verwenden:

%Vor%     
android developer 22.04.2012, 11:00
quelle
10

Ich bin einer der Entwickler des Tooleap SDK und wir haben uns auch mit diesem Problem beschäftigt. Im Grunde müssen Sie nicht SYSTEM_ALERT_WINDOW verwenden, um eine Aktivität über einer anderen anzuzeigen. Sie können einfach eine reguläre "geschrumpfte" Aktivität mit einem transparenten Hintergrund anzeigen.

Um eine "geschrumpfte Aktivität" zu erstellen, ändern Sie die Layoutparameter des Aktivitätsfensters in Höhe und Breite:

%Vor%

Fügen Sie Ihrer Aktivitätsdefinition in der Manifestdatei einen transparenten Hintergrund hinzu:

%Vor%

Auf diese Weise können Sie die Illusion einer schwebenden Aktivität erzeugen:

Beachten Sie, dass nur die Vordergrundaktivität fortgesetzt wird, während der Hintergrund pausiert wird. Aber für die meisten Apps sollte das kein Problem sein.

Jetzt bleibt nur noch übrig, wann die schwebende Aktivität gestartet werden soll.

Hier ist ein Beispiel einer "schwebenden" Taschenrechner-App, die eine reguläre Aktivität verwendet. Beachten Sie, dass die Aktivität unter dem Rechner zu einer anderen App gehört.

    
Danny 08.05.2014 10:04
quelle