《第一行代码》笔记.docx
第一行代码笔记1第一章:Android简介1.1 Android系统架构1.1.1 Linux 内核层1.1.2系统运行层1.1.3应用框架层1.1.4应用层1.1.5架构图ApplicationsHomeContactsPhoneBrome,Appucation FrameworkLibrariesLinux KernelBtuetoomFlash MemoryB«Mer(*C) DriverWRAudioRowerDriverDrtversManagemeMWtndOMContentV*wNotrfkationIteASQerProvtdmSystem»*pbonyMWUfT»locationXMPManagerMan«9e*ManageManagerS«Mce1.2 Android 己发布的版本1.2.1 2.3.32.3.7还占有15左右1.2.2 4.0以上占有80%1.2.3目前最新版是5.0棒棒糖1.3 Android应用特色1.3.1四大组件活动(Activity)服务(Service)广播接收器(Broadcast Receiver)内容提供器(Content Provider)1.3.2丰富的系统控件1.3.3 SQLite 数据库1.3.4地理位置定位1.3.5强大的多媒体1.3.6传感器1.4 Android 开发环境1.4.1 Android SDK1.4.2 Eclipse1.4.3 ADT1.5 Android程序结构 1.5.1 src放java代码1.5.2 gen代码自动生成,主要放R.java文件1.5.3 assets可以放一些程序打包的文件,WebView加载的网页1.5.4 bin编译时自动产生的文件1.5.5 libs放些第三方jar包1.5.6 res放些图片、布局、字符串等资源的文件drawable -hdpi,drawable -Idpi,drawable -mdpi 文件夹layout文件夹menu文件夹 value文件夹1.5.7 AndroidManifest.xml整个Android项目的配置文件,四大组件都需要在这里注册1.5.8 project, properties指定编译时SDK的版本1.6 Log cat 工具1.6.1 Log.v()对应verbose级别,最低级1.6.2 Log.d()对应 debug 级别,比 verbose 高一级1.6.3 Log.i()对应 info 级别,比 debug 高一级1.6.4 log.w()对应 warn 级别,比 info 高一级1.6.5 log.e()对应 error 级别,比 warn 高一级2 第二章:活动(Activity)2.1什么是活动(Activity)一个应2.1.1是一种包含用户界面的组件,用于与用户交互, 用程序中包含零个或多个活动2.2 活动(Activity)用法2.2.1自定义类继承 Activity 父类,并且要在AndroidManifest.xml 文件中注册2.3 intent2.3.1是Android各个组件之间进行交互的另一中重要方式,可以指明动作,并可以互相传递数据2.4 intent 用法2.4.1显式用法和隐式用法2.5活动(Activity)生命周期2.5.1返回栈,Android使用Task来管理活动,一个 Task是一组存放在栈里活动的集合2.5.2活动状态运行状态暂停状态停止状态销毁状态2.5.3活动生存期onCreate() onStart() onResume() onPause() onStop() onDestroy() onRestart() 图解流程宕旬8也ifiira上一个沼劫anPauteQ近fii上一个譜iBonSepO活血精韻'-,r '->''''-了 ;, Q2.6活动(Activity)启动模式2.6.1 standard默认的启动模式,每次创建活动都会先建新的实例2.6.2 singleTop启动活动时,发现返回栈的栈顶是该活动,则可以认为直接使用它,不会创建新的实例返回柱Subtopic2.6.3 singleTask每次创建活动时,先判断是否己经存在活动实例,如果没有,则创建,如果有,则会把这个活动之上的所有活动统统出栈2.6.4 singlelnstance单独的返回栈来管理这个活动,可以解决共享活动实例问题2.7活动集合2.7.1 BaseActivity ,放一个活动集合实例,统一管理活动添 加和销毁3第三章:UI控件3.1常见控件3.1.1 TextView3.1.2 Button3.1.3 EditText3.1.4 ImageView3.1.5卜和口部'筮涇3.13J .S AldOialog预览与源文档一致下载高清无水印3.2基本布局3.2.1 UineariLayaut原创力文档max.bookl 预览与源文档一致下载高清无水印3.2.2 RefeitiwLayafjl:3.2.3 hr.meLgiyaut3.2.4 llbtelLayaui 3.3自定义控件原创力文档max.bookl 预览与源文档一致下载高清无水印原创力文档max.bookl 预览与源文档一致下载高清无水印3.3.1ViewGroup j Sutton ( 1 )Button4.3.6图解流程3.4 ListView 3.4.1数据列表控件3.4.2内部类ViewHolder ,用于对控件实例缓存,convertView 判断,setTag()方法调用3.5单位和尺寸3.5.1 px,像素屏幕中最小元素单元3.5.2 dp、sp 来帮忙4第四章:碎片(Fragment)4.1什么是碎片Ul片段,适用于平板比较多4.1.1是可以嵌入到活动中的4.2碎片的生命周期4.2.1运行状态4.2.2暂停状态4.2.3停止状态4.2.4销毁状态4.3碎片生存期4.3.1 onAttach()4.3.2 onCreateView()4.3.3 onActivityCreated()4.3.4 onDestroyView()4.3.5 onDetach()wwxt4.4动态布局技巧4.4.1使用限定符4.4.2Android中-些常见的限定符可以參初下表.房繽特征FR定符描述大小small提供給小牌符役备的依源normal提供绐中设备的責源提供给大爆専没备的资源X岫c提供纶超大爵峰设备的瓷源分辩卓Idpi提供珞帷分舟率板备物资源l2(MpiWF)mdpi提供论中等分辨率设备的资源(120dpi到160dpi)hdpi提供稔盛分辨率设备的资源H60dpi到240dpDxhdpi提供纶傾高分焼率设备的资源(240dpi320dp.)方向land提供爺横解设备的资源port提供始籟屏设备的资源Subtopic5第五章:广播机制(Broadcast Receiver)5.1有序广播5.1.1发岀L彖广擂-宀广播接收壽* 一 W广播接曲畧2 广播接收畧3可将广播歧司将广播邮Subtopic5.5使用本地广播Subtopic5.3接收系统广播5.3.1动态注册监听启动程序才能注册注意要取消注册5.3.2静态注册监听程序未启动,就能注册系统级别,不需要手动取消注册6第六章:数据持久化6.1将内存中的瞬时数据保存到存储设备中6.2文件存储6.3 SharedPreferences 存储6.3.1 Context 的 getSharedPreference()6.3.2 Activity 的 getPreference()6.3.3 PreferenceManager 的 getDefaultSharedPreference()6.4 SQLite数据库6.4.1 创建数据库,SQLiteOpenHelper6.4.2 升级数据库,onUpgrade()6.4.3添加数据6.4.4更新数据6.4.5删除数据6.4.6查询数据8.2接受和发送短信7第七章:内容提供器(Content Provider)7.1主要是用于不同应用程序之间实现程序共享,并提供了 完整的机制7.2 ContentResolver 用法7.3 URI介绍7.4创建自己的内容提供器7.4.1 onCreate()7.4.2 query()7.4.3 insert()7.4.4 update()7.4.5 delete()7.4.6 getType()8第八章:多媒体应用8.1 使用通知(Notification)8.3调用摄像头和相册8.4播放多媒体文件9第九章:服务(Service)9.1 Android后台运行的解决方案,不依赖于用户界面9.2 Android 多线程编程9.2.1 new Thread(线程类).start()9.2.2在子线程中更新UI9.2.3异步消息机制MessageHandlerMessageQueueLooperSubtopic9.2.4 使用 AsyncTask onPreExecutef) dolnBackground(Params.) onProgressUpdate(Progress.) onPostExecute(Result) 9.3服务基本用法9-3.2启动和停止服务9-3.3活动和服务通信9-3.4服务生命周期onCreate()on DestroyonBndQClients are bound to serviceThe service is stoppedby itself or a clientAll diems unbind by callingur»bindSeivice(>ocUnOndOonDestfoyOService shut downonDestroyOBounded serviceUnboundedservice9.3.5服务更多技巧前台服务IntentServiceAlarm机制10第十章:网络技术Call tostartServiceOonCreata(>onStartCommandOService running11.5高德地图10.1 WebView 用法10.2 Http协议访问网络10.2.1 HttpURLConnection 类10.2.2 HttpCIient 类10.3解析XML格式数据10.3.1 Pull 解析10.3.2 SAX解析10.4解析JSON格式数据10.4.1 JSONObject10.4.2 GSON11第十一章:位置服务(LBS)11.1基于位置服务11.2 LocationManager11.3 Google API12第十二章:传感器12.1探测外界信号,转化我们需要的信息12.2光照传感器12.3加速度传感器12.4方向传感器13第十三章:Android高阶技巧13.1全局获取Context的技巧,利用Application 类来初始 化13.2使用Intent传递对象13.2.1 Serializable 方式13.2.2 Parcelable 方式13.3定制自己的日志工具13.3.1全局封装类14第十四章:实战14.1酷欧天气Google Play15第十五章:将应用发布到13.4调试Android 程序