Для dumpstate Wifi автоматически отключается через ~10 минут. Как сохранить это в SAMSUNG Glaxy
У меня проблема с Samsung Galaxy S6 и S8 при подключении телефона к сети Wi-Fi, обязательно отключите USB-кабель. Подключенный USB-кабель будет поддерживать соединение активным. Время ожидания экрана по умолчанию установлено равным двум 2 минутам. Примерно через 10 минут вы заметите, что устройство больше не отвечает на эхо-запросы и что все интернет-службы отображаются в автономном режиме. Моя фоновая служба отключается от сервера одновременно с остановкой проверки связи, поэтому кажется, что Wi-Fi выключен или находится в "неактивном" состоянии. Для создания дампа мне пришлось бы снова подключить USB-кабель, чтобы получить доступ к устройству. Это разбудит устройство, и Интернет снова будет работать. Таким образом, состояние дампа может быть сложнее для анализа.
protected void onTimerEnabled() {
try {
if (wl == null) {
// if (loggingOn)
//Log.e("WakeLock", "Creating and acquiring wake lock...");
log("WakeLock", "Creating and acquiring wake lock...");
PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
this.wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "doWork()");
wl.setReferenceCounted(false);
if (!wl.isHeld()) {
wl.acquire();
Log.i("WakeLock", "Acquired wake lock!");
}
} else {
if (!wl.isHeld()) {
// if (loggingOn)
log("WakeLock", "Wake lock not held...Acquiring wake lock...");
wl.acquire();
}
}
} catch (Exception ex) {
log("WakeLock", ex.getMessage());
}
}
//Release wake lock should be called whenever you have completed your work
private void releaseWakeLock() {
try {
if (wl != null) {
//if(loggingOn)
log("WakeLock", "wl is not null");
if (wl.isHeld()) {
//if (loggingOn)
log("WakeLock", "We have a wake lock....Releasing wake lock...");
wl.release();
}
}
} catch (Exception ex) {
log("WakeLock", ex.getMessage());
}
}
timer = new Timer();
try {
timer.schedule(new TimerTask() {
@Override
public void run() {
try {
onTimerEnabled();
currentLocation_webService();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}, timer_initial_delay * 1000, timer_period * 1000);
} catch (Exception e) {
e.printStackTrace();
}
//Realese WakeLock on cancel timer
if (timer != null) {
releaseWakeLock();
timer.cancel();
}