Ich entwickle eine Netzwerkmonitor-App, die im Hintergrund als Dienst ausgeführt wird. Ist es möglich, eine Benachrichtigung / einen Anruf zu erhalten, wenn der Bildschirm ein- oder ausgeschaltet wird?
Es existiert in Android unter Verwendung des folgenden Codes:
%Vor%screenOnOffReceiver wird dann aufgerufen, wenn der Bildschirm ein- / ausgeschaltet wird. Gibt es eine ähnliche Lösung für iOS?
Bearbeiten: Das Beste, was ich bisher gefunden habe, ist UIApplicationProtectedDataWillBecomeUnavailable ( Erkennen, ob der iPhone-Bildschirm aktiviert ist / aus ), aber der Benutzer muss Data Protection (Passwortschutz) auf dem Gerät aktivieren.
Sie können Darwin-Benachrichtigungen verwenden, um zuzuhören für die Ereignisse. Ich bin mir nicht 100% ig sicher, aber es sieht für mich aus, als würde ich auf einem jailbroken iOS 5.0.1 iPhone 4 laufen, dass eines dieser Ereignisse das ist, was Sie brauchen:
%Vor%Update: Außerdem wird die folgende Benachrichtigung gesendet, wenn das Telefon gesperrt wird (aber nicht, wenn es entsperrt wird):
%Vor%Um dies zu verwenden, registrieren Sie sich für das Ereignis wie folgt (das registriert nur ein Ereignis, aber wenn das nicht für Sie funktioniert, versuchen Sie es mit den anderen):
%Vor% Dabei ist displayStatusChanged
Ihr Rückruf für Ereignisse:
Wenn Sie möchten, dass dieser Code im Hintergrund als Dienst ausgeführt wird und Sie jailbroken sind, würde ich empfehlen, iOS Starten Sie Daemons . Im Gegensatz zu einer App , die Sie einfach im Hintergrund laufen lassen, kann ein Launch-Daemon nach einem Neustart automatisch gestartet werden und Sie müssen sich nicht um iOS-Regeln für Anwendungen kümmern, die Aufgaben im Hintergrund ausführen.
Lassen Sie uns wissen, wie das funktioniert!
Unter Verwendung der Benachrichtigungs-API der unteren Ebene können Sie den Lockstatus abfragen, wenn eine Benachrichtigung empfangen wird:
%Vor%Natürlich muss Ihre App eine UIBackgroundTask starten, um die Benachrichtigungen zu erhalten, was die Nützlichkeit dieser Technik aufgrund der begrenzten Laufzeit von iOS einschränkt.
Tags und Links objective-c ios notifications broadcast jailbreak