工欲善其事必先利其器。
一、Android开发工具AndroidStudio安装以及环境搭建。
AS下载路径:https://developer.android.google.cn/studio
AS历史版本下载路径:https://developer.android.google.cn/studio/archive?hl=zh-cn
安装过程省略。。。
Java8 jdk下载https://www.oracle.com/java/technologies/downloads/#java8-windows
安装过程省略。。。
AS安装完成后,内置了一个默认的jre环境。路径在:C:\Program Files\Android\Android Studio\jre\bin,Android sdk路径:C:\Users\niuyongzhi\AppData\Local\Android\Sdk。
二、环境变量配置:
我的电脑右键--属性--高级系统设置--环境变量。系统变量选择Path,编辑--新建,
分别将jdk的bin路径和sdk的路径配置到Path变量中。
jdk环境变量路径:C:\Program Files\Android\Android Studio\jre\bin。
配置完成后,验证。在CMD命令行中输入java -version。能够显示java版本信息,说明配置成功。
配置sdk环境变量:C:\Users\niuyongzhi\AppData\Local\Android\Sdk\platform-tools
执行adb shell命令进行验证:
进入上面的界面后,就可以执行linux下相关的命令。
执行 adb devices,查看连接是设备:
adb 还有很多其他的命令,后面会单独写一篇来介绍adb的命令。
可能会有个疑问,为什么可以执行java 和 adb命令呢?
执行java命令,其实是执行的C:\Program Files\Android\Android Studio1\jre\bin\java.exe.
执行adb命令,执行的是C:\Users\niuyongzhi\AppData\Local\Android\Sdk\platform-tools\adb.exe
AS开发工具安装好了,环境变量也配置完成。 接下来创建第一个Android项目Hello World.
三、创建app项目
打开AS开发工具,左上角File--New--NewProject,就可以创建一个Android项目。
Android App的入口在AndroidManifest.xml。
配置了action 标签 为:android.intent.action.MAIN 和 category 为android.intent.category.LAUNCHER的Activity 就是一个App入口,也就是点击桌面上的图标,进入的第一个Activity。Activity是Android非常重要的一个角色,后面会详细介绍。
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
MainActivity.java 默认继承AppComatActivity。
在Oncreate方法中有一行代码。setContentView(R.layout.activity_main);
给Activity设置一个layout文件,用于Activity在屏幕上呈现什么内容的展示。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
接下来看下设置的layout文件在哪里?
Activity的界面是写在xml中的。里面配置了一个LinearLayout,是一个容器组件和一个TextView,内容是"hello world"
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!" />
</LinearLayout>
运行到手机上的效果。这就是第一个应用。
四、问题拓展
1)为啥点击桌面的图标,能够打开一个App?
这都是Android系统在后面做的事情。今后深入分析。
2)为啥在activity_main.xml中通过标签的形式配置TextView,就可以显示到手机上。
这后面的逻辑是哪样的,这些工作都是Android系统在做的,后面将会深入分析。
3)setContentView(R.layout.activity_main); 这个R是啥?
这个是一个R文件,AndroidStudio在编译我们的项目后,对我们定义在项目中的xml文件,图片,定义在values文件夹下的color、string、style等,统一生成的一个索引文件,或者成为资源文件。这样我们就可以通过R.layout.xxx,R.color.xxx,R.string.xxx,R.style.xxx等方式,快速的在代码中引用需要的资源。
Android的R文件是在编译过程中,通过aapt命令生成的资源文件。aapt命令是在
C:\Users\niuyongzhi\AppData\Local\Android\Sdk\build-tools\28.0.3\aapt.exe的。
28.0.3 就是编译项目是选择的版本号。
这个定义在项目 app\build.gradle文件中的 buildToolsVersion “28.0.3”
AndroidStudio编译项目是通过Gradle进行的,编译过程中,就会读取定义在build.gradle中的配置。关于gradle配置的说明,今后会写文章进行详细的阐述。