Holen Sie sich den Namen der neu installierten App mit Tasker

Ich versuche, das folgende Tasker-Projekt einzurichten: Wenn eine neue App auf einem meiner Geräte installiert wird, senden Sie eine Benachrichtigung an alle anderen Geräte mit dem Namen der App. Wenn ich eine funktionierende API finde, fragt die Aufgabe im Idealfall die API nach dem App-Link im Play Store unter Verwendung des Namens ab.

Wie auch immer, meine Frage ist: Ist es möglich, den Namen der neu installierten App mit Tasker zu erhalten? Oder zumindest der Paketname.

Antworten (1)

Ja, natürlich ist es möglich. Der einfachste Weg ist der native Weg, der Weg, den Android-Apps verwenden, um zu wissen, welche App im System installiert wurde. Sie lernen diese Informationen kennen, indem sie sich eine Sendungsabsicht mit Aktion anhören android.intent.action.PACKAGE_ADDED. Die darin enthaltenen Daten haben den Paketnamen.

Vorausgesetzt, Sie haben auf dem PC eingerichtet, können Sie diese Informationen selbst überprüfen, indem Sie eine neue App in Ihrem System installieren und anschließend ausführen

adb shell dumpsys activity

Suchen Sie nach der Zeichenfolge android.intent.action.PACKAGE_ADDEDunter Historische Übertragungen [Hintergrund]. Beispiel:

#7: BroadcastRecord{426162e8 u0 android.intent.action.PACKAGE_ADDED }
    act=android.intent.action.PACKAGE_ADDED dat= Paket:de.defim.apk.protectedapps flg=0x8000010 (hat Extras)
    Extras: Bundle[{android.intent.extra.UID=10150, android.intent.extra.user_handle=0}]

Der Tasker ermöglicht das Abhören von Sendungen als Auslöser. Tasker wie folgt einrichten:

  • Profil: Ereignis → System → Absicht erhalten

    • Aktion:android.intent.action.PACKAGE_ADDED
    • Planen:package
    • lass den Rest unberührt
  • Aufgabe: (Aktionen):

    • Variablen → Variablenaufteilung

      • Name:%intent_data
      • Splitter::

        Der Paketname würde nun in der Variablen %intent_data2(einer lokalen Variablen) gespeichert werden. Verwenden Sie es, wo immer Sie wollen.

    Um das App-Label zu erhalten, können Sie entweder die eingebaute Funktionalität von Tasker verwenden oder aapt(erfordert Root-Zugriff)

    • App → Test-App:

      • Typ: Paketname
      • Daten:%intent_data2
      • Ergebnis speichern in:%App_name

        Das App-Label kann nun aus der Variablen abgerufen werden %App_name.

Weitere Informationen zur Handhabung von Absichten in Tasker finden Sie unter Zugreifen auf Absichtsdaten .

Vielen Dank, funktioniert wie ein Zauber! Ich brauche viel Übung mit Absichten..