[問題] Broadcast接收端接收不到

作者: PenguinLee (企鵝)   2019-05-20 15:58:11
各位前輩好 小弟用broadcast寫了一個動態註冊的廣播,方法是參考網址在推文一樓。在寫出來後發現發出廣播後receiver那邊卻接收不到,後來將receiver 寫在別的activity 後有收到廣播,有檢查過註冊方式跟receiver 寫法,但是在這個activity 中一直找不出問題,想麻煩各位前輩指導幫忙 謝謝
https://i.imgur.com/vAFfQcD.jpg
作者: PenguinLee (企鵝)   2019-05-20 16:09:00
那個網址手機貼文顯示不出來 寫在推文內https://reurl.cc/Vqd0R
作者: starburs (星爆氣流斬)   2019-05-20 18:29:00
寫在別的 activity 有收到,那不就是代表這個 activity根本沒有 onCreate 嗎
作者: aiweisen (艾維森)   2019-05-20 19:02:00
沒寫過發廣播跟收廣播都在同一個activity 你可以試試先不要用程式發廣播 直接用 adb 下廣播指令 看是不是同樣收不到
作者: PenguinLee (企鵝)   2019-05-20 19:49:00
不好意思 那張圖片是截圖併在一起的 左邊是service 發送廣播 右邊是activity 接收。後來發現將receiver 接收端放在其他的activity 都收不到只有最左邊的收的到 但是寫法都一樣...不知道哪裡出錯了https://i.imgur.com/puz1teW.jpg
作者: aiweisen (艾維森)   2019-05-20 20:05:00
starburs說的應該是 oncreate沒有被執行你在oncreate裡面加個log 看有沒有輸出
作者: starburs (星爆氣流斬)   2019-05-20 20:29:00
只有 MainActivity 收到那答案應該很明顯了XD你的 Main2 跟 Main3 都沒有被創建出來,沒有跑 onCreate 自然就沒有註冊廣播了
作者: darkheaven (安迪)   2019-05-21 01:29:00
來個github幫你看下?
作者: PenguinLee (企鵝)   2019-05-21 12:16:00
感謝大家的回覆 找到問題所在 因為模擬的時候沒有跳到receiver 那頁所以廣播接收器沒有開...算是接受端生命週期的問題 只是想問一下大家如果要讓頁面即使沒開還能接收到廣播的話動態註冊有辦法嗎 聽說靜態註冊好像很多都被停掉了QQ
作者: kobe8112 (小B)   2019-05-21 12:26:00
...你Activity用不到的話為啥還會需要註冊?
作者: gcobc12632 (Ted)   2019-05-21 12:27:00
還是能靜態註冊
作者: starburs (星爆氣流斬)   2019-05-21 14:07:00
25樓突破盲點
作者: PenguinLee (企鵝)   2019-05-21 15:17:00
不是啦 我忘記點開 因為忘記動態靜態註冊生命週期不同只是現在想用靜態註冊 因為希望app沒開還能接收 不過看android 好像要關掉部分靜態註冊 現在在想怎麼辦比較好
作者: kobe8112 (小B)   2019-05-21 17:17:00
你沒有要呈現UI的話為啥一定要收廣播= =?

Links booklink

Contact Us: admin [ a t ] ucptt.com