Использование сервиса для сохранения долгоживущего объекта

1

Позвольте мне быстро представить себя: более 30 лет программирования в целом, более 12 лет Java, менее 3 недель Android.

Мой вопрос касается моей архитектуры/дизайна. Будучи таким новичком в Android, мне интересно, имеет ли смысл вся идея. В принципе, я хочу построить Telnet-подобный терминал. Такой терминал обычно имеет долговременное TCP-соединение, которое было бы неплохо не удалять каждый раз, когда активность, отображающая экран, исчезает или всякий раз, когда Android чувствует себя так. Моя идея - использовать службу, которая поддерживает соединение открытым и содержит текущее содержимое экрана telnet. Когда действие (re) создано, оно запускает службу и извлекает содержимое экрана и соединение (java.net.Socket). Он отображает содержимое и использует сокет для дальнейшего вмешательства пользователя. Если пользователь намеренно отключается, только затем я останавливаю службу.

Чтобы пользователь не забыл, что его сеанс telnet открыт в фоновом режиме, я также помещал бы что-то в область уведомлений во время работы службы.

Благодарю!

Теги:

1 ответ

0
Лучший ответ

Вы должны взглянуть на Android: сохранить фоновый сервис в живых (предотвращая процесс смерти)

В принципе, вы можете начать свое обслуживание таким образом, с уведомлением, которое будет показано пользователю, чтобы система не убивала ваш сервис (при обычных обстоятельствах).

Поэтому для Android требуется, чтобы вы показывали пользователю уведомление, если вы собираетесь что-то запускать, а если вы это сделаете, то, в свою очередь, он не убьет ваш сервис.

  • 0
    Спасибо за ваш очень полезный ответ. Я особенно ценю совет startForeground (): он не только помогает с уведомлением, но и увеличивает мой шанс не быть убитым. Тот факт, что вы не говорите ничего негативного в отношении всего моего плана, в некотором роде подтверждает, что это правильно. Кстати, есть ли способ «вознаградить» ответы здесь?
  • 0
    @baftoid да, на вопросы, которые вы задаете, вы можете нажать на галочку слева (см. здесь ), и когда вы наберете достаточно представителей, вы можете нажать стрелку вверх рядом с вопросами или ответами, которые вам нравятся

Ещё вопросы

Сообщество Overcoder
Наверх
Меню