Android编程宝典-第一章-初识Android-笔记

原创,转载请注明,http://blog.csdn.net/yimingsilence

1、开源,Android源码可下,手机制造商可以设定界面和为新硬件添加驱动。

2、架构:Linux内核,C编写,包括安全模型、内存管理、进程管理、网络栈、驱动模型。

                Android框架,C++编写,包括The Android run time、Open GL、WebKit、SQLite、Media Framework

                应用程序框架,用Java开发,包括Activity Manager、Telephony Manager、View System、Location manager等

3、开发环境搭建,Java JDK,为Android SDK奠定基础

                               Android SDK,通过此访问Android提供的类库

                               Eclipse,集成开发环境

                               Android ADT,Eclipse插件,管理AVD和SDK下载更新

                               (具体环境搭建顺序与上不同,详细步骤百度)

4、Hello World工程,File-New-Android Application Project-next,其中SDK选项

                               minimum是程序支持最低版本(越低兼容的越多)

                               Target是程序目标版本(越高兼容的越多)

                               Compile是程序编译版本 (越高兼容的越多),其余根据具体情况Next即可。

5、目录和文件,    文件

                               AndroidManifest.xml,项目清单,包括包名、组件注册信息(活动、后台服务和部分广播接受者)、权限声明、最低SDK版本、程序版本(版本名称和版本号只                                                                  有在此处更改,高版本才会提示更新,4.1是版本名,展示给用户,版本号不展示给用户)

                               project.properties,Android属性管理,如指定目标SDK版本 

                               文件夹

                               src,源文件放在此目录下或此目录的子目录下(注意命名规则)

                               Android version,编译SDK版本所用android.jar库文件

                               Android Dependencies,应用程序向导建立的应用程序依赖的其他库文件,包括android-support-v4.jar(相当于功能更新包)和其他功能包

                               assets,程序所用文件,默认空,打包后不变(不编译成二进制),内容文件转换为字节流后使用。普通状况下使用比res麻烦

                               bin,工程编译后一部分文件如APK安装包、Android-Manifest.xml项目清单、Dalvik虚拟机能运行的classes.dex文件

                               libs,程序运行所需除Android Frameworks之外库文件

                               res,各种资源文件,里面的文件有唯一资源ID编译时ADT会会将这些ID与gen下R.java里的属性对应,res里各文件夹内容文件作用不细述

                               gen,新建工程没有,编译一次后自动生成,包含R.java等,不能手动编辑,误编辑可直接删除,重新编译会自动生成

6、Activity,用户界面。至少一个主入口

7、Intent,核心消息机制,除了消息传递,可以关联程序,任何程序都可以广播和接受意图,意图分为隐式和显式,隐式只说明动作是什么和要操作的参数;显式需要指定接受类

                  发送Intent可能会启动同一个应用程序中的组件或则会其他应用程序的组件。根据Intent-filter选择接收的隐式意图。如果发出的意图没有响应,程序意外退出。

8、Broadcast Receiver,广播接受者在相关事件发生时会调用onReceive方法

9、Service,后台运行,无界面

10、视图和用户界面控件,自行查阅文档

11、UI线程是主线程,如网络下载等耗时操作应放入其他线程,避免5秒后程序无响应。AsyncTask类用来处理异步操作,可以启动新线程。

12、Android应用程序生命周期,Android程序都在自己独立的进程空间中运行,每个进程事实上都是一个Dalvik虚拟机实例,Android应用程序本身无法对自己的生命周期尽心管             理,么个程序的内存和进程管理由安卓进行时来管理。为保证内存充足,其按照进程优先级杀掉部分进程:活动>可见>启动后>后台>空(进程结束仍保存的缓存)

                                       


你可能感兴趣的:(编程,android)