Android Studio和Kotlin入门

时间:2020-02-23 14:29:18  来源:igfitidea点击:

欢迎使用Kotlin进行有关Android开发的系列教程。
本系列旨在帮助您使用Kotlin构建Android应用程序。

我们将从Android开发的绝对基础开始,随着系列的发展,您将获得与Kotlin一起进行Android开发的专业知识。

在本教程中,我们将首先介绍Android Studio。
如果您过去曾经使用过Android Studio,请仔细阅读本教程,以了解Android Studio 3.0带来的新功能和更改。

Android Studio入门

Android Studio基于JetBrains的IntelliJ IDEA软件,专门用于Android开发。
它适用于Windows,Mac和Linux操作系统。
您可以从此链接为相关的操作系统下载它。

注意:您需要在系统上安装Java开发工具包才能构建和运行Android Studio项目。

让我们第一次启动我们的Android Studio IDE!

随着Android Studio 3.0的引入,加载屏幕看起来更酷!

更新Android Studio IDE如果您使用的是较旧的Android Studio IDE,请从菜单中进行更新:Android Studio->检查更新。

随后,通过随后的提示更新Gradle插件。

您的根目录build.gradle如下所示:

buildscript {
  repositories {
      google()
  }

  dependencies {
      classpath 'com.android.tools.build:gradle:3.0.1'
  }
}

Android Studio功能

Android Studio 3.0是对先前的2.3.2的一个重大更新,致力于帮助开发人员。
以下是此更新附带的主要功能:

  • 内置Kotlin支持
  • Gradle语法的变化
  • 对Java 8的扩展支持
  • 使用Android Profiler进行优化
  • Android Instant App支持

1.在Android Studio中使用Kotlin

对于Android Studio 3.0之前的IDE,以下是在您的应用程序中启用Kotlin支持的过程:

转到Android Studio |首选项|插件|安装JetBrains插件|科特林。

以下屏幕演示了相同的内容:

借助Android Studio 3.0更新,Android SDK在创建新项目时提供了内置的Kotlin支持,如下所示。

选择目标设备

注意:在以上窗口中启用即时支持时,将在后面的部分中介绍。

根目录build.gradle如下所示:

buildscript {
  ext.kotlin_version = '1.1.51'
  repositories {
      google()
      jcenter()
  }
  dependencies {
      classpath 'com.android.tools.build:gradle:3.0.1'
      classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

  }
}

allprojects {
  repositories {
      google()
      jcenter()
  }
}

task clean(type: Delete) {
  delete rootProject.buildDir
}

为了方便进行更小和更快的更新,默认情况下,Android Studio 3.0使用Google的Maven存储库" google()",而不是使用Android SDK Manager查找对Android支持库,Google Play服务和Firebase Maven依赖项的更新。

该应用模块的" build.gradle"如下所示。

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

android {
  compileSdkVersion 26
  defaultConfig {
      applicationId "net.androidly.androidstudiokotlin"
      minSdkVersion 16
      targetSdkVersion 26
      versionCode 1
      versionName "1.0"
      testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  }
  buildTypes {
      release {
          minifyEnabled false
          proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
      }
  }
}

dependencies {
  implementation fileTree(dir: 'libs', include: ['*.jar'])
  implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
  implementation 'com.android.support:appcompat-v7:26.1.0'
  implementation 'com.android.support.constraint:constraint-layout:1.0.2'
  testImplementation 'junit:junit:4.12'
  androidTestImplementation 'com.android.support.test:runner:1.0.1'
  androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}

2. Gradle语法的变化

随着Android Studio 3.0的引入,不推荐使用关键字compile。
改为使用"实现"和" api"。
通常,所有的compile语句都被implementation代替。
"执行"语句仅重建单个模块,而" api"语句将重建依赖于当前模块的所有模块。
因此,除非您的模块不会泄漏其与其他模块的接口,否则应使用"实现"。

compile 'com.android.support:appcompat-v7:26.1.0'

//changes to

implementation 'com.android.support:appcompat-v7:26.1.0'

3. Java 8支持

与之前的Android Studio版本必须启用第三方插件不同,ʻapply plugin:'me.tatarka.retrolambda'Android Studio 3.0内置了对Java 8的支持。

可以通过File |项目结构如下图:

Android Profiler

Android Studio 3.0中的Android Profiler工具取代了Android Monitor工具。
这些新的配置工具可为您的应用的CPU,内存和网络活动提供实时数据。

打开工具转到:视图|工具窗口| Android Profiler

该工具在单个帧中显示CPU,内存和网络事件探查器时间轴。

4. Android Instant App支持

Android Studio 3.0附带了对Instant Apps的支持。
Instant Apps允许用户加载本机应用程序的一部分,而无需安装完整的应用程序。
您必须在浏览器中遇到超链接,该超链接要求您安装应用程序以查看内容。
Instant App可以从中拯救用户。
它允许您在浏览器中查看本机应用程序,而无需从Play商店下载。

Instant API支持可用于API> 23,并可在以下窗口中启用。

即时应用程序的项目结构如下所示:

让我们分别看每个模块。

  • 基本功能模块:
    即时应用程序的基本模块是基本功能模块。
    所有其他功能模块必须依赖于基本功能模块。
    基本功能模块包含共享资源,例如活动,片段和布局文件。
    构建时会创建功能APK。

该模块的build.gradle如下所示:

  • 即时应用模块:
    该模块的build.gradle如下所示:
    它会构建用户查看的Instant App APK,而无需下载该应用。

  • 应用模块:
    它会构建我们应用程序的APK。

  • 功能模块:
    其中包含将在即时APK中显示的应用程序部分的代码

注意:它也可以包含多个功能。