我不懂安卓开发,但由于需求,我去简单的学了一下安卓开发。安卓系统从上至下分为四层:linux内核、android核心库及安卓运行时环境应用程序框架及应用程序等。

   View是安卓中图形用户界面的基类,提供了可视化界面的展示。安卓的图形界面展示可分为三层:底层是Activity,Activity上面是window,window上面是Views。View又可分为View和ViewGroup,View是指基本的控件,例如按钮,单选框,多选框菜单等;ViewGroup是指布局控件,即用来控制界面中的控件如何布局摆放的。安卓系统中的所有UI类都是建立在View和ViewGroup这两个基础之上的。所有View的子类称为“Wiget”,所有的ViewGroup的子类称为“Layout”。

View和ViewGroup之间采用了组合设计模式,如图

    任何视图组件的创建都有两种:一种通过在布局文件中声明创建,另一种通过在代码中创建。

Bundle是安卓开发中的一个类,用于Activity之间传输数据用,也可理解为装载数据的。Intent是Activity和Service的桥梁,通信员,Activity主要操作显示界面,service在后台运行,适合长时间运行,如下载听歌等。Activity是安卓中独有的概念,它是安卓的最小调度单位,Intent是安卓的进程之间,Activity之间线程之间交换数据的载体。




它描述的是一个应用程序环境的信息,即上下文。

                             2、该类是一个抽象(abstract class)类,Android提供了该抽象类的具体实现类(后面我们会讲到是ContextIml)。

                            3、通过它我们可以获取应用程序的资源和类,也包括一些应用级别操作,例如:启动一个Activity,发送广播,接受Intent  信息 等。。)

      Activity生命周期中有四个重要状态

    1、活动——在屏幕的前面(在栈顶),有焦点可见

    2、暂停——失去了焦点,但是它仍然可见

    3、停止——失去了交点,不可见

    4、销毁——被系统或进程结束

    Intent可以启动一个Activity,也可以启动一个Service,还可以发起一个广播(BroadCast),启动方法如下:

    Activity启动方法:1)startActivity()  2)startActivityForResult()

    Service启动方法:1)startService() 2)bindService()

    Broadcasts启动方法:1)sendBroadcase() 2)sendOrderBroadcast() 3)sendStickyBroadcast()


 Activity 各种状态及方法调用时机如图所示


可以将Activity生命周期分为以下三个过程

1)整个完整生命周期:从onCreat()方法开始到onDestory()方法结束

2)可见生命周期:从onStart 开始到onStop结束

3)前台可见生命周期:从onResume()方法开始到onPause()结束


 安卓提供的几种存取数据的方式:

1)preference(配置)

2)File(文件)

3)SQLite数据

4)网格


Android中各个应用程序组件之间是相互独立的,彼此的数据不能共享。为了实现数据的共享,Android提供了Content Provider组件来实现应用程序之间的数据共享。