作者eatandsleep (又窮又囧又矮又胖)
看板AndroidDev
標題Re: [問題] broadcast的問題
時間Sat Feb 19 01:45:51 2011
AP那邊的code我不熟,加上我看的也不是Setting那個資料夾.
我想雖然是不同的資料夾,但是,android行為應該差不多~
(1)
xxxBroadcastReceiver.java
@Override
public void onReceive(){...}
[註1]
(2)
zzz.java
@Override
public void onReceive(){...}
[註2]
註1:
我的習慣是 我會找這個intent被定義在哪裡~~~我幫你看了一下~
你說的這個intent是定義在frameworks/base/core/java/android/content/Intent.java
你可以以這個intent的關鍵字(ACTION_AIRPLANE_MODE_CHANGED,
android.intent.action.AIRPLANE_MODE)去尋找~
AndroidManifest.xml很重要~它可以幫你解決很多麻煩~
註2:
Register for the intent broadcasts
一般而言是會在那隻.java檔的onCreate()裡IntentFilter.
不知道有沒有幫上你的忙QQ
如果有錯的地方請指正~
java我不熟 別鞭我>"<
※ 引述《tstanly ()》之銘言:
: 有一個關於broadcast的問題
: 一般使用我的認知是sendbroadcast會有一個對應的broastcastReciever
: 例如以native Setting app中的airplane mode開啟/關閉為例
: 在$mydroid/packages/app/Setting/.../AirplaneModeEnabler.java中有一段
: *****************************************************
: Intent intent = new Intent(Intent.ACTION_AIRPLANE_MODE_CHANGED);
: intent.putExtra("state", enabling);
: mContext.sendBroadcast(intent);
: *****************************************************
: 那是不是應該在$mydroid/packages/app/Setting/下
: 會有一隻code寫著對應的BroadcastReciever行為?
: 但我在該目錄下卻沒看到...所以我又想說
: 對應的BroadcastReciever會不會在其他目錄?
: 那另外一個問題就是哪裡會定義著對應的BroadcastReciever存放地方?
: 以上是我不確定的認知...對這一塊真的不熟
: 希望能有高手給一些意見
: 謝謝 :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 223.139.67.223
※ 編輯: eatandsleep 來自: 111.82.160.22 (02/19 02:28)
1F:推 tstanly:謝謝你!後來我知道broadcast是全域的, 只要送出去, 任何地 02/19 02:53
2F:→ tstanly:方有寫reciever就可以收到 謝囉!! :) 02/19 02:53