2013-03-04 7 views
0

Служба работает, проблема заключается в том, что она работает, показывая черный экран до завершения обслуживания.Служба не работает должным образом

Intent Service = new Intent(); 
Service.setClass(Activity.this,sendInformation.class); 
Service.putExtra("IP",IP1); 
Service.putExtra("Port",Port1); 
Activity.this.startService(Service); 

Как я могу сказать «во время службы работает» вернуться на главную?

ответ

1

Что вы делаете на своем сервере, происходит в основном потоке. Попробуйте вместо этого использовать IntentService или попробуйте использовать собственный поток на сервере onStartCommand. Обычно IntentService в порядке.

+0

Вы правы, но мое решение было асинтетическим – user2033349

1

From the Service documentation:

Обратите внимание, что услуги, как и другие объекты приложения, работают в основном нить процесса их хостинга. Это означает, что если ваша служба собирается делать любой интенсивный процессор (например, воспроизведение в формате MP3) или блокировать (например, как сетевые), он должен создать свой собственный поток, в котором должны выполняться .

Просто создайте AsyncTask, если хотите многопоточность.

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