工具传送门
http://www.androiddevtools.cn/
android架构
- 应用层 Android Application java
- 框架层 Android Application Framework java+c
- 运行库 libs+DVM c
- 系统层 操作系统内核 c
环境变量
- 配置platform-tools,tools 两个目录到环境变量
- adb 开发环境sdk 与 手机或者模拟器连接的桥梁
cmd
- adb start-server 启动adb
- adb kill-server 停止adb
- adb install 电脑上的位置 (D:/dir/a.apk)
adb uninstall <包名> 卸载
创建项目
Application Name: 装载手机上的名称
- Project Name: IDE上的工程名称
- Package Name: 应用程序的唯一标识 (签名key)
- Minimum Required Sdk:Android放弃了4.0.3以下的版本,最小就是15,限制了代码中api等级,同时也限制了安装等级
- Target SDK : 开发的时候针对哪一个版本号开发
- Compile With: 当前使用的SDK版本
- Theme: none
工程目录
- Android应用程序主要由3部分组成
- src 源文件(java 代码)
- res 资源文件 (布局,图片,字符串,颜色,字体。。。)
- AndroidManifest.xml 清单文件 配置文件,将所有东西组合起来
- R文件,在资源文件没有报错的情况下,会自动生成一个 静态R.java,里面就是所有资源的索引
- gen: 自动生成的目录 R,BuildConfig
xml文件结构
----------
1.
可扩展标记语言 xml
2.
3. html格式,html是固定的标签
4. <html>
5. <head>
6. <title></title>
7. </head>
8. <body>
9. </body>
10. </html>
11. xml可以随便定制标签
12. 比如 我需要描述一个对象,Person
13. class Person{
14. String name;
15. String sex;
16. int age;
17. }
18. Person p = new Person("张三丰","男",150);
19. 用xml可以描述
20.
21. 开合写法
22. <Person name="张三丰" sex="男" age=150>
23. </Person>
24. 上面也可以按照下面的格式去写 </p> </br>
25.
26. 闭合写法
27. <Person name="张三丰" sex="男" age=150 />
28.
29. xml可以将 属性写在标记的后面
30.
31. 除了属性之外呢,还可以在中间取添加
32. 除非需要在内部添加其他组件,否则一般直接使用闭合
33. <Collecation> <!-- 根部只有一个 -->
34. <List>
35. <Person name="张三丰" sex="男" age=150>
36. <Person name="王重阳" sex="男" age=88>
37. </List>
38. <Set />
39. </Collection>
40.
41. 有开一定有合,整个xml是一个树状结构,有根有枝,根必须只有一个,每个标记都可以写属性在
里面
42. 有些组件可以包裹其他组件,一些不能包裹
manifest.xml
1. android标准命名空间
2. xmlns:android="http://schemas.android.com/apk/res/android"
3.
4.
5. application 应用程序节点
6. activity 用户界面,系统四大组件之一
7. //意图过滤器
8. <intent-filter>
9. //整个应用程序的主界面,只要打开应用,就是打开这个页面 mian
10. <action android:name="android.intent.action.MAIN" />
11. //表名,他是一个启动页面,会放置在桌面上
12. <category
android:name="android.intent.category.LAUNCHER" />
13. </intent-filter>
模拟器
1. 夜神模拟器连接
2. nox_adb connect 127.0.0.1:62001
主界面
src/MainActivity相当于我们以前的main方法
应用程序主界面,
protected void onCreate(Bundle saveInstanceState)
{
//组件的生命周期,第一次启动的时候会调用
super.onCreate(saveInstanceState);//一定要保留
//设置布局
setContentView(布局文件R.layout.activity_main/组件);
}
资源文件
- drawable - 图片/其他可绘制的xml文件
- layout - 布局资源 android的UI显示的配置
- values - 字体,颜色,字符串,数组,样式等