2015-04-23 78 views
7

我需要一個Activity在我的BroadcastReceiver中,但是當我嘗試將上下文轉換爲活動時,它不起作用。ReceiverRestrictedContext不能轉換爲android.app.Activity

造成的:java.lang.ClassCastException:android.app.ReceiverRestrictedContext不能轉換到android.app.Activity

如何從廣播接收器獲得活動?

感謝

回答

4

如何從廣播接收器獲得活動?

通常,你不能。 BroadcastReceiver獨立於Activity。例如,您可以讓BroadcastReceiver在沒有活動運行時接收廣播。

但是,您可以在活動中註冊/取消註冊BroadcastReceiver,並在您的活動正在運行時使用它來接收廣播。

+1

謝謝,但我怎麼辦註冊/取消註冊? – MohamedAli

+0

使用[registerReceiver](http://developer.android.com/reference/android/content/Context.html#registerReceiver(android.content.BroadcastReceiver,%20android.content.IntentFilter))。 – cygery

相關問題