大家好,本篇文章将会像大家介绍安卓技能-广播的使用。
首先,广播是什么呢?在我的认识中,广播就相当于一个闹铃,或者相当于手机中的一个提醒事项功能。如目前处于Activity A中,当A界面处理结束后,你需要在Activity B中处理一些界面显示的操作时,会使用到广播的功能。以下我会以一个项目中的实例来介绍广播技术。
需求:在主界面M点击登录按钮进入登录A界面,在登录界面完成登录操作后,随后关闭A界面,对M界面进行数据的相关刷新显示。
分析:在这里我们处理完A界面后,需要对主界面M界面进行UI的相关修改,所以决定采用广播技术。
主要步骤:
步骤一:在主界面A注册广播
IntentFilter intentFilter1 = new IntentFilter();
intentFilter1.addAction(NewMainActivity.BROADCAST_ACTION_NAME_GIFT_GONE);
mActivity.registerReceiver(mGiftNumsGoneReceiver, intentFilter1);
这里的mGiftNumsGoneReceiver是广播的接收处理器。用广播机制接收到此广播的请求之后的操作是在这个接收器中完成的。
步骤二:实现广播接收器的相关方法
private BroadcastReceiver mGiftNumsGoneReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(NewMainActivity.BROADCAST_ACTION_NAME_GIFT_GONE)) {
/**
*在这里进行相关的界面处理
*/
}
}
};
步骤三 在登录完成后对此广播进行调用
Intent intent1 = new Intent(NewMainActivity.BROADCAST_ACTION_NAME_GIFT_GONE);
mActivity.sendBroadcast(intent1);(这里的登录界面采用Fragment进行开发,所以使用mActivity进行调用sendBroadcast方法,若如果使用Activity开发的发,可直接使用sendBroadcast方法来进行广播机制的触发)。
在执行完这两行代码,广播机制也就被触发了。也正如我们步骤二所说的,会调用步骤二中在主界面M中写好的接收器mGiftNumsGoneReceiver。
步骤四 注销广播
为了app能狗平稳的运行,我们一定要注意各种机制的生命周期,在这,也要注意广播的生命周期。
在onDestroy()方法中对广播进行注销
mActivity.unregisterReceiver(mGiftNumsGoneReceiver);
使用unregisterReceiver(接收器对象)进行广播的注销。
做到这里,你也算是接触到了广播技术的门槛。本人也是安卓新生,对于术语的述说也存在欠缺,如有什么疑问或建议可以在下方给我留言哦~~~