Festlegen von Standardanwendungen über ADB


8

Ich habe ein Android-Gerät (Android 4.4) mit zwei Startern. Einer kommt mit dem Gerät und der andere ist hausgemacht. Ich habe folgende Fragen zu diesem Szenario:

  1. Wie kann ich den Standard-Launcher über ADB einstellen? (wie bei Auswahl und Drücken von Immer )
  2. Wie kann ich die Standard-Launcher-Auswahl über ADB löschen? (wie beim Aufrufen von Standardanwendungen und Löschen von Standardeinstellungen)

Bitte senden Sie keine Antworten oder Kommentare, die die Verwendung von ADB nicht berücksichtigen. Ich bin an keinem von denen interessiert.

Ich weiß auch bereits, wie man einen der Starter über ADB ( pm disable app_package_name) deaktiviert und dann wieder aktiviert, aber dies ist nicht dasselbe wie das Festlegen des Standardstarters oder das Festlegen der bevorzugten Aktivität. Sie können den Unterschied im nächsten Bild sehen:

Geben Sie hier die Bildbeschreibung ein


1
Ist die Verwendung von Schlüsselereignissen zulässig? Außerdem wird die Einstellung für Standard-Apps darin gespeichert /data/system/users/USERID/package-restrictions.xml. Benutzer können es nicht ohne Root-Zugriff schreiben.
Feuerlord

@Firelord Nein, die Verwendung von Schlüsselereignissen ist nicht gestattet. Immer noch +1 für die Idee, vielleicht für die Zukunft. In Bezug auf die /data/system/users/USERID/package-restrictions.xmlDatei ist das genau das, was ausgeführt wird pm disable app_package_nameund dann ausgeführt pm enable app_package_namewird.
Storo

Antworten:


1

Es ist nicht erforderlich, den Standard-Launcher zu deinstallieren. Sie müssen vorher den Paketnamen kennen. Wenn Sie nicht wissen, müssen Sie ihn verwenden adb shell cmd shortcut get-default-launcher.

Um Ihren Launcher als Standard festzulegen, müssen Sie nur Folgendes aufrufen

adb shell cmd package set-home-activity "your.package/.YourLauncherActivity"

0

Sie können das mit ADB festgelegte Standardprogramm auf folgende Weise entfernen (deinstallieren) :

adb uninstall app.package  ..... //for example (com.example.homeapp)

Wenn Sie die App nicht entfernen möchten, finden Sie hier einen kurzen Hack:

  • ADB Shell
  • bin start -a android.intent.action.MAIN

Auf diese Weise haben Sie einen Picker mit allen Anwendungen auf den Geräten, die zuhören Haupt Aktion

  • Wählen Sie eine beliebige Startbildschirm-App aus. Gehen Sie dann zu den Einstellungen und legen Sie sie als Standard fest.

Von dieser Antwort kopiert

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.