Android Prozess/APP beenden verhindern

  • Antworten:8
M.K
  • Forum-Beiträge: 8

08.12.2011, 16:09:29 via Website

Hallo Leute,

ich kenne das Forum schon seit längerem aber habe mich erst heute hier registriert. Beschäftige mich aktuell mit Android Apps programmierung und stehe vor einem Problem wozu ich leider keine Antwort gefunden habe.

Ich brauche für einen Webservice eine App die nach dem Booten automatisch starten muss. Außerdem muss ich das beenden der App verhindern. Falls die App beendet wird soll Sie anschliesend wieder erneut gestartet werden. Das hat den Hintergrund das somit alle anderen Apps nicht benutzbar sind wie z.B. Telefonie etc.

Ich brauch also eine Art "Kiosk"-Mode wo jegliche Kombinationen deaktiviert sind um die App zu schliesen.

Hat einer von euch eine Idee dies bezüglich? Freue mich über jeden Vorschlag.

Antworten
tom_cat
  • Forum-Beiträge: 11.132

08.12.2011, 16:22:23 via Website

Ich verschiebe Dich mal zu den Entwicklern, da wird Dir bestimmt besser geholfen....

.... ein herzliches Willkommen auf AndroidPIT und noch viel Spaß bei uns.

— geändert am 08.12.2011, 16:22:54

Natürlicher Verstand kann fast jeden Grad von Bildung ersetzen, aber keine Bildung den natürlichen Verstand. Arthur Schopenhauer App Reviews nach Einsatzzweck und hier noch das: Das-AndroidPITiden-Buch

Antworten
M.K
  • Forum-Beiträge: 8

08.12.2011, 16:29:28 via Website

Vielen Dank. Sorry für die falsche platzierung

Antworten
Daniel online
  • Forum-Beiträge: 282

11.12.2011, 11:39:42 via Website

Um den Service direkt beim Booten zu starten kannst du dafür einen Broadcast-Receiver registrieren.

Du kannst verhindern das jemand deine App über die Backtaste schließt, soweit mir bekannt ist kannst du aber nicht den Home-Button überschreiben. Somit kann der User so oder so immer die App ohne Probleme verlassen.

Wofür willst du überhaupt verhindern das jemand deine App beendet.

lg,
Daniel

Antworten
Daniel
  • Forum-Beiträge: 177

12.12.2011, 11:18:48 via Website

Ich denke nicht, dass das möglich sein wird. Damit würde man es den Autoren von Schadprogrammen nämlich ziemlich leicht machen. Automatisch ohne zutun des Users starten + immer laufen + sich nicht beenden lassen sind ja auch die Anforderungen an Malware.

Antworten
San Blarnoi
  • Forum-Beiträge: 2.545

12.12.2011, 11:54:09 via Website

Der Endanwender installiert die App selber auf seinem Gerät und soll danach automatisch beschränkt werden?
Oder bekommt der Anwender, der beschränkt werden soll, das Gerät fertig eingerichtet und soll damit dann nur bestimmte Dinge tun können?

Antworten
M.K
  • Forum-Beiträge: 8

12.12.2011, 16:11:06 via Website

Vielen Dank für die Antworten.

Ich habe nicht die Absicht den User zu schaden. Auch die App erscheint nicht im Market. Folgendes Szenario:

Der User bekommt ein fertiges Gerät mit einer Applikation die bestimmte User-Eingaben erfasst und an ein Server übermittelt. Der User soll sonst nichts anderes mit dem Gerät tun. Ich habe das jetzt so gelöst:

Ich habe eine App als launcher registriert und habe die Back-Taste abgefangen. Auch die Home Taste habe ich abgefangen bis auf eine Funktion. Wenn man die Home Taste lange drückt kommt ja das Menü mit den letzten Apps. Wie kann ich verhindern das dieses Menü kommt.

Ich hatte folgende Idee. Ich rufe die Methode OnPause() auf und starte die App erneut bzw. stelle es wieder auf Activ. Hat jemand eine Idee wie ich das realisieren kann?

Vielen Dank nochmal.

Antworten
Thomas B.
  • Forum-Beiträge: 1

17.12.2011, 20:20:57 via Website

Besser wär es Du proggst ein App für Apple, die sind sicher ganz scharf auf sowas ;)

Antworten
San Blarnoi
  • Forum-Beiträge: 2.545

17.12.2011, 21:12:24 via Website

Thomas, nur weil du etwas nicht verstehst, kann es trotzdem sinnvoll sein - stell' dir zB einen Arzt vor, der seine Patienten einen Fragebogen ausfüllen lassen möchte, ohne den anschließend vom Papier manuell in eine auswertbare Form überführen zu müssen.
Wäre es da nicht sinnvoll zu verhindern, das die Patienten ihm die Geräte verkonfigurieren oder im Internet surfen, statt die Fragen zu beantworten?

Ansgar MLudwig H.

Antworten