убить поток после возобновления основной деятельности?

StackOverflow https://stackoverflow.com/questions/6379976

Вопрос

У меня такая проблема в android.у меня есть основная деятельность, которая вызывает поток с этим

родовое слово

убить его публичное логическое значение в MainActivity. что я могу сделать, чтобы сохранить поток, чтобы, когда я возобновлю работу, я все еще могу убить поток?

Это было полезно?

Решение

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

Однако, если вы действительно хотите продолжать делать это в Thread, я предлагаю вам расширить новый класс из Thread и добавить метод под названием killMe().Это изменит (теперь закрытый ) логический флаг kill.Затем в своем onRetainNonConfigurationInstance() вы можете вернуть этот Thread и снова получить его в onResume.Если вы вернетесь и активность не была прервана, то все в порядке, вы можете просто вызвать killMe() для существующего Thread.

Пример:

родовое слово

Другие советы

Почему вы хотите убрать тему в резюме?

Почему бы не запустить поток в части возобновления, а затем добавить блок finally, чтобы обработать тот факт, что код connect() прерывается, а затем, когда он запускается снова, вам просто нужно повторно подключиться и выполнить операцию.

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

Существует высокая вероятность того, что вас прервут, поэтому подготовьтесь к этому.

Поток может быть остановлен ОС, поэтому нечего сохранять и убивать позже.

Если вам действительно нужно сделать что-то подобное, запустите код Activity, поскольку он будет работать в другом процессе, чем ваш код RemoteService, и, скорее всего, останется.

Возможно, вы захотите посмотреть на этот вопрос:

Удаленная служба Android

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top