Intent对象详解

来源:互联网 发布:淘宝一周流量分布 编辑:程序博客网 时间:2024/05/17 21:47

Intent封装Android应用程序需要启动启动某一个组件的“意图“。不仅如此,Intent还是应用程序组件之间通信的重要媒介,正如以往程序看到的,两个Activity可以把需要交换的数据封装成Bundle对象,这样就实现了两个Activity之间的数据交换。

  • 使用Intent启动系统程序
    Android的应用程序包含三种重要组件:Activity、Service、BroadcastReceiver,应用程序采用了一致的方式来启动它们——都是依靠Intent进行启动的,Intent就封装了程序想要的启动程序的意图,不仅如此,Intent还可用于与启动组件交换信息。

  • 使用Intent启动系统组件

组件类型 启动方法 Activity startActivity(Intent intent) startActivityForResult(Intent intent,int requestCode) Service ComponentName startService(Intent service) boolean bindService(Intent service,ServiceConnection conn,int flags) BroadcastReceiver sendBroadcast(Intent intent) sendBroadcast(Intent intent,String receiverPermission) sendOrderedBroadcast(Intent intent,String receiverPermission,BroadcastReceiver resultReceiver,Handler scheduler,int initialCode,String initialData,Bundle initialExtras) sendOrderedBroadcast(Intent intent,String receiverPermission) sendStickyBroadcast(Intent intent) sendStickyBroadcast(Intent intent,BroadcastReceiver resultReceiver,Handler scheduler,int initialCode,String initialData,Bundle initialExtras)

Intent代表了Android应用的启动“意图“,Android应用将会根据Intent来启动指定组件,至于到底启动哪个组件,则取决于Intent的各属性。

Intent对象大致包含Component、Action、Category、Data、Type、Extra和Flag这7种属性,其中Component用于明确指定需要启动的目标组件,而Extra则用于“携带“需要交换的数据。

0 0