Verhindern Sie, dass NetD Sockets zerstört, wenn das Android-Gerät nicht aufgeladen wird

Benutzer von Android Marshmallow und Nougat berichten manchmal, dass Netd Steckdosen zerstört, wenn ihr Gerät nicht aufgeladen wird. Oft zeigt der Logcat Folgendes an:

06-23 12: 38: 17.576 522 2676 I Netd: 3 Sockets für UidRanges zerstört {10000-2147483647} skip = {1001 1027 10010 10013 10018 10021 10035 10037 10064 10081} in 1,2 ms

Dies ist tatsächlich unglaublich einfach zu beheben, so einfach, dass es unter „Unaufmerksamkeitsblindheit“ fällt – eine gründliche Fehlerbehebung durchzuführen, während etwas in Sichtweite fehlt. Die Wahrheit ist, der Schuldige für dieses Problem ist die in Marshmallow 6.0 eingeführte und in Nougat aktualisierte Android Doze-Funktion.

Der Doze-Modus wird aktiviert, wenn ein Gerät für einen bestimmten Zeitraum unberührt bleibt. Wenn Doze aktiviert wird, führt Ihr Gerät Folgendes aus:

  • Der Netzwerkzugriff ist ausgesetzt.
  • Das System ignoriert Wake-Sperren.
  • StandardalarmManager-Alarme (einschließlich setExact () und setWindow ()) werden auf das nächste Wartungsfenster verschoben.
  • Wenn Sie in Doze Alarme einstellen müssen, die ausgelöst werden, verwenden Sie setAndAllowWhileIdle () oder setExactAndAllowWhileIdle ().
  • Mit setAlarmClock () eingestellte Alarme werden weiterhin normal ausgelöst – das System beendet Doze kurz vor dem Auslösen dieser Alarme.
  • Das System führt keine Wi-Fi-Scans durch.
  • Das System lässt keine Synchronisierungsadapter laufen.
  • Das System lässt JobScheduler nicht laufen

Hier haben Sie also zwei Möglichkeiten:

Option 1: Passen Sie Ihre Apps über Whitelisting-Berechtigungen an Doze an

Sie können die Whitelist manuell unter Einstellungen> Batterie> Batterieoptimierung konfigurieren. Alternativ bietet das System Apps die Möglichkeit, Benutzer aufzufordern, sie auf die Whitelist zu setzen.

Eine App kann das auslösen ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS Absicht, den Benutzer direkt zur Batterieoptimierung zu führen, wo er die App hinzufügen kann.

Eine App mit dem REQUEST_IGNORE_BATTERY_OPTIMIZATIONS Die Berechtigung kann einen Systemdialog auslösen, in dem der Benutzer die App direkt zur Whitelist hinzufügen kann, ohne zu den Einstellungen zu wechseln. Die App feuert a ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS Absicht, den Dialog auszulösen.

Option 2: Deaktivieren Sie Doze vollständig auf Ihrem Gerät – nicht empfohlen, aber es ist Ihr Telefon

Laden Sie die App herunter “Doze Settings EditorStarten Sie es auf Ihrem Gerät, starten Sie es und stellen Sie die folgenden Parameter ein:

  1. dumpsys deviceidle deaktivieren
  2. idle_to 1
  3. max_idle_to 1

Eine vollständige Erläuterung der Parameter des Doze Settings Editor:

Inaktives Timeout – inactive_to
Dies ist die Zeit, nach der wir inaktiv werden und den Bewegungssensor untersuchen, um festzustellen, ob das Gerät in Ruhe gelassen wird. Wir tun dies nicht sofort nach dem Inaktivieren, nur weil wir den signifikanten Bewegungssensor nicht ständig ausführen möchten, wenn der Bildschirm ausgeschaltet ist.
Sensing Timeout – sensing_to
Wenn wir in dieser Zeit keinen Rückruf von AnyMotion erhalten + locating_to, wechseln wir von STATE_SENSING zu STATE_INACTIVE, und alle AnyMotion-Rückrufe, die sich nicht in STATE_SENSING befinden, werden ignoriert.
Locating Timeout – locating_to
So lange werden wir warten, bis wir versuchen, einen guten Standort zu finden, bevor wir in den Leerlaufmodus wechseln.
Standortgenauigkeit – Standortgenauigkeit
Die gewünschte maximale Genauigkeit (in Metern) betrachten wir als gut genug, um im Leerlauf weiterzumachen. Wir werden versuchen, eine Genauigkeit zu beheben, die mindestens so gut ist oder bis locating_to abläuft.
Zeitlimit für inaktive Bewegung – motion_inactive_to
Dies ist die Zeit, nachdem wir Bewegung gesehen haben, die wir warten, nachdem wir inaktiv geworden sind, bis wir wieder nach Bewegung suchen.
Leerlauf nach inaktivem Timeout – Leerlauf_nach_inaktiv_zu
Dies ist die Zeit, in der wir nach Ablauf des inaktiven Zeitlimits auf signifikante Bewegungen warten, bis wir das Gerät wirklich als inaktiv betrachten.
Zeitüberschreitung bei ausstehendem Leerlauf – idle_pending_to
Dies ist das erste Mal, dass wir uns nach dem Leerlauf wieder im Status IDLE_PENDING befinden, sodass das System normal laufen kann, bis wir wieder im Leerlauf sind.
Max Timeout für ausstehende Leerlaufzeiten – max_idle_pending_to
Maximales ausstehendes Leerlaufzeitlimit (Zeitaufwand für die Ausführung), die wir verwenden dürfen.
Idle Pending Factor – idle_pending_factor
Skalierungsfaktor, der bei jedem Durchlaufen dieses Status auf das aktuelle ausstehende Leerlaufzeitlimit angewendet wird.
Leerlaufzeitüberschreitung – idle_to
Dies ist das erste Mal, dass wir im Ruhezustand sitzen möchten, bevor wir wieder aufwachen, um zum anstehenden Leerlauf zurückzukehren und die normale Arbeit laufen zu lassen.
Maximales Leerlaufzeitlimit – max_idle_to
Maximale Leerlaufdauer, die wir verwenden dürfen.
Leerlauffaktor – Leerlauffaktor
Skalierungsfaktor, der bei jedem Durchlaufen dieses Zustands auf das aktuelle Leerlaufzeitlimit angewendet wird.
Min. Zeit bis zum Alarm – min_time_to_alarm
Dies ist die Mindestzeit, die wir bis zum nächsten bevorstehenden Alarm einplanen, um tatsächlich in den Leerlaufmodus zu wechseln.
Max Temp App Whitelist Duration – max_temp_app_whitelist_duration
Maximale Zeit, um eine App vorübergehend auf die Whitelist zu setzen, wenn sie einen hohen Tickle erhält.
Dauer der Whitelist der MMS Temp App – mms_temp_app_whitelist_duration
Zeitspanne, in der wir eine App auf die Whitelist setzen möchten, die eine MMS erhält.
Dauer der SMS Temp App Whitelist – sms_temp_app_whitelist_duration
Zeitspanne, in der wir eine App, die eine SMS empfängt, auf die Whitelist setzen möchten.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *