2013-07-15 2 views
0

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

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

onStartCommand запустить поток позволить вновь созданной нити отправить сообщение (отсроченное) к себе через postDelayed и обеспечить serviceRunnable в котором выполняются основные служебные работы. В том же запуске снова вызывается postDelayed.

Пожалуйста, дайте мне знать, если эта теория верна

ответ

0

UI может работать только в главном потоке, но вы можете запустить службу на другом фоновом потоке см ниже инструкции https://developer.android.com/training/run-background-service/index.html

+0

postDelayed или начать новый IntentService, который потреблял бы меньше процессора – mSO

+0

..... а потом? –

+0

Я бы использовал самый низкий метод потребления процессора. Мой сервис должен появляться каждые 30 секунд и вставлять что-то в БД, который будет читать пользовательский интерфейс. – mSO

Смежные вопросы