Android有序广播

来源:互联网 发布:大数据基金净值 编辑:程序博客网 时间:2024/05/16 12:54

继BroadcastReceiver广播接收者


BroadcastReceiver翻译为广播接收者,Broadcast是一种广泛运用在应用程序之间的传输信息的机制,简单的可以理解为传统意义上的电台广播,通俗一点,发布失物招领。广播机制是一个典型的发布—订阅模式,也就是我们所说的观察者模式。广播最大的特点就是发送方并不关心接收方是否接到数据,也不关心接收方是如何处理数据的,通过这样的形式来达到接、收双方的完全解耦合。


无序广播发送者Java代码:

import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.EditText;import android.widget.Toast;public class MainActivity extends AppCompatActivity {    private EditText et_main_content;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        et_main_content = (EditText) findViewById(R.id.et_main_content);    }    public void send(View view){        //获取要发送的内容        String content=et_main_content.getText().toString();        Intent intent=new Intent();        //指定广播的名字        intent.setAction("com.example.android21_sender.SY");        //指定广播的内容        intent.putExtra("content",content);        //发送无序广播//        sendBroadcast(intent);        //发送无序黏性广播//        sendStickyBroadcast(intent);        //发送有序广播        sendOrderedBroadcast(intent,null);        Toast.makeText(this, "发送成功"+content, Toast.LENGTH_SHORT).show();    }}


接收者:

public class MyReceiver01 extends BroadcastReceiver {    @Override    public void onReceive(Context context, Intent intent) {        Log.i("test","1进来了");        //获取广播的名字        String action=intent.getAction();        if("com.example.android21_sender.SY".equals(action)){            //获取广播内容            String content=intent.getStringExtra("content");            Log.i("test","1:"+content);        }    }}


原创粉丝点击