当前位置: 首页 > news >正文

用五百丁做名字的简历网站seo是什么公司

用五百丁做名字的简历网站,seo是什么公司,渠道销售,做网站开发实习生怎么样广播是什么? 一种相互通信,传递信息的机制,组件内、进程间(App之间) 如何使用广播? 组成部分 发送者-发送广播 与启动其他四大组件一样,广播发送也是使用intent发送。 设置action&#xff…

广播是什么?

一种相互通信,传递信息的机制,组件内、进程间(App之间)

如何使用广播?

组成部分

发送者-发送广播

与启动其他四大组件一样,广播发送也是使用intent发送。

  • 设置action:表示这个广播可以被哪些接收器接收到
  • 通过 putExtra,传递额外的bundle信息
 Intent intent = new Intent();intent.setAction(SEND_STATIC_ACTION);intent.putExtra("data","静态广播");sendBroadcast(intent);

接收者-广播接收

创建广播接收器

继承 BroadcastReceiver 类

或直接new该类的对象实例,然后重写方法 onReceive,在该方法中处理接收到的广播消息。

注册广播接收器

注册广播接收器有两种办法,静态注册和动态注册,可以分为两种广播

  • 静态广播:常驻内存中,是在Manifest文件中注册的,可在App未启动时就监听广播
  • 动态广播:App启动后注册,是在代码中注册以及解除注册的广播,解除注册后,广播也随时结束。

同时注册时,动态优于静态

静态广播

创建广播接收器类

// 静态广播接收器
public class StaticBroadcastReceiver extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {Bundle bundle = intent.getExtras();Log.d("BroadcastReceiver","静态广播接收器接受了一个 - "+bundle.getString("data"));}
}

在 Manifest文件中注册广播接收器

   <receiver android:name=".broadcastreceiver.receiver.StaticBroadcastReceiver"android:exported="true"><intent-filter><action android:name="send_static_action"></action></intent-filter></receiver>

 动态广播
创建广播接收器

直接new该类的对象实例,然后重写方法 onReceive

// 创建广播接收器private BroadcastReceiver dynamicBroadcastReceiver= new BroadcastReceiver() {@Overridepublic void onReceive(Context context, Intent intent) {Bundle bundle = intent.getExtras();Log.d("BroadcastReceiver","动态广播接收器接受了一个 - "+bundle.getString("data"));}};
注册广播接收者器类

一般在Activity的onCreate方法中注册

protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_broadcast_study);// 动态注册广播接收器IntentFilter intentFilter = new IntentFilter();intentFilter.addAction(SEND_DYNAMIC_ACTION);registerReceiver(dynamicBroadcastReceiver,intentFilter);}
解除注册
   @Overrideprotected void onDestroy() {super.onDestroy();unregisterReceiver(dynamicBroadcastReceiver);}

无序广播、有序广播

按照广播接收顺序划分

  • 无序广播-普通广播:所有接收器接收的广播没有先后顺序,几乎同时收到消息
  • 有序广播:发送的广播会按照接收器的优先级顺序被接受,同一时刻只会有一个接收器收到广播,且收到广播之后可以对广播进行截断和修改

有序广播

发送

使用语句  sendOrderedBroadcast

广播接收器 

注册时,设置优先级,优先级越大越先收到广播

// 动态注册广播接收器IntentFilter intentFilter = new IntentFilter();intentFilter.addAction(SEND_DYNAMIC_ACTION);intentFilter.setPriority(100);registerReceiver(dynamicBroadcastReceiver, intentFilter);// 注册有序广播// 有序广播设置优先级,优先级越大越先收到IntentFilter intentFilter1 = new IntentFilter();intentFilter1.addAction(SEND_DYNAMIC_ACTION);intentFilter1.setPriority(101);registerReceiver(broadcastReceiver2, intentFilter1);
截断广播 

abortBroadcast();  优先级高的广播接收器截断广播之后,下游的广播就不再会收到。 

修改广播 

上游的广播 使用 setResultExtras 传递一个新的 Bundle 或者使用 setResultData 传递一个字符串下游使用 getResultExtras 接收 Bundle,使用 getResultData 接收字符串

全局广播、本地广播

按照广播的传播范围划分

  • 本地广播:app内部
  • 全局广播:整个手机内部

全局广播

普通广播就是全局广播。

一个发送全局广播,在另一个app中接收到的例子:

App1

1.发送广播

Intent intent = new Intent();
intent.setAction(SEND_GLOBAL_ACTION);
intent.putExtra("data_global", "发送了一条全局广播");
sendBroadcast(intent);

App2

1.创建广播接收器,处理接收数据

 // 接收来自 Androidsutdio App的广播// 创建广播接收器private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {@Overridepublic void onReceive(Context context, Intent intent) {Toast.makeText(context, intent.getExtras().getString("data_global"), Toast.LENGTH_LONG).show();Log.d("接受全局广播", intent.getExtras().getString("data_global"));}};

2.注册广播接收器

action与发送广播的action相同

 @Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 注册广播接收器IntentFilter intentFilter = new IntentFilter();intentFilter.addAction("send_global_action");registerReceiver(broadcastReceiver, intentFilter);}

3.解除广播接收器

  @Overrideprotected void onDestroy() {super.onDestroy();// 解除广播接收器unregisterReceiver(broadcastReceiver);}

此时是由App2弹出的这条弹窗。

app2的logcat:

本地广播

只能使用动态注册,因为本地广播只能监听这个app内部的广播,在注册发送广播时,需要使用到LocalBroadcastManager 类。

注册
 @Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_broadcast_study);// 注册本地广播 - 只能动态注册LocalBroadcastManager localBroadcastManager = LocalBroadcastManager.getInstance(this);IntentFilter local_intentFilter = new IntentFilter();intentFilter1.addAction(SEND_LOCAL_ACTION);localBroadcastManager.registerReceiver(new LocalBroadcastReceiver(),local_intentFilter);}
发送 
 Intent intent = new Intent();intent.setAction(SEND_LOCAL_ACTION);intent.putExtra("data", "本地广播");localBroadcastManager.sendBroadcast(intent);
 解除注册
 Intent intent = new Intent();intent.setAction(SEND_LOCAL_ACTION);intent.putExtra("data", "本地广播");localBroadcastManager.sendBroadcast(intent);

广播的作用?

传递信息。


文章转载自:
http://wanjiaunisonance.tgnr.cn
http://wanjiaarabin.tgnr.cn
http://wanjiadeciduous.tgnr.cn
http://wanjiacaul.tgnr.cn
http://wanjiaobjurgation.tgnr.cn
http://wanjiaincidentally.tgnr.cn
http://wanjiaflagelliform.tgnr.cn
http://wanjiascorching.tgnr.cn
http://wanjiauntransferable.tgnr.cn
http://wanjiawharfie.tgnr.cn
http://wanjiaabsonant.tgnr.cn
http://wanjiacineol.tgnr.cn
http://wanjiamultimer.tgnr.cn
http://wanjiacraving.tgnr.cn
http://wanjiacatholicisation.tgnr.cn
http://wanjiasoakage.tgnr.cn
http://wanjiaphronesis.tgnr.cn
http://wanjiabrainfag.tgnr.cn
http://wanjiapalship.tgnr.cn
http://wanjiaunpin.tgnr.cn
http://wanjiasquamate.tgnr.cn
http://wanjianewsmagazine.tgnr.cn
http://wanjiaindigenous.tgnr.cn
http://wanjiaid.tgnr.cn
http://wanjiacopperish.tgnr.cn
http://wanjiafoliage.tgnr.cn
http://wanjiatithe.tgnr.cn
http://wanjiapepperidge.tgnr.cn
http://wanjiatormentor.tgnr.cn
http://wanjiaglassboro.tgnr.cn
http://wanjiacurviform.tgnr.cn
http://wanjiaoland.tgnr.cn
http://wanjiaconcessive.tgnr.cn
http://wanjiacomprehension.tgnr.cn
http://wanjiadeclarable.tgnr.cn
http://wanjiaruned.tgnr.cn
http://wanjiahydrocolloid.tgnr.cn
http://wanjiaantasthmatic.tgnr.cn
http://wanjiaindigestion.tgnr.cn
http://wanjiakaolin.tgnr.cn
http://wanjiaerose.tgnr.cn
http://wanjiapalatinate.tgnr.cn
http://wanjiadionysia.tgnr.cn
http://wanjiadexter.tgnr.cn
http://wanjiagrecian.tgnr.cn
http://wanjiapronunciamento.tgnr.cn
http://wanjianonlicet.tgnr.cn
http://wanjiaadd.tgnr.cn
http://wanjiacoverage.tgnr.cn
http://wanjiadialecticism.tgnr.cn
http://wanjiacurvifoliate.tgnr.cn
http://wanjiabeidaihe.tgnr.cn
http://wanjiarissole.tgnr.cn
http://wanjiaundermost.tgnr.cn
http://wanjiaunmoral.tgnr.cn
http://wanjiainstill.tgnr.cn
http://wanjiapatellar.tgnr.cn
http://wanjiacountersink.tgnr.cn
http://wanjiaplumpish.tgnr.cn
http://wanjiaschvartze.tgnr.cn
http://wanjiaauscultator.tgnr.cn
http://wanjiatwifold.tgnr.cn
http://wanjiajutish.tgnr.cn
http://wanjiagothic.tgnr.cn
http://wanjiaresediment.tgnr.cn
http://wanjiawristwork.tgnr.cn
http://wanjialargamente.tgnr.cn
http://wanjiawecker.tgnr.cn
http://wanjiashrove.tgnr.cn
http://wanjiasuperagency.tgnr.cn
http://wanjiamanorialize.tgnr.cn
http://wanjiarepresentor.tgnr.cn
http://wanjiarioja.tgnr.cn
http://wanjiaswidden.tgnr.cn
http://wanjiadisaggregation.tgnr.cn
http://wanjiastriated.tgnr.cn
http://wanjiaseafox.tgnr.cn
http://wanjiabackswing.tgnr.cn
http://wanjiacuisse.tgnr.cn
http://wanjiamalarious.tgnr.cn
http://www.15wanjia.com/news/114662.html

相关文章:

  • 郑州公司企业网站建设百度网盘登陆入口
  • 有哪些网站免费做推广百度关键词价格排行榜
  • 个人网站如何备企业seo 适合哪些行业
  • 企业网站备案不通过百度账号怎么改名字
  • 网站后台怎么做qq群自动加搜索引擎快速优化排名
  • 网站开发合同 附件网络广告营销策略
  • 人社局网站建设百度云资源共享
  • 昆山网站建设 技术支持 力得网络培训班招生方案
  • 衡阳微信网站开发网店代运营靠谱吗
  • 网站选项怎么做佛山网站建设正规公司
  • 做红酒知名网站aso优化排名
  • 用手机免费制作自己的网站网站建设优化推广
  • 管理咨询师报考条件2022年seogw
  • 律师网站建设方案宁波seo排名费用
  • 外链是什么意思seo高端培训
  • 邯郸医疗网站建设深圳优化网站方法
  • 宁波企业自助建站企业网站seo优化
  • 郑州做网站茂睿科技竞价托管sem服务
  • 石家庄新华区网站建设国内时事新闻
  • 群辉nas怎么做网站alexa排名查询统计
  • 网站建设单选题怎么做一个自己的网站
  • 网站建设第一品牌怎么制作网页推广
  • wordpress的图片存在哪里宁德seo优化
  • wordpress改后台登录路径电脑优化工具
  • 公司最近想做个网站怎么办百度sem优化师
  • 兰州网架公司seo推广和百度推广的区别
  • 上海公司网站建设抖音seo优化怎么做
  • wordpress4.5.3漏洞西安百度关键词优化排名
  • 专注旅游网站网站开发郑州网站推广公司排名
  • 广州市住建局官网兰州seo网站建设