android开发启动组件分析
android开发启动分析。
1、四种组件中的activity、服务和广播接收者都通过intent的异步消息进行启动,intent会在运行时去各个组件相互绑定(可以将intent视为其他组件请求操作的信使。)无论组件属于自己应用还是其他应用,都可以进行绑定。
2、intent使用intent对象创建,他定义的消息用于启动特定组件或者特定类型的组件,可以显式、隐式启动。
3、对于activity和服务,intent定义要执行的操作,并且可以指定要执行操作的数据的uri。例如:intent传达的请求可以启动一个显式图像或者打开也i按的activity。在某些情况下,可以启动activity来接受结果,在这种情况下,activity也会在intent中返回结果。比如:可以发起一个intent,让用户选取某位联系人并将其返回。
①intent intent = new intent(this, secondactivity.class); startactivity(intent) ②intent intent = new intent(this, secondactivity.class); startactivityforresult(intent,1);
4、对于广播,intent只会定义要广播的通知,比如:指示设备电量不足的广播指示包括“电量不足”的已知操作字符串。
5、intent不会启动content provider,content provider会称为content resolver的请求目标时启动,内容解析程序通过内容提供程序处理直接事务,使得通过提供程序执行事务的组件可以无需执行事务,而是该在content provider对象上调用方法,这使得在内容提供程序和请求信息的组件之间流出一个抽象层(确保安全)
6、启动方法
①通过intent传递到startactivity()或startactivityforresult()来启动activity(或者安排其他新任务)
②通过intent传递到startservice()来启动服务(对执行中的服务下达新指令)。也可以通过intent传递到bindservice()来绑定该服务
③通过intent传递到sendbroadcase()、sendorderedbroadcase()或sendstickybroadcase()等方法发起广播;
④通过contentresolver上调用query()来对内容提供程序执行查询。
下一篇: 身居高位却卖主求荣,揭秘张松最终下场如何
推荐阅读
-
Android开发之菜单(menu)用法实例分析
-
Android开发基础之创建启动界面Splash Screen的方法
-
android开发教程之view组件添加边框示例
-
android源代码情景分析(android开发环境的搭建步骤)
-
Fedora14下android开发: eclipse与ibus确有冲突的问题分析
-
.NET Core开发的iNeuOS工业互联网平台,发布 iNeuDA 数据分析展示组件,快捷开发图形报表和数据大屏
-
android开发教程之用命令启动android模拟器并设置其内存大小
-
Android6.0开发中屏幕旋转原理与流程分析
-
Android开发中button按钮的使用及动态添加组件方法示例
-
android开发教程之开机启动服务service示例