簡體   English   中英

如何發射廣播接收器?

[英]How to launch a broadcast receiver?

我有一個擴展廣播接收器的類。 我的問題是我將如何在另一個類中調用此活動...我試圖為它創建一個intent但我不斷收到語法錯誤。 這是啟動廣播接收器的另一種方式嗎?

你必須使用

 Intent intent = new Intent( "mypackage.myaction" );
 activity.sendBroadCast( intent );

活動是啟動BroadcastReceiver和Intent的活動,其意圖與清單文件中的BroadcastReceiver的過濾器相匹配。

你會做一些看起來像這樣的事情:

<receiver android:name="your broadcast receiver class" android:label="a name">
    <intent-filter>
        <action android:name="mypackage.myaction" />
    </intent-filter>
</receiver>

此致,Stéphane

IntentFilter filter = new IntentFilter("com.mydefinepackage.myactivity");
this.registerReceiver(new Receiver(), filter);

聲明此私有類並在myactivity Activity中使用上面的代碼。

private class Receiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context arg0, Intent arg1) {
        myOwnMethod();
    }
}

從任何其他活動執行此代碼。 然后將調用myOwnMethod。

Intent i =new Intent("com.mydefinepackage.myactivity");
sendBroadcast(i);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM