2012-01-29 140 views
1

我目前正在做一個android應用程序,需要在另一個線程中運行後臺服務。問題是我想在BOOT_COMPLETE之後啓動它,並且不希望它阻塞我的主線程。BOOT_COMPLETE後在另一個線程中啓動服務

任何人有任何想法?

+0

你需要提供一個用例,你是什麼意思你不想阻塞主線程? – JoxTraex 2012-01-29 08:30:45

+0

對不起,我沒有說清楚。我有一個包含兩項服務的應用程序。他們兩個都有一個彎腰。由於只有一條環線可以在一個線程中進行關聯,所以如果我想在同一時間運行這兩種服務,它們能夠更好地在不同的線程中運行。我知道有一種方法可以通過實現run()方法的「new Thread()」來啓動它們。但是如何在BOOT_COMPLETE之後啓動它們?廣播接收者無法啓動線程,對嗎? – 2012-01-29 08:46:59

回答

0

查找廣播接收器......這就是您所需要的。

+0

我已經完成braodcastreceiver併成功啓動了此服務。但是,它是在主線程中啓動的。因此,在另一個線程中啓動它對我來說至關重要。但無論如何,感謝您的答覆 – 2012-01-29 08:28:45

1

您必須註冊BroadcastReceiver並執行操作BOOT_COMPLETE

onReceive()接收方法中,您必須使用startActivity()方法開始Service

See a similar post here

+0

是的,我做到了這一點已經與startService()中的onReceive()方法。不過,我的問題是,反正是有在另一個線程啓動此服務,這樣我可以在不同的線程運行的兩個服務啓動後在做不同的東西? – 2012-01-29 08:49:16

相關問題