$《第一行代码:Android》读书笔记——第1章 Android系统
(一)Android系统架构
1、Linux内核层:各种底层驱动,如显示驱动、音频驱动、电源管理等。
2、系统运行库层:各种库支持,如3D绘图、浏览器内核、数据库等。
3、应用框架层:各种API,各种Manager。
4、应用层:所有的应用程序。
(二)安卓系统级功能
1、四大组件:Activity,Service,Broadcast,Content Provider。
2、系统控件:用于写界面,也可以自己定制界面。
3、SQLite数据库:轻量级、快速的嵌入式关系型数据库。
4、地理位置定位:内置GPS,基于它可以开发LBS应用。
5、多媒体:音频、视频、录音、拍照、视频等。
6、传感器:加速度传感器、方向传感器。
(三)搭建Android开发环境
1、准备所需要的软件:
(1)Android SDK
(2)编译器:Eclipse
(3)ADT:是Eclipse的插件
PS:一整套工具百度网盘存放地址:http://pan.baidu.com/s/1jI6fmjO
2、创建手机模拟器:用ARM架构的更快一些.
PS:模拟器出问题时,先重启adb试试(在DDMS中),再重启Eclipse
(四)Eclipse中项目文件结构
1、src:放所有Java代码的地方
2、gen:这个目录的内容都是自动生成的,主要有一个R.java文件,不要尝试手动去修改它!
java代码中:R.xx.xx查询
xml文件中:@xx/xx查询
比如:
R.string.hello_world
@string/hello_world
3、assets:存放一些随程序打包的文件
4、bin:包含一些在编译时自动产生的文件,其中会有一个apk文件,可以在手机上直接安装.
5、libs:包含第三方Jar包
6、res:图片、布局、字符串等各种资源
7、AndroidManifest.xml:项目配置文件,用到的所有四大组件都需要在这里注册.还可以添加权限声明、设置版本等.
8、project.properties:只有一行代码,指定编译程序时所使用的SDK版本.
(五)安卓项目中的资源(res目录)
1、以drawable开头的文件夹:存放图片.
PS:项目的图标文件就是在AndroidManifest.xml文件中通过下面代码指定的:android:icon="@drawable/ic_launcher"
2、以values开头的文件夹:存放字符串
3、layout文件夹:存放布局文件
4、menu文件夹:存放菜单文件
(六)日志工具android.util.Log
1、Log.v( ):打印琐碎的日志信息
2、Log.d( ):打印调试信息
3、Log.i( ):打印比较重要的数据
4、Log.w( ):打印警告信息
5、Log.e( ):打印错误信息
随机推荐
- 内核交互--sysfs
文档介绍:http://lxr.linux.no/linux+v2.6.37/Documentation/filesystems/sysfs.txt The sysfs Filesystem Sysf ...
- jetty访问jsp页面出现异常:org.apache.jasper.JasperException: PWC6345: A full JDK (not just JRE) is required解决
今天在jetty下配置一个jsp模版的报表页面,报如下异常信息: org.apache.jasper.JasperException: PWC6345: There is an error in ...
- hdu 5374 Tetris(模拟)
pid=5374">题目链接:hdu 5374 Tetris 模拟.每次进行操作时推断操作是否合法,合法才运行,否则跳过.每次一个token落地,推断一下是否有消除整行. #inclu ...
- 微信小程序 view 布局
刚看到这个效果的时候还真是和ReactNative的效果一致,属性也基本的一样. view这个组件就是一个视图组件使用起来非常简单. 主要属性: flex-direction: 主要两个特性”row” ...
- ios -为什么用WKWebView加载相同的html文本,有时展示的内容却不一样。
如图: 红色框部分是WKWebView,左边的是正常显示情况,右边的异常显示.我是在网页加载完成回调里执行的webview高度自适应内容: // 页面加载完成之后调用 - (void)webVie ...
- 【动态规划】skiing
[动态规划]skiing 时间限制: 1 Sec 内存限制: 128 MB提交: 34 解决: 15[提交][状态][讨论版] 题目描述 Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激. ...
- MySQL索引使用:字段为varchar类型时,条件要使用''包起来
结论: 当MySQL中字段为int类型时,搜索条件where num='111' 与where num=111都可以使用该字段的索引.当MySQL中字段为varchar类型时,搜索条件where nu ...
- Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.2——将Eclipse开发的项目导入到AndroidStudio
问题: 你想要将一个Eclipse ADT项目导入到Android Studio中. 解决方案: Android Studio提供了一个导入向导,可以重写已有的项目. 详细: 在Android Stu ...
- 【BZOJ1937】[Shoi2004]Mst 最小生成树 KM算法(线性规划)
[BZOJ1937][Shoi2004]Mst 最小生成树 Description Input 第一行为N.M,其中 表示顶点的数目, 表示边的数目.顶点的编号为1.2.3.…….N-1.N.接下来的 ...
- 《从零开始学Swift》学习笔记(Day 35)——会使用下标吗?
原创文章,欢迎转载.转载请注明:关东升的博客 看下面的示例代码是不是使用过: var studentList: String[] = ["张三","李四",&q ...