正如你可能知道,爲的onReceive()類的BroadcastReceiver的方法的文檔說:內創建onRecieve敬酒()一個BroadcastReceiver的方法
當它運行在主線程上,你永遠不應該執行長 - 在其中運行 操作(系統 允許在考慮接收器被阻塞並且候選者 被終止之前有10秒的超時)。您無法在onReceive()的實現 中啓動彈出對話框。
我想在接收廣播時向用戶顯示Toast,但我不確定Toast是否被視爲「彈出對話框」,或者只有類Dialog中的對象是他們所指的對象。
我見過很多示例代碼,在這個函數中使用了Toast,但我不確定這是不好的做法還是對性能有很大的影響。
我想知道的是我是否應該在這個函數中創建一個Toast,如果沒有,那麼我該怎麼做(擴展Toast然後使用一個意圖來調用它?)。
謝謝!
只需在onReceive()中放置你的敬酒,這樣做你就不會有任何問題,不,這不是一個壞習慣。這取決於您需要與用戶進行什麼交互。 – hardartcore