今天讲讲Android的广播,Android自定义广播分为有序广播和无序广播,我们今天讲无序广播和系统广播。
自定义广播有发送者和接受者,发送者只要设置名字和传递数据,接受者接收,接收者接收需要注册,可以在清单文件中注册也可以用代码动态注册。
先贴发送:
package com.zking.sun.android_14_sender;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private EditText et_main_content;
private Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_main_content = (EditText) findViewById(R.id.et_main_content);
intent = new Intent();
//设置广播的名字
intent.setAction("com.zking.sun.android_14_sender.923");
}
public void send(View view){
String content = et_main_content.getText().toString();
//携带数据
intent.putExtra("data",content);
//发送广播 无序
// sendBroadcast(intent);
//发送黏性广播 粘性广播是解决动态广播退出不能接收的问题的,如要用需在清单文件中设置权限 (已过时
//<!--添加发送黏性广播的权限-->
// <uses-permission android:name="android.permission.BROADCAST_STICKY"></uses-permission>
sendStickyBroadcast(intent);
}
}
接收者写两个一个动态一个静态
静态
package com.zking.sun.android_14_received01;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
/**
* Created by sun on 2017/2/7.
*/
public