0

Ich habe einen einfachen Launcher, der alle Anwendungen in einer ListView erfasst. Ich möchte nur ein Feature in diesem Launcher; wenn ein bestimmter Gegenstand (zB 5. Gegenstand) in der Listenansicht angeklickt wird, möchte ich alle zuvor geöffneten Apps vollständig beenden und dann die 5. App öffnen, die dort eingetragen ist. Ich weiß nicht, wonach ich suchen soll. Ich habe die Launcher-App als Geräte-Admin und Gerät Besitzer und ich denke, dass es etwas mit DevicePolicyManager Klasse zu tun hat. Ich habe auch versucht, finishActivity (int requestcode), aber es hat nicht funktioniert. Unten sind die onItemClick() Zuhörer:Erstellen Sie Launcher, die alle zuvor geöffneten Anwendungen tötet

list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> av, View v, int pos,long id) { 
       Intent i = manager.getLaunchIntentForPackage(apps.get(pos).name.toString()); 
       AppsListActivity.this.startActivity(i); 

      } 
     }); 
+0

Ich glaube nicht, dass Ihre Nicht-System-App andere Apps * töten * kann. –

+0

Aber diese Nicht-System-App (Launcher) ist auch die Gerätebesitzer-App und der Geräte-Admin. Kann es von hier aus nicht das Funktionieren anderer Apps diktieren? –

Antwort

0

Ein wenig mehr Kontext hinter warum Sie die zuvor geöffnete App töten, bevor die Aktivität der nächsten App würde helfen möchte. Wenn ich richtig verstehe, wäre es immer nur eine App zu töten, da immer nur eine App läuft, oder?

Wenn Sie die Apps nicht vollständig löschen müssen, wäre es viel eleganter, alle Pakete setPackagesSuspended (wenn Sie API 24 oder höher ausführen) außer dem ausgewählten und natürlich Ihrem Launcher zu suspendieren. Ein angehaltenes Paket kann keine Aktivitäten starten. Ihre Benachrichtigungen werden ausgeblendet, sie werden nicht in den aktuellen Nachrichten angezeigt, können keine Toasts oder Dialoge anzeigen oder das Gerät anrufen. Wenn Sie sich Sorgen um Ressourcen machen, gibt es einen Grund, warum Sie Android nicht vertrauen können, um die Ressourcen zu verwalten und Prozesse zu beenden, wenn dies erforderlich ist?

Verwandte Themen