创建第一个Android项目
毫无疑问,那就是"hello world"
创建HelloWorld项目
选择new project,会打开一个让你选择项目类型的界面
模板选择"Empty Activity" 表示成功
启动模拟器
这里我下载的是Android10版本,大家按着操作即可 因为电脑还不存在Android10系统的镜像,因此需要下载镜像 点击三角形开始启动 锤子:编译 最右边表示运行
分析第一个Android程序
.gradle和.idea
这两个目录下放置的都是Android Studio自动生成的一些文件,我们无须关心,也不要下手动编辑
app
项目中的代码,资源等内容都是放置在这个目录下的,后面基本都是在这个目录下进行,我们展开详细说说
build
这里的build和外边的build目录类似,也包含了一些编译自动生成的文件,不用过多关心
libs
使用到第三方jar包,就需要把这些jar包都放在libs目录下,放在这个目录下的jar包会被自动添加到项目的构建路径里
androidTest
此处是用来编写Android Test测试用例的,可以对项目进行一些自动化测试
java
放所有java的代码(包括kotlin代码),展开目录,系统为我们自动生成了一个MainActivity文件
res
简单来说,你项目中所有的图片,布局,字符串等资源都要存放在这个目录下 图片放在drawable目录下 布局放在layout目录下 字符串放在values目录下
AndroidMainfest.xml
整个Android项目的配置文件,四大组件,给应用程序加权限声明,用处还挺多
test
用来编写Unit Test测试用例的,是对项目进行自动化测试的另一种方式
.gitignore
将app模块内指定的目录或文件排除在版本控制之外,与外界用法类似
app.iml
IDEA项目自动生成的文件,不用关心
build.gradle
构建脚本
proguard-rules.pro
指定项目代码的混淆规则,防止破解
build
这个目录主要包含了在编译时自动生成的文件,你也不需要过多关心
gradle
这个目录下包含了gradle wrapper的配置文件
.gitgnore
这个文件是用来指定的目录或文件排除在版本控制之外的
build.gradle
这是项目全局的gradle构建脚本,通常这个文件中的内容是不需要修改的
gradle.properties
这个文件是全局的gradle配置文件,在这里配置的属性将会影响到项目中所有的gradle编译脚本
gradlew和gradlew.bat
这两个文件是用来在命令行界面中执行gradle命令的,第一个是在mac或者linux使用的,第二个是在windows下使用的
local.properties
用于指定本机中的Android SDK路径,通常内容是自动生成的,不需要修改
settings.gradle
这个文件用于指定项目中所有引入的模块
首先打开Android-Manifest.xml文件,找到如下代码
<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进行注册,没有在AndroidManifest.xml里注册的activity是不能使用的
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
这两行表示MainActivity是这个项目的主Activity,手机上点击应用图标首先启动的就是activity
打开MainActivity代码
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
继承AppCompatActivity这个类,这个类是AndroidX中提供的一种向下兼容的Activity,可以使activity在不同的系统版本中的功能保持一致 我们项目中自定义的Activity都必须继承它或者它的子类才能拥有Activity的特性
Android程序的设计讲究逻辑和视图分离,因此不推荐在Activity中直接编写界面,setContentView方法,就是给Activity引入了一个activity_main布局,那么"hello world"就一定在这里定义的
|