Intent和Broadcast
11.1Intent
Intent是一次即将执行操作的抽象描述。实现策略有3种:
通过startActivity()启动Intent;
通过Broadcast Intent将一个Intent发给任何对这个Intent感兴趣的BroadcastReceiver;
通过startService(Intent)或bindService(Intent, ServiceConnection, int)和后台的Service交互。
第一种方式
Intent最常用的用途是链接一个应用中各个Activity
启动特定的Activity:
Intent intent= new Intent(A.this, B.class);
startActivity(intent);
启动未定的Activity:
不关心启动哪个Activity,只将启动的Activity的描述信息放到Intent中,让系统寻找合适的Activity来启动。
Intent intent= new Intent(Intent.参数,”描述信息”);
startActivity(intent);
处理Activity的返回值
StartActivityForResult()启动一个Activity,新的Activity执行完毕后(setResult(),finish()),原Activity执行回调函数onActivityResult(),系统自动调用该方法。
一个Intent里边包含的内容有:
对执行动作的描述Action;
动作相关的数据Data;
数据类型type;
执行动作附加信息的描述:类别category;
附加信息的描述:extras
目标组件的描述:component
系统自定义的Action常见的有:ACTION_MAIN(标记为应用程序的入口)、ACTION_VIEW(显示给用户)、ACTION_DIAL(打电话)、ACTION_PICK(数据选择)、ACTION_EDIT(编辑数据)、ACTION_DELETE(删除数据)。
Android用指向数据的URL来表示数据data。
11.2Broadcast
Intent还可以作为不同进程间传递数据的媒介。
广播Broadcast方法:
New Intent后,设置sendBroadcast(intent);
BroadcastReceiver来接受广播的Intent,需要设置Intent Filter制定对哪些Intent监听。
需要继承BroadcastReceiver,实现onReceive接口。
注册的BroadcastReceiver并非一直在后台运行,而是事件或相关的Intent来临时才被系统调用。
BroadcastReceiver的注册:
1.在AndroidManifest.xml中进行轻量级注册。
<receiver android:name=”类名”>
<intent-filter>
<action android:name=”接受谁的广播Intent的绝对路径名”>
</intent-filter>
</receiver>
2.在代码中注册
New好BroadcastReceiver和Intent Filter后,调用registerReceiver()实现。
unRegisterReceiver()注销注册的BroadcastReceiver
相关推荐
Android中关于Broadcast、Intent 的应用,对于初学Android者有较大帮助。
Android Activity和Intent机制学习笔记
Android Intent 学习笔记
自学 Android 做的第二十六个 Android 程序,使用了 Intent 和 Broadcast Receiver
本项目将Android中的Intent总结了一遍。主要有四个项目,Intent_Intent项目是简单的Intent跳转(setActivityResult);Intent_broadcast主要是静态广播的注册;Intent_broadcastdynamic主要介绍动态广播的注册;...
Android_Activity和Intent机制学习笔记
android的intent学习笔记.pdf
Android应用源码之Intent_Intent
Android学习笔记(七):多个Activity和Intent
android Intent例子源码android Intent例子源码android Intent例子源码android Intent例子源码android Intent例子源码android Intent例子源码
三种应用程序基本组件——activity, service和broadcast receiver——是使用称为intent的消息来激活的。Intent消息传递是一种组件间运行时绑定的机制. intent是Intent对象, 它包含了需要做的操作的描述, 或者, ...
android的intent学习笔记(20220104210037).pdf
Android学习笔记之bundle用法源码,非常非常简单,看了就懂,看了就能掌握bundle的基础用法,以及如何通过Intent传递及取出bundle
Android开发学习笔记(整理),整理论坛android学习笔记,较完整的讲解了android的内容。包括:view、activity、service、intent、广播机制、http连接、数据sqllite存储、后台线程、各种layout、偏好、本地文件操作、...
Android-Intent详解
主要为大家详细介绍了Android利用Intent启动和关闭Activity的相关操作,感兴趣的小伙伴们可以参考一下
Android应用源码之Intent1_Intent
android入门级视频:Android基本组件介绍之Android应用的灵魂——Intent和Activity介绍与实例
Android学习笔记(三五):再谈Intent(下)-一些实践
Android学习笔记(1)-永远不变的Hello World Android学习笔记(2)-初识Activity Android学习笔记(3)-Activity的生命周期 Android学习笔记(4)-学习Intent的使用,