一、android基本概念。
1、android的sdk tools把android的所有数据编译成apk,供android安装。
2、android一旦装上,每个android程序是运行在自己的安全沙箱中。
3、android操作系统是一个多用户的linux系统,每个应用程序有不同的用户。
4、系统给每个android程序分配一个唯一的用户ID,这个用户ID只有操作系统知道。
5、每个进程拥有自己的虚拟机,因此可以保证进程间的隔离。
6、android应用程序只要有一个组件被启动,则操作系统会启动此进程,不再使用或系统回收资源时会杀死这个进程。
7、android的应用程序不能访问系统的功能,除非授予权限。申请权限调用某些功能,比如相机,内存卡,蓝牙等。
8、android的任何应用程序都能够启动另外应用程序的组件。
二、android的四大组件
1、活动(Activity)
代表一个用户界面。
2、服务(Service)
是运行在后台的处理长时间的操作或者运行远程任务的,比如去下载文件,而不阻塞用户界面,
服务不提供用户界面。
3、内容提供者(Content Provider)
Content Provider操作一系列的应用程序数据,比如文件系统,SqlLite,或者你能够访问的任何的存储地址。
android系统提供了一个Content Provider修改联系人信息。
Content Provider可以操作应用程序私有的相关数据。
4、广播接收器(BroadCast ReCeiver)
接收系统广播的消息,尽管不作为用户界面显示,但是可以创建状态条提醒用户相应的事件发生了。
BroadCast ReCeiver一般作为意图(Intent)进行传送。
5、其他
活动、服务、广播接收器都是通过intent异步激活的。在某些情况下,你可能会打开一个活动窗体,然后返回intent,intent中包含了
你需要的数据。
活动提供者不是由意图激活的,它是由ContentResolever激活的,它是介于请求和内容提供者之间的一层,
这样做是为了安全。
Intent是可以用来启动活动、服务、广播接收器的,但是它的最大的威力还是用来启动其他应用程序的相关组件,如果组件是定义在AndroidManifest.xml
中才能被启动,否则不能被启动,但是广播接收器是可以通过程序代码registerReceiver()启动的。
6、生命应用程序需求