新手安卓开发详细教程

安卓

  • 一、安卓工程构建及第一个安卓程序运行
  • 二、安卓工程结构介绍
  • 三、安卓app的启动过程简述

一、安卓工程构建及第一个安卓程序运行

使用的软件 - eclipse(ADT)

1. 在Package Explorer栏右键点击, New → Android Application Project
新手安卓开发详细教程_第1张图片
Application Name: 在安装到手机上时应用程序显示的名字 (例如微信, QQ)
Project Name: 在Package Explorer栏里面显示的工程名字
Package Name: 包名 (包名不能带有中文, 会构建失败) ,大部分都是公司域名的倒写
Minumum Required SDK: 编译出来的应用程序, 要运行的, 支持的设备最低级要跑在安卓几 (默认就行)
Target SDK: 目标的SDK版本 (高于18也可以, 最好不要低于18)
Compile With: 我ADT里面的编译工具是4.4的
Theme: 主题 (比如我们可以导入华为主题, 小米主题等等), 这边我们选择默认

2. 做完上面的步骤我们选择Next
新手安卓开发详细教程_第2张图片
Create custom launcher icon: 是否创建启动的图标, 我们选择创建
Create activity: 是否在一个空工程里面创建activity, 我们也选择创建 (activity: 一个页面, 一个页面就称为一个activity)
Create Project in Workspace: 代码保存的位置
Add project to working sets: 添加一些工程到你的工作区域里面来, 这里我们就不管了

3. 这里我们基本不用动, 继续Next新手安卓开发详细教程_第3张图片
Image File: 我们程序安装完后图标默认的是一个小机器人, 如果在未来开发的过程中想要漂亮一点的话, 我们可以选择右边的Brwose导入自己做好的图片

4. 这页我们就讲Image File, 继续Next新手安卓开发详细教程_第4张图片
Create Activity: 创建一个Activity, 我们这里创建一个空的(Blank Activity), 作为学习的话, 我们就先创建一个空的Activity, 下面的Fullscreen Activity和Master/Detail Flow产生的一些代码我们可能看不懂

5. 继续Next
新手安卓开发详细教程_第5张图片
Activity Name: 我们建完会产生一个页面, 这个页面我们叫做主页面(MainActivity, 对应java文件), 默认就行
Layout Name: 布局名字, (布局是什么, 我们后面回去讲解, 布局也是对应一个文件, 这是文件名)

6. 后面我们也不做修改, 点击Finish, 程序构建完毕

7. 运行程序

怎么运行这个程序, 右键新建的工程→Run As→Android Application, 随后就会构建一个工程, 随后会弹出一个提示新手安卓开发详细教程_第6张图片新手安卓开发详细教程_第7张图片
没有发现虚拟设备, 问我们是否添加一个新的安卓虚拟设备, 你可以选择yes或者no, 但通常eclipse自带的一些模拟器运行会有点慢, 所以我们选择No, Cancel。

之后我们自己去下载一个夜神模拟器, 用模拟器跟eclipse进行连接, 用eclipse来运行我们的工程

下载完之后模拟器怎么和eclipse进行关联呢?
首先, 打开cmd命令窗口, 运行adb指令, 看你们自己的电脑有没有, 如果不认识的话, 我们进入安装eclipse时候的目录, 进入sdk文件夹, 再进入里面的paltform-tools文件夹, 把这里的路径拷贝起来, 打开我们电脑的高级系统设置, 配置里面的环境变量新手安卓开发详细教程_第8张图片新手安卓开发详细教程_第9张图片
之后, 我们重新在cmd命令窗口底下输入adb, 这时候就会显示相关的数据了

然后, 我们写入指令adb connect 127.0.0.1:62001(这里的127.0.0.1代表的是本地的地址, 62001是夜神模拟器默认的端口号)

这时候还可能有连接不上的问题, 我们先运行adb kill-server, 之后再运行adb start-server, 然后重新运行adb connect 127.0.0.1:62001, 应该就可以了。

如果你们每跑一次工程就要重新connect一次的话, 可以试下重启夜神模拟器

下面就是跑起来的安卓工程, 我们就实现第一个安卓程序的运行啦!
新手安卓开发详细教程_第10张图片

二、安卓工程结构介绍

1. 首先, 这是整个工程
在这里插入图片描述

2. src是用来存放java代码的, 里面有包, 有文件
新手安卓开发详细教程_第11张图片

3. gen是存放一些自动生成的文件, 在这里我们关心的是R.java的文件, 这里存放的是程序页面, 按键, 文本的ID, 是程序自己生成, 不用用户去修改

这里存放的ID用来干什么, 我们后期应用开发中再进行讲解
新手安卓开发详细教程_第12张图片

4. Android 4.4和Android Private存放的是安卓开发的一些库, 供开发者调用

5. assets存放一些资源, 配置文件, 图片
新手安卓开发详细教程_第13张图片

6. bin文件存放的是编译完生成的一些文件, 包括我们关心的apk
新手安卓开发详细教程_第14张图片

7. libs存放的是一些依赖库, 和上面的Android 4.4差不多的一个意思
在这里插入图片描述

8. res文件: drawable文件是用来存放app程序要用到的一些图片, 这里还分高低分辨率, h–高, l–低, 以此类推

layout是存放布局文件的文件夹, 一般一个activity(安卓界面)对应一个布局(例如MainActivity.java文件所对应的布局页面就是activity_main.xml文件)
新手安卓开发详细教程_第15张图片
剩下的这些文件夹主要存放的是一些参数, 或者自定义控件的文件
新手安卓开发详细教程_第16张图片

8. AndroidManifest.xml文件: 主要是对APP的配置

权限的配置: 网络访问权限, 名片夹访问权限, 相机访问权限
目标继器SDK版本, APP的名字, APP的图标, 第一个被加载, 启动页面的配置
在这里插入图片描述
总结: 在开发过程中, 主要用到的是上面介绍的src里面的java文件和layout里面的xml布局文件

三、安卓app的启动过程简述

安卓系统的界面是一个程序, 它就是Launcher进程。它会不断检测用户的触摸落在哪个app上, 如果你触摸的地方是个空白的地方, 它不做处理, 如果你滑动, 它就给你滑动, 这就是Launcher进程正在做的事情。当用户触摸到app的时候, 它实际上会通过这个bind驱动去通知底层的一些服务框架, 比如system server, system server会去启动app的进程, app进程有一个application thread, 有一个activity thread, 然后再去启动activity, 这是一个非常复杂的流程。(但这并不是我们目前需要知道的)

在这个阶段, 我们需要知道的是Launcher进程检测到用户触摸到app时, 这个工程里面最先加载的应该是AndroidManifest.xml, 首先它会判断你的sdk版本, 也就是你安装的目标机器是否承载得了这个安卓app, 有时候你承载不了装都装不上, 有时候装上了却不能运行。再来就是获取你需要的一些权限
新手安卓开发详细教程_第17张图片
例如我们现在给我们第一个安卓程序加一个网络权限

  1. 打开我们AndroidManifest.xml文件, 点击下面的Permissions新手安卓开发详细教程_第18张图片
  2. 点击Add, 选择Uses Permission, 点击OK
    新手安卓开发详细教程_第19张图片
  3. 点击Name栏开始选择, 选到android.permission.INTERNET项
    新手安卓开发详细教程_第20张图片
  4. 点击后, 直接Ctrl+s保存
    新手安卓开发详细教程_第21张图片
  5. 回到AndroidManifest.xml框, 我们就会看到它已经帮我们加好了权限指令
    新手安卓开发详细教程_第22张图片

当你有多个界面的时候, 该启动哪一个呢? 大家都是Activity, 这时候有一组intent-fliter的标签放在这里, 它就代表我们src里面的MainActivity是第一个被加载的页面
新手安卓开发详细教程_第23张图片

也就是说AndroidManifest.xml是我们app运行时第一个被加载的文件, 它为这个app去运行一些先决条件, 以及去判断app第一个加载的界面是哪个文件

新手安卓开发详细教程_第24张图片
java文件里面是创造了一个MainActivity类去继承了Activity类, 相当于他创造了一个新的空白页面, 然后里面的onCreate函数就是运行这个界面(类似于main函数), 我们以后的工作就是从这里开始做。

怎么让java文件和xml文件关联起来呢?
其实就是我们上面说的gen文件底下的R.Java文件在发挥作用, 里面存放的是程序页面, 按键, 文本的ID, 就是靠这个ID, setContentView才能找到对应的界面。

创建一个新的Activity
右击src文件夹→New→other
新手安卓开发详细教程_第25张图片
选择Android里面的Android Activity, 随后Next, 选择Blank Activity(空页面), 继续Next
新手安卓开发详细教程_第26张图片
取好第二个界面的名字, 点击Finish创建成功。

然后我们进入AndroidManifest.xml文件, 可以把intent-fliter标签放到我们新创建的Activity里面, 重新Run as后他运行就是新创建的页面了
新手安卓开发详细教程_第27张图片

总结: 当我们打开app时, Launcher进程去加载AndroidManifest.xml文件, 首先判断你的sdk版本, 然后看intent-fliter的标签放的是哪个Activity所在的区域, 从而去执行这个页面里面的onCreate函数

你可能感兴趣的:(java,java,安卓)