1.Activity
1.生命周期
2.启动模式
四种启动模式分别是standard(标准模式)、singleTop(栈顶复用模式)、singleTask(栈内复用模式)、singleInstance(单实例模式 - 加强的singleTask模式)
3.数据传递Intent
2.Service
1.生命周期
2.需要在AndroidManifest.xml文件中注册
3.与Activity绑定
Service中需添加Binder对象,在onBind方法中返回
Activity中需添加ServiceConnection,在BindService(service,ServiceConnection,BIND_AUTO_CREATE)方法中传递
4.与Thread的区别
5.创建前台Service
6.远程Service
在不同应用程序中访问同一个Service(跨进程通信),注册属性加入remote
3.Content Provider
实现在应用程序之间共享数据
需要对外共享数据的应用的操作
1.继承ContentProvider并重写下面方法:
public class PersonContentProvider extends ContentProvider{
public boolean onCreate()
public Uri insert(Uri uri, ContentValues values)
public int delete(Uri uri, String selection, String[] selectionArgs)
public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs)
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder)
public String getType(Uri uri)
}
2.在AndroidManifest.xml使用<provider>对该ContentProvider进行配置
<manifest.... >
<application android:icon="@drawable/icon" android:label="@string/app_name">
<provider android:name=".PersonContentProvider"
android:authorities="com.ljq.providers.personprovider"/>
</application>
</manifest>
需要获取共享数据的应用的操作
1.使用Activity提供的getContentResolver()方法
4.BroadCast Receiver
1.系统广播和自定义广播
2.需要在AndroidManifest.xml文件中注册广播接收器
3.在BroadcastReceiver的OnReceive方法中接收到广播执行操作
4.静态注册和动态注册
5.普通广播和有序广播
有序广播注册时添加属性android:priority,发送时sendOrderedBroadcast,终止传送abortBroadcast();