BroadcastReceiver
来源:互联网 发布:什么是数据库设计 编辑:程序博客网 时间:2024/05/22 02:27
public class MainActivity extends AppCompatActivity { private EditText editText; private MyReceiver receiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = (EditText) findViewById(R.id.editText); receiver = new MyReceiver(); registerReceiver(receiver, new IntentFilter(MyReceiver.ACTION)); findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MyReceiver.ACTION); intent.putExtra("name", editText.getText().toString()); sendBroadcast(intent); } }); findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { unregisterReceiver(); } }); } private void unregisterReceiver() { if (receiver != null) { unregisterReceiver(receiver); receiver = null; } } @Override protected void onDestroy() { super.onDestroy(); unregisterReceiver(); }}
public class MyReceiver extends BroadcastReceiver { public static final String ACTION = "com.example.zmx.broadcastreceiver.intent.action.MyReceiver"; public MyReceiver() { } @Override public void onReceive(Context context, Intent intent) { // TODO: This method is called when the BroadcastReceiver is receiving // an Intent broadcast. System.out.println(intent.getStringExtra("name")); }}Broadcast优先级public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MyReceiver.ACTION); sendOrderedBroadcast(intent, null); } }); }}public class MyReceiver extends BroadcastReceiver { public static final String ACTION = "com.example.zmx.broadcastreceiver.intent.action.MyReceiver"; public MyReceiver() { } @Override public void onReceive(Context context, Intent intent) { // TODO: This method is called when the BroadcastReceiver is receiving // an Intent broadcast. System.out.println("MyReceiver"); }}public class MyReceiver2 extends BroadcastReceiver { public static final String ACTION = "com.example.zmx.broadcastreceiver.intent.action.MyReceiver"; public MyReceiver2() { } @Override public void onReceive(Context context, Intent intent) { // TODO: This method is called when the BroadcastReceiver is receiving // an Intent broadcast. System.out.println("MyReceiver2"); // abortBroadcast(); }}
<receiver android:name=".MyReceiver" android:enabled="true" android:exported="true" > <intent-filter android:priority="8"> <action android:name="com.example.zmx.broadcastreceiver.intent.action.MyReceiver" /> </intent-filter></receiver><receiver android:name=".MyReceiver2" android:enabled="true" android:exported="true"> <intent-filter android:priority="9"> <action android:name="com.example.zmx.broadcastreceiver.intent.action.MyReceiver" /> </intent-filter></receiver>
0 0
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadCastReceiver
- BroadcastReceiver
- broadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- BroadcastReceiver
- Maven之自定义archetype生成项目骨架
- 链表的创建
- Android 面试题总结(三)
- android系统功能调用(Notification、广播开机自启动、A应用启动B应用)
- HTML小知识点积累
- BroadcastReceiver
- 使用iframe的优缺点,为什么少用iframe以及iframe和frame的区别。
- JavaScript编程题(含腾讯2016校招题)
- bzoj3105【CQOI2013】新Nim游戏
- 设计模式之适配器模式 Adapter
- LeetCode *** 83. Remove Duplicates from Sorted List
- GET URL设置值为true 和'true'的区别,me和'me'的区别
- ios触摸事件和手势识别
- String、StringBuffer和StringBuilder的区别(一)