`

Android API课程1.2:Activating Components

 
阅读更多

在四种应用组件中,活动,服务和广播这三种是被叫intent(目的,意图)的异步消息激活的。intent彼此绑定在运行时的单个组件,而不管这些组件是属于你的应用还是其它的应用。你可以认为intent就是,其它组件的的请求消息。

 

intent是被Intent对象创作的,Intent对象定义消息去激活一个或者一种组件的。intent可以是明确的,也可以是暗示的,独自的。

 

对于活动和服务,intent定义执行的动作(例如,去看或者发送)和可能指定执行的URI(统一资源定义)数据(可能其他的组件需要知道的)。例如,intent可能传送请求给一个活动去显示图片或者打开网页。在一些情况下,你可以启动活动去接收返回结果,在这种情况下,活动也会返回结果给Intent。例如,你可以发出intent去让用户选择一个联系人并让它返回给你,那么返回的intent包含一个选中的联系人的URI点。

 

对于广播接收器(broadcast receivers),intent简单地定义被广播的通知,例如,一个广播是要指明电池电量低只需包括一个已知的动作字段标识“batter is low”。

 

剩下的一种组件,内容提供者(content provider),他们不是被intent激活的。而是被,来自ContentResolver的请求定位后,激活的。Content resolver使用content provider处理所有的直接事务,以便执行事务的组件不需要对ContentResolver调用方法。这就在content provider和组件请求信息之间产生了一个抽象层,这是为了安全。

 

激活每种组件都有单独的方法:

  • 你可以通过发送Intent给startActivity()或者startActivityForResult()(当你想接收活动的返回值),启动一个活动或者给它新东西做。
  • 你可以通过发送Intent给startService(),来启动一项服务或者给正在运行的服务新的指令;或者你可以通过发送Intent给bindService()来绑定一个服务。
  • 你可以通过发送一个Intent给像sendBroadcast(),sendOrderedBroadcast()或者sendStickyBroadcast(),来发起一个广播。
  • 你可以通过在ContentResolver中调用query()来向content provider(内容提供者)执行查询。

更多信息关于怎么使用intents,参考Intents and Intent Filters文档。更多的信息关于激活特定的组件也被写在以下的文档: Acitivities,Services,BroadcastReceiver 和 Content Providers。

分享到:
评论

相关推荐

    Android开发指南中文版pdf

    ##### 激活组件 - Activating Components - **Intent**:用于激活组件的主要机制。Intent是一个封装了启动请求的数据对象,可以用于启动Activity、Service或发送广播。 ##### 关闭组件 - Closing Components 组件...

    Android编程指南(中文)

    激活组件 - Activating Components: Intent** - **Intent**: 用于在组件间传递信息或请求服务的一种机制。可以通过 Intent 来启动 Activity、Service 或发送广播。 - **关闭组件**: 当组件完成其任务后,可以调用...

    Android开发指南中文版

    4. **激活组件:Intent (Activating Components: Intent)** Intent是Android中的一种消息对象,用于启动另一个组件或传递数据。它可以是显式的,指定确切的组件来启动,也可以是隐式的,让系统根据Intent的过滤器...

    Android中文开发指南

    - **关键类 (Key Classes)**:Android应用程序由多个类组成,包括`Activity`(活动)、`Service`(服务)、`BroadcastReceiver`(广播接收器)、`ContentProvider`(内容提供者)等,它们构成了Android应用程序的...

    Android开发指南全中文版

    - **激活组件(Activating Components):** 通过Intent来启动Activity、Service和BroadcastReceiver。 - **关闭组件(Closing Components):** 当组件完成其任务后,可以通过适当的方法关闭它们。 - **manifest文件:*...

    android中文版全面剖析

    - **进程**:Android中的每个应用程序默认运行在一个独立的Linux进程中。 - **线程**:在进程中执行的任务,主线程负责处理UI事件。 - **远程过程调用**:允许不同进程之间的组件相互通信。 - **线程安全方法**:...

    Android代码-sonar-android

    Android Lint Plugin Contributions are welcome. Join the effort ! Description ...Tune the SonarQube quality profile by activating the Android Lint rules on which you'd like to see some issues r

    Android开发指南中文版.pdf

    #### 激活组件 - Activating Components - **Intent**:用于启动 Activity 或 Service,通过 Intent 对象指定目标组件及附加数据。 - **Intent 过滤器**:在 AndroidManifest.xml 文件中定义,用来描述 Intent 的...

    android开发学习

    #### 三、激活组件:Intent (Activating Components: Intent) Intent 是 Android 中用于激活组件的重要机制。通过 Intent,可以启动 Activity、Service 或者发送广播。Intent 可以携带额外的数据,如字符串、布尔值...

    android开发指南中文版

    **激活组件 - Activating Components** - 使用`Intent`来激活特定的组件。例如,可以使用Intent启动一个新的Activity、服务或发送广播。 **关闭组件 - Shutting Down Components** - 组件可以由其自身或其他组件...

    MAA_S4HANAX_BB_ConfigGuide_EN_XX

    - **2.2.3.1 Gateway系统:激活SAP NetWeaver Gateway** (Gateway System: Activating SAP NetWeaver Gateway) - **2.2.3.2 Gateway系统:在NetWeaver Gateway中创建信任的RFC到SAP Business Suite** (Gateway ...

    Android.Design.Patterns.and.Best.Practices.epub

    Are you an Android developer with some experience under your belt? Are you wondering how the experts create efficient and good-looking apps? Then your wait will end with this book! We will teach you ...

Global site tag (gtag.js) - Google Analytics