android四大组件-----广播3 本地广播

写一个广播类

public class MyService extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Log.d(MainActivity.TAG, "onReceive: 接收一条本地广播");
    }
}

用 

LocalBroadcastManager类来注册和销毁广播
package com.yifei.myapplication;

import android.content.Intent;
import android.content.IntentFilter;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import java.util.function.IntFunction;

public class MainActivity extends AppCompatActivity {
    public static String TAG ="MainActivity123";
    private Button btn;
    private LocalBroadcastManager broadcastManager;//广播管理器
    //声明一个Myservice对象
    private MyService myService;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn = findViewById(R.id.btn);
        broadcastManager = LocalBroadcastManager.getInstance(this); //获取一个广播管理器实例
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent("com.yifei.myapplication.MyService");
                broadcastManager.sendBroadcast(intent);

            }
        });

        IntentFilter intentFilter = new IntentFilter();
        intentFilter.addAction("com.yifei.myapplication.MyService");
        //获取广播对象
        myService= new MyService();
        //注册广播
         broadcastManager.registerReceiver(myService,intentFilter);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        broadcastManager.unregisterReceiver(myService);
    }
}

receiver文件

public class MyService extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Log.d(MainActivity.TAG, "onReceive: 接收一条本地广播");
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_41069726/article/details/89786839
今日推荐