1. 内容总结本文的主要内容是使用AndroidStudio开发工具开发基于纯Kotlin语言的Android应用程序。这个程序也很简单,只是输出HelloWorld。
我想大家至少都知道Android开发的一些基本知识,比如安装jdk、sdk、android studio,以及将模拟器连接到真实的设备或电脑上。由于以后的文章基本上都是实用性的,所以我会在实践之后详细讲解代码中的新功能、新功能以及使用的注意事项。
2、实战部分,打开Android Studio,准备创建新项目。 创建一个新项目。
2. 选择“空项目”作为项目的主模板,然后单击“下一步”继续下一步。
选择一个干净的项目模板
3.定义项目名称并定义包名称(包名称会自动填写,如需更改请直接编辑)。选择Kotlin作为应用开发语言,单击Finish进入AndroidStudio主界面。界面
配置项目(名称、包名、开发语言)
4、进入AndroidStudio主界面,了解其目录结构。
目录结构的干净版本
5、连接实际设备,点击运行按钮,查看执行后的效果。您将在主界面上看到HelloWorld,如下图所示。
运行并显示HelloWorld
3. 代码说明以上步骤是创建并运行一个新的Kotlin 项目。对于这个目录结构,目前有四个文件需要注意。
1.MainActivity.kt是应用程序运行的主页。此页面是在AndroidManifest.xml 中配置的活动。
2.activity_main.xml布局配置文件。直观地组织页面上显示的内容。
3、build.gradle app目录下的主配置文件主要用于配置签名、版本、运行环境、引入第三方库等。
4.AndroidManifest.xml主配置文件。它用于配置Android系统的四个主要组件,包括活动、服务、广播接收器、内容提供者、通道、权限和其他配置。
我们来一一介绍一下这部分的内容。
1. 主要活动.kt
/** 在Kotlin 中,类与Java 中一样使用class 关键字,但在Kotlin 中默认情况下类不能被继承。 /* 比如需要继承下面的类,则需要添加:类或这个类之前的open 关键字是/* 抽象类(在Kotlin 中,抽象类默认是可继承的) /* 在Java 中,我们使用extends 关键字进行继承,但只有Kotlin 继承": 表示Java 中实现的接口by /*implements,但在Kotlin 中仍然用“:”表示。和下面的MainActivity一样,它继承了AppCompatActivity()/*。 /*关于继承,有一点需要注意。在Kotlin 中继承类时,必须指定其默认构造方法。即需要在父类/*后面添加一对“()”。 */class MainActivity : AppCompatActivity( ) { //Activity的回调函数OnCreate,savedInstanceState:Bundle表示bundle可以为空//Kotlin变量名必须是变量名: type override fun onCreate(savedInstanceState: Bundle) { super.onCreate (savedInstanceState)//设置activity布局setContentView(R.layout.activity_main) }}2.activity_main.xml
Android布局文件可以直观地进行布局,并且可以根据需要切换到代码模式、配置模式或代码和配置模式。如下所示
XML视图模式
xml 版本='1.0' 编码='utf-8' 3.build.gradle
apply plugin: 'com.android.application'//引入kotlin核心插件apply plugin: 'kotlin-android'//引入kotlin扩展插件apply plugin: 'kotlin-android-extensions'android { //编译android项目版本compileSdkVersion 30 //打包工具版本buildToolsVersion '29.0.2' //默认配置defaultConfig { //appid,可以理解为Java包名(一个项目内唯一;当然可以设置不同的ID),多个yw.kotlin_helloworld' //最小SDK version minSdkVersion 23 //目标SDK版本targetSdkVersion 30 //版本号versionCode 1 //版本名称versionName '1.0' testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize .txt'), 'proguard-rules.pro' } }}//引入第三方库的配置依赖{implementation fileTree(dir: 'libs' , include: ['*.jar'] ) //引入核心SDK实现kotlin 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version' //支持androidx 实现'androidx.appcompat:appcompat:1.1.0' //Android 支持扩展库ktx,它为Android 提供了有用的功能,例如: //你可以完全避免在布局文件中findViewById。稍后会详细介绍这一点。 实现'androidx.core:core-ktx:1.3.0' //创建用于减少的布局类。布局级别。目前是xml。将使用该插件的类实现。 'androidx.constraintlayout:constraintlayout:1.1.3' //以下为部分单元测试内容,暂时不实现。 'junit:junit:4 .12'androidTestImplementation'androidx.test.ext:junit:1.1.1'androidTestImplementation'和roidx.test.espresso:espresso-core:3.2.0'}4.AndroidManifest.xml
除了BroadcastReceiver 的动态注册和注销之外,所有四个主要Android 组件都必须在此文件中进行配置。 Activity组件是所有组件中使用最多的组件,大家应该密切关注。
xml version='1.0'coding='utf-8' //这是新的MainActivity 配置。您可以使用相对或绝对路径。这里使用相对路径,因为package=位于'com.yw.kotlin_helloworld' 中已经写入了完整的包名称,因此您只需粘贴相对路径即可。 //这里表示这个MainActivity是主Activity,也是入口Activity //以后记住一切。查看此操作,此活动应该是您的应用程序的入口//即单击应用程序图标将其打开后看到的第一个活动。 4. 结论这是一个非常简单的应用程序,使用Kotlin 作为主要开发语言,尽管它是一个Android 项目。完成后,立即开始您的HelloWorld 之旅。