一、Android 架构
(此图从菜鸟扒来)
(1)应用程序层
短信、浏览器这些就是属于这一层。
(2)应用程序框架层
应用程序框架层主要提供了构建应用程序时用到的各种API。
(3)核心类库
包含系统库和Android运行时库, libc 库,用于仓库存储和应用数据共享的 SQLite 数据库,用于播放、录制音视频的库,用于网络安全的 SSL 库等。
(4)Linux 核心层
Linux内核层为设备的各种硬件提供了底层的驱动,如网络和大量的设备驱动,避免了兼容大量外围硬件接口所带来的不便。它也提供了基本的系统功能,比如进程管理,内存管理,设备管理(如摄像头,键盘,显示器)。
二 、Dalvik 虚拟机
Android 应用程序的主要开发语言是Java,因此就需要Dalvik虚拟机来运行Java程序。它的指令集基于寄存器架构,通过执行其特有的dex文件来实现对象生命周期管理、堆栈管理、线程管理、安全异常管理、垃圾回收等功能。
三、Java 编写布局
//new一个RelativeLayout对象、LayoutParams对象
RelativeLayout relativeLayout = new RelativeLayout(this);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
//addRule参数对应RelativeLayout的XML布局属性,CENTER_IN_PARENT居中显示
params.addRule(RelativeLayout.CENTER_IN_PARENT);
//new一个TextView对象
TextView textView = new TextView(this);
textView.setText("helloworld app");
textView.setTextColor(Color.RED);
textView.setTextSize(18);
//添加TextView对象和TextView的布局属性,addView()将两个对象添加到RelativeLayout中
relativeLayout.addView(textView,params);
//通过setContentView()将relativeLayout添加到Activity界面中
setContentView(relativeLayout);