杭州Android培训
达内杭州Android培训中心

13732203138

热门课程

Android四大组件

  • 时间:2018-04-24
  • 发布:杭州android中心
  • 来源:知识库

组件一:Activity

Activity主要负责与用户进行交互,是每位Android 开发必须掌握的知识点。Activity 常见的四种生命周期状态如下:

1.   Active 运行状态

2.   Pause 暂停状态

3.   Stop 停止状态

4.   Killed 消亡状态

Activity 必须在 AndroidMainfest.xml 中注册。

Activity是四大组件之一,Android规定四大组件必须在AndroidMainfest.xml 中注册,Activity如果不注册,则会引起 App Crash 报错。

Activity 注册方法如下:

<manifest ... > <application ... >     <activity android:name=".BaseButtonMethods" />     ...  </application ... > ...</manifest >

组件二:Service

Service 是Android四大组件之一,与Activity相比,Activity是运行在前台,用户可以看得见,Service则是运行在后台,无用户界面,用户无法看到。

Service主要用于组件之间交互(例如:与Activity、ContentProvider、BroadcastReceiver进行交互)、后台执行耗时操作等(例如下载文件,播放音乐等,但Service在主线程运行时长不能超过20s,否则会出现ANR,耗时操作一般建议在子线程中进行操作)。

Service 有两种不同的启动模式 ,不同的启动模式对应不同生命周期,Service启动模式主要分两种: 1. 启动模式  2. 绑定模式

启动模式

此模式通过 startService()方法启动,此服务可以在后台一直运行,不会随启动组件的消亡而消亡。只能执行单一操作,无法返回结果给调用方,常用于网络下载、上传文件,播放音乐等。

绑定模式

此模式 通过绑定组件(Activity等)调用 bindService() 启动,此服务随绑定组件的消亡而解除绑定。

如果此时没有其它通过startService()启动,则此服务会随绑定组件的消亡而消亡。
多个组件不仅可以同时绑定一个Service,而且可以通过进程间通信(IPC)执行跨进程操作等。

两种服务可以同时运行

启动模式与绑定模式的服务可以同时运行,在销毁服务时,只有两种模式都不在使用Service时候,才可以销毁服务,否则会引起异常。

四大组件之一,必须在Androidmainfest.xml 中注册。

Service 注册方法如下:

<manifest ... > ...  <application ... >     <service android:name=".ServiceMethods" />     ...  </application></manifest>

注意:Service 如不注册 ,不会想Activity 那样会导致App Crash,Service 不注册 不会报异常信息,但是服务会起不来,如不注意很容易迷惑。

组件三:Broadcast

Broadcast是 Android 四大组件之一,是一种广泛运用在应用程序之间异步传输信息的机制。
Broadcast 本质上是一个Intent 对象,差别在于Broadcast可以被多个 BroadcastReceiver处理。BroadcastReceiver 是一个全局监听器,通过它的 onReceive() 可以过滤用户想要的广播,进而进行其它操作。

四大组件之一,必须在Androidmainfest.xml中注册

<receiver           android:name="ReceiverMethod"           android:enabled="true"           android:exported="true">           <intent-filter>               <action android:name="String....." />           </intent-filter>       </receiver>

如不注册,将导致无法接收处理广播消息。

广播的注册(静态注册、动态注册)

广播的注册分两种,一种在ndroidMfest.xml中静态注册,另一种是在Java代码中动态注册。

组件四:ContentProvider

ContentProvider是Android四大组件之一,其本质上是一个标准化的数据管道,它屏蔽了底层的数据管理和服务等细节,以标准化的方式在Android 应用间共享数据。用户可以灵活实现ContentProvider所封装的数据存储以及增删改查等,所有的ContentProvider 必须实现一个对外统一的接口(URI)。

四大组件之一,必须在Androidmainfest.xml 中注册

<provider           android:name="com.programandroid.ContentProvider.CustomContentProviderMethod"           android:authorities="ProgramAndroid"           android:exported="true" />

注意 : URI 中的元素
android:authorities="ProgramAndroid"

上一篇:Android培训经典分享
下一篇:Android高效学习方法
选择城市和中心
贵州省

广西省

海南省