Beim Einschalten des Telefons wird standardmäßig aufgefordert, die SIM-PIN einzugeben. Dies ist eine gute Sicherheitsmaßnahme, um zu verhindern, dass "Fremde" Kosten verursachen. Jetzt gilt das Gleiche bei der Rückkehr aus dem Flugzeugmodus: Man muss die SIM-PIN erneut eingeben. Was bestimmte Energiesparer unbrauchbar macht: Wenn eine App beispielsweise bei Signalverlust in den Flugzeugmodus wechselt (siehe: Was ist Cell Standby und wie kann ich verhindern, dass sie meinen Akku verbraucht? ), Kann sie ohne Benutzerinteraktion nicht zum normalen Betrieb zurückkehren .
Ich suche nach einer Möglichkeit, dies selektiv zu deaktivieren: Lassen Sie die PIN-Anforderung beim Einschalten des Geräts aktiv sein - werden Sie jedoch nicht nach der SIM-PIN gefragt, wenn Sie aus dem Flugzeugmodus zurückkehren.
Bitte verwechseln Sie dies nicht mit "Schlüsselschutz": Ich frage nicht nach der Bildschirmsperre (PIN / Muster / Passwort). Hier kenne ich mich aus, da es eine API für Apps gibt (so kann ich diese zB mit Tasker vorübergehend deaktivieren ).
Ich weiß, dass dies mit Samsung-Geräten funktioniert - aber ich möchte vorzugsweise eine geräteunabhängige Lösung, die für alle Hersteller funktioniert.
Antworten:
HAFTUNGSAUSSCHLUSS
Umgehung
Ich habe eine Problemumgehung für das Problem gefunden, das auf einem Samsung Galaxy S2 mit installiertem Cyanogenmod 10.2 und Dorimanx Kernel 9.41 hervorragend funktioniert. Die notwendigen Schritte sind wie folgt:
Stell sicher, dass dein Gerät gerooted ist.
Laden Sie das Xposed Framework Installer herunter und installieren Sie es .
Wenn Xposed in naher Zukunft irgendwo nach root fragt, gewähren Sie es .
Öffnen Sie die App und klicken Sie auf
Framework
-Tab.Klicken Sie auf
Install/Update
.Starten Sie neu .
Laden Sie den Jelly Bean 4.x Airplane Mode Helper herunter und installieren Sie ihn .
Öffnen Sie
Xposed Framework Installer
-App erneut und wählen SieModules
.Häkchen setzen (aktiv setzen)
Jelly Bean 4.x Airplane Mode Helper
.Starten Sie neu .
Öffnen
Jelly Bean 4.x Airplane Mode Helper
.Häkchen (aktiv setzen) Aktiviert .
Starten Sie neu .
Das ist es! Flugzeug - Modus sollte wieder funktionieren wie in früheren Android - Versionen und ist nicht fragen , für SIM-PIN nicht mehr , wenn er ausgeschaltet wird. Dies ist jedoch beim Start immer noch der Fall, sodass Ihre SIM-Karte etwas sicherer ist. Ich habe ein automatisiertes Verfahren zum Speichern von Batterien mit Lama-Standortprofilen eingerichtet , das dem hier beschriebenen ähnlich ist (Danke, Izzy), und es funktioniert einwandfrei.
Viel Glück, Leute!
quelle
Die Antwort liegt in der Quelle ... es scheint, dass die Eigenschaft, Pin-Lock anzufordern, in
build.prop
oder eingebaut istdefault.prop
.Schauen Sie sich die Referenz in der TelephonyManager- Quelle zwischen den Zeilen 735 und 755 an.
Der Schlüssel ist
TelephonyProperties.PROPERTY_SIM_STATE
der, auf den an anderer Stelle zwischen den Zeilen 94 und 98 verwiesen wird .Nachdem Sie den Quellcode hier auf meinem Computer durchsucht haben, gebe ich Ihnen eine Vorstellung davon, wie oft diese Methode
getSimState
aufgerufen wird. Beachten Sie die Namen der Java-Quelle, um festzustellen, wie sie in Android integriert ist, nicht nur in der Telefonieebene, sondern auch anderswo.Geben diese Dateinamen im Sperrbildschirm einen Hinweis?
Theorie
Dies erfordert an dieser Stelle root, indem Sie das aufrufen
adb shell
und aufrufen,getprop
undsetprop
um dies zu tun, ist der einzige Teil dies, indem Sie aufrufenadb shell getprop
erhalten die relevanten Informationen wie unten gezeigt zurückDiese subtile Eigenschaft scheint ab dem Moment des Einschaltens dynamisch in einem Backing-Property-Store erhalten zu bleiben und wird entsprechend der Anzahl der Dinge, dem Service und dem versehentlichen Herunterfallen des Mobilteils angepasst, wodurch die SIM-Karte möglicherweise herausgeschleudert wird sein Leser, der den Status der Karte in " nicht bereit " oder " unbekannt " ändern würde . ( Ref: system / core / include / cutils / properties.h und system / core / toolbox / [ getprop | setprop ] .c)
An diesem Punkt könnte theoretisch durch Aufrufen von setprop vor dem Sperren des Bildschirms dieses vorübergehend umgangen werden, aber andererseits könnte dies durch die Telefonieebene zurückgesetzt werden! Habe das nicht versucht! Was dazu führt ...
Fazit
Die einzige Möglichkeit, dies auszuschalten, besteht darin , die Pin-Lock-Anforderung auf der eigentlichen SIM-Karte effektiv zu deaktivieren . Dort wird das "magische" Bit-Flag auf dem gespeichert, in dem die RIL-Schicht der Telefonie es über die proprietäre Bibliothek von htc / samsung / qualcomm einliest, und dies würde verhindern, dass die Eigenschaft "PIN_REQUIRED" bis zum Ende erhalten bleibt die Schichten von Android.
Eine mögliche Problemumgehung nur für Android-Entwickler :)
Dies würde das Hacken und Neukompilieren der Quelle erfordern. Für den Flugzeugmodus kann beim Aufrufen dieses Modus und Verlassen des Flugzeugmodus die Eigenschaft in zwei Teile aufgeteilt werden. Gsm.sim.state kann unverändert bleiben, es wird jedoch eine andere Eigenschaft entwickelt, z. B. gsm.sim.state. airplane.mode und weisen Sie einen Wert nach dem Vorbild von zu
SIM_STATE_PIN_NOT_REQUIRED
und ändern Sie die Überprüfung des Flugzeugmodus, um diese Eigenschaft zu lesen. Wenn diese Option aktiviert ist, wird das Pin-Dialogfeld nicht angezeigt. Andernfalls wird es wie gewohnt dazu aufgefordert.quelle
Ich bin mir nicht sicher, ob Sie das tun müssen, was Sie versuchen.
Sie könnten stattdessen:
Tasker
Aufgaben ein, um alles ein- und auszuschalten, was der Aktivierungs- / DeaktivierungsmodusAirplane
bewirkt.Airplane
Modus. Verwenden Sie IhreTasker
Aufgaben.Möglicherweise müssen Sie überprüfen, ob Apps aktiviert sind, um ein Hardware-Radio automatisch einzuschalten. Beobachten Sie, ob eine App versucht, die Hintergrundsynchronisierung durchzuführen, oder was auch immer. Möglicherweise versucht sie, deaktivierte Radios einzuschalten. Wenn ja, deaktivieren Sie die Fähigkeit dieser App, Ihr z. B. WLAN automatisch einzuschalten. Ich sage dies, weil der
Airplane
Modus die unerwarteten WiFi-Verbindungen sicherlich vorher gestoppt hat, aber nicht mehr, wenn Sie diese Antwort versuchen.Sie können auch festlegen
Tasker
, dassAirplane
beim Herunterfahren immer in den Modus gewechselt wird. Auf diese Weise sehen Sie die PIN-Sperre beim Booten.quelle