Deaktivieren der Schaltfläche "Force Stop" in Android

7

Okay, ich bin mir ziemlich sicher, dass dies nicht möglich ist, aber ein Kunde hat mich gebeten, dies in einer unserer Android-Anwendungen zu tun, die wir für sie entwickelt haben.

Was sie wollte, ist, dass wenn unsere Anwendung läuft und der Benutzer zu:

navigiert %Vor%

, die Schaltfläche für "Force Stop" ist deaktiviert.

Ist das möglich? Wenn es möglich ist, könnte mir jemand zeigen, auf welche Art ich gehen sollte, oder wenn es nicht möglich ist, wie ich mit einem gültigen Argument basierend auf Fakten, sollte ich die Nachrichten zu ihr brechen.

Aktualisierung: Sie hat mir gerade einen Screenshot geschickt, der ihrer Meinung nach bestätigt, dass es eine Android-Anwendung gibt, die den "Force Stop" -Button deaktiviert. Wie soll ich das ihr erklären?

    
Rhama Arya Wibawa 28.02.2012, 06:48
quelle

6 Antworten

11

Dies ist aus gutem Grund nicht aus der Ferne möglich.

Sie sollten ihr sagen, dass dies ein riesiges Sicherheits-Desaster wäre. Stellen Sie sich vor, was passieren würde, wenn Sie Apps erstellen könnten, die nur zu Ihrer Prozessorzeit gegessen haben, indem Sie eine Wakelocke gedrückt haben, und Sie könnten sie nicht töten. Das wäre schrecklich.

Wenn Sie sich fragen, ob Sie das "Extra-App" -Verhalten des Geräts ändern können, lautet die Antwort normalerweise normalerweise * no *. Sie sollten den Standpunkt einnehmen, dass nichts auf dem Gerät Ihnen gehört, um neben Ihrer App und (in einem begrenzten Umfang) die Ressourcen zu kontrollieren, auf die Sie Zugriff haben.

Keine andere App hat diese Art von Kontrolle, daher ist es auch nicht vernünftig zu erwarten, dass dies auch Ihre Kunden tun würden. Die Tatsache, dass sie um diese Kontrolle bittet, beinhaltet jedoch etwas anderes: dass sie sich Sorgen machen, dass der Nutzer die App stoppt und dann etwas Schlimmes passiert (die Standorte werden nicht mehr synchronisiert, die Daten werden nicht mehr an das Netz gesendet usw.) ...). Dies würde bedeuten, dass Sie die Widerstandsfähigkeit der App für verschiedene Situationen verbessern sollten. Denken Sie daran, Ihre App kann sogar jederzeit von Android ausgeschaltet werden (zum Beispiel im Falle von wenig Speicher).

    
Kristopher Micinski 28.02.2012, 07:04
quelle
8

So deaktivieren Sie die Schaltfläche "Stoppen erzwingen"

Kurze Antwort: Verwenden Sie die Geräteadministrations-API .

Wie kann ich das meinem Kunden erklären?

Zeigen Sie dies Ihrem Kunden. Es ist eine nette Diashow, die einen leicht verständlichen Überblick über die Geräteverwaltungs-API und ihre Verwendung bietet.

Wie zeige ich, dass es funktioniert?

Ja, zurück zu deinem Job. Verwenden Sie den oben bereitgestellten API-Link und die Api-Demos , die im Google-Beispiel enthalten sind Sammlung , um herauszufinden, wie Sie dies in Ihre App integrieren können.

  1. Erstellen Sie die Demo und führen Sie sie auf Ihrem Gerät aus.
  2. Wählen Sie API Demos->App->Device Admin->General->Enable admin .
  3. Wählen Sie Activate , sobald Sie von der Geräteverwaltungs-API mit dem Aktivierungsbildschirm dazu aufgefordert werden.
  4. Beenden Sie die App und versuchen Sie, die App über das Einstellungsmenü Ihres Geräts zu verwalten (die Einzelheiten für diesen Schritt sind je nach Gerät unterschiedlich).
  5. Beim Betrachten des "App-Info" -Bildschirms der Api-Demo sollten Sie sehen, dass sowohl Force Stop als auch Uninstall deaktiviert sind.

Wie mache ich das in meiner eigenen App?

Lesen Sie DeviceAdminSample.java in der App Api Demos , um sich inspirieren zu lassen. Sie benötigen Folgendes:

Der folgende Code ruft den Aktivierungsbildschirm auf:

%Vor%

Allerdings gibt es ein paar andere Stücke, die Sie brauchen, um das zu funktionieren:

  1. Ein Broadcast-Empfänger, der von DeviceAdminReceiver abgeleitet ist.
  2. Einträge in Ihrer Manifest-Datei, die sich auf den obigen Broadcast-Empfänger beziehen.
  3. Berechtigungen in Ihrem Manifest für die Verwendung der Geräteadministrator-API.
  4. Eine XML-Datei, aus der hervorgeht, auf welche Richtlinien Ihre App zugreifen kann.

All dies finden Sie in den obigen Links. Viel Glück mit Ihrem Kunden!

    
gonzobrains 22.06.2013 00:13
quelle
4

Ich denke, der Screenshot des Geräts hat uns verwirrt. Auch ich kann meine Anwendung zeigen, die auf dem Gerät installiert ist und die Schaltfläche "Force Stop" ist deaktiviert. Wo ich nichts Bestimmtes getan habe.

Der Grund für die Deaktivierung der "Force Stop" -Schaltfläche ist, dass diese spezielle Anwendung momentan NICHT läuft. Daher hat die Schaltfläche keine Bedeutung. @Rhama können Sie Ihren Client bitten, die Anwendung einmal zu starten, drücken Sie die Home-Taste des Geräts, und gehen Sie zu den Einstellungen und sehen. Sicherlich wird die "Force Stop" Taste dieses Mal aktiviert.

Grüße,

Rajan

    
Rajan 07.03.2012 10:06
quelle
4

Von ICS aus ist das Deaktivieren von Force stop möglich. Wenn Ihre App über einen aktiven Geräteadministrator verfügt, lässt das Framework den Benutzer den Prozess nicht beenden

    
nandeesh 13.08.2012 13:43
quelle
2

Hey, ich denke, es ist durchaus möglich, den "Force Stop" -Button zu deaktivieren ... überprüfe Kaspersky Parental Control vom Markt macht es das gleiche. Ihr Dienst läuft im Hintergrund, dann ist auch der Force-Stop-Button deaktiviert.

  

Der Anwendungsdienst wird im Hintergrund ausgeführt

    
Niraj Gupta 19.07.2012 13:16
quelle
0

Sie können den Force-Stop deaktivieren, wenn die App über Administratorrechte verfügt. Aber sobald diese Adminrechte widerrufen werden, ist es wieder normal. in android 4 konnte jedoch eine anwendung namens applock (domobile) das verhindern, indem sie ein passwort verlangte, als sie versuchten, die admin-rechte zu ändern. Es konnte nur getan werden, indem Sie ein zusätzliches Programm installieren, das applock Sie gebeten hat. Und ich schätze, dass dies sogar als Sicherheitslücke betrachtet werden könnte, da es in Android 5 nicht mehr funktioniert.

    
Sina 11.11.2015 09:53
quelle

Tags und Links