在Android中,Broadcast是一種廣泛使用的機制,允許應用程序發送和接收消息
BroadcastReceiver
。在這個類中,你將重寫onReceive()
方法,當接收到廣播時這個方法將被調用。import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// 在這里處理接收到的廣播
}
}
AndroidManifest.xml
文件中注冊你的BroadcastReceiver
。這可以通過添加一個<receiver>
元素來實現。<manifest ...>
...
<application ...>
...
<receiver android:name=".MyBroadcastReceiver">
<intent-filter>
<action android:name="com.example.MY_BROADCAST" />
</intent-filter>
</receiver>
</application>
</manifest>
在這里,com.example.MY_BROADCAST
是你希望接收的廣播的動作(Action)。你可以根據需要更改它。
sendBroadcast()
方法。首先,創建一個Intent
對象,并使用你之前在AndroidManifest.xml
中定義的動作。然后,使用sendBroadcast()
方法發送廣播。import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 創建一個Intent對象,并設置動作
Intent intent = new Intent("com.example.MY_BROADCAST");
// 發送廣播
sendBroadcast(intent);
}
}
現在,當MainActivity
發送廣播時,你的MyBroadcastReceiver
類中的onReceive()
方法將被調用,并顯示一個Toast消息。你可以根據需要修改onReceive()
方法以執行所需的操作。