@madion

Как сделать, чтобы приложение android работало, когда у телефона долгое время выключен экран?

Есть приложение, которое работает с WebSocket, используя эту библиотеку: https://github.com/crossbario/autobahn-android
Когда у телефона гаснет экран, через некоторое время (примерно минут 30 неактивности) - приложение разрывает соединение с websocket-сервером.

Как можно сделать, чтобы приложение продолжало работу, даже если телефон несколько часов был неактивен?
  • Вопрос задан
  • 3488 просмотров
Пригласить эксперта
Ответы на вопрос 3
artemgapchenko
@artemgapchenko
Ответ написан
Комментировать
petermzg
@petermzg
Самый лучший программист
Вы конечно можете выставить программно блокироку на отключение процессора, но следующий ваш вопрос будет, почему так быстро садиться батарея.
Ответ написан
@coden55
Следующим кодом можно запустить "неубиваемый" background сервис (при старте основного сервиса стартует второй с таким же id в foreground режиме и сразу убивается):
public class Service_DontDie extends Service {

    @Override
    public void onCreate() {
        Notification.Builder builder = new Notification.Builder(this)
                .setSmallIcon(android.R.drawable.ic_secure);
        Notification notification = builder.build();
        startForeground(777, notification);
        stopForeground(true);
    }

}


public class Service_Main extends Service {

    @Override
    public void onCreate() {
        Notification.Builder builder = new Notification.Builder(this)
                .setSmallIcon(android.R.drawable.ic_secure);
        Notification notification = builder.build();
        startForeground(777, notification);
        Intent hideIntent = new Intent(this, Service_DontDie.class);
        startService(hideIntent);
    }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы