原文链接

http://kotlinlang.org/docs/tutorials/kotlin-android.html

写在前面

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。今天凌晨Google I/O 上,Google官方表示了对Kotlin语言的支持。所以决定今天开始入坑,学习Kotlin.

Kotlin在Android上的使用入门

安装Kotlin插件

Kotlin插件从3.0版本开始和Android Studio绑定。如果你使用的是之前的版本,你就需要手动安装Kotlin插件。点击“FIle”->”Settings”->”Plugins “->”Install JetBrains plugin…”, 然后搜索Kotlin并安装。如果你在“Welcome to Android Studio”界面,选择“Configure“->”Plugins”->”Install JetBrains plugin… “,然后搜索Kotlini并安装。安装完成后需要重启IDE。


创建项目

开始使用Kotlin进行Android开发是非常容易的。 在本教程中,我们将使用Android Studio进行操作。 如果使用Intellij IDEA开发Android,这个过程几乎是一样的。

首先让我们创建一个新的项目。 选择 “Start a new Android Studio project”或者“File”->”New project”。 以下对话框将引导你完成新项目创建过程。 你需要为项目命名,并选择你安装的Android SDK版本。 大多数选项可以保留其默认值,因此你只需要按几次“Enter”。

命名项目:



Android Studio 3.0在上面这个界面上回提供一个启用Kotlin支持的选项。勾选上这个选项你就可以跳过下面的“在项目中配置Kotlin”步骤。

选择Android版本:

选择一个自动生成的Activity:

命名Activity:

在Android Studio3.0中,你可以直接通过菜单选项新建Kotlin Activity,这样的话,你就可以跳过下面“转换Java代码为Kotlin”步骤。低于3.0的版本,需要使用java创建activity,然后用自动转换工具将其转换成 Kotlin。

一般来说,开始使用Kotlin的最简单方法是将Java Activity自动转换为Kotlin。 请注意,无论何时,与其通过查阅文档来寻找用Kotlin表单旧的表达式的方式,不如直接先使用Java编写它,然后将Java代码复制粘贴到Kotlin文件中,IntelliJ IDEA(或Android Studio)会建议我们转换,然后就可以自动转换成Kotlin。

转换Java代码为Kotlin

打开MainActivity.java文件。然后调用动作将Java文件转换为Kotlin文件。 你可以通过几种方法来实现。 最简单的一个是调用Find Action并开始输入一个动作名称(如下面的截图)。 或者,您可以通过“Code”->”Convert Java File to Kotlin File”菜单项或者对应的快捷键将Java文件转换为Kotlin。

转换完成后,用Kotlin编写的Activity将出现在你眼前

在项目中配置Kotlin

当你开始编辑Kotlin文件时,Android Studio会向显示Kotlin未配置的提示,所以这个时候你需要配置一下。

然后系统提示你输入Kotlin版本。 从安装版本列表中选择最新版本。

配置Kotlin后,应用程序的build.gradle文件应该会被更新一些内容。 现在你可以看到 “apply plugin: ‘kotlin-android’”以及一些依赖项。

最后一件事件就是sync项目。


构建并发布使用Kotlin编写的Android应用程序

你现在可以构建应用程序并在模拟器或真机上运行它。 这与Java中的工作方式完全相同。 你可以发布应用程序,并以类似于使用Java编写的Android应用程序的方式进行签名。

Kotlin有一个相当小的运行时文件大小:库大约是859KB(从1.1.2-2开始)。 这意味着Kotlin对.apk文件大小增加了一点。

Kotlin编译器生成字节码,因此Kotlin应用程序与Java编写的应用程序的外观和感觉确实没有差别。

写在最后

个人微信公众号:Learning_Of_ALL,欢迎大家扫码关注,Android技术交流。



Getting started with Android and Kotlin (译文)的更多相关文章

  1. Android的Kotlin秘方(I):OnGlobalLayoutListener

    春节后,又重新“开张”.各位高手请继续支持.谢谢! 原文标题:Kotlin recipes for Android (I): OnGlobalLayoutListener 原文链接:http://an ...

  2. [Android]使用Kotlin开发Android(二)

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4829007.html [TOC] 使用Kotlin+OkHtt ...

  3. Google Android Studio Kotlin 开发环境配置

    Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对Kotlin的重视,本文就介绍一下Android Studio下的Kot ...

  4. Google Android Studio Kotlin

    Google Android Studio Kotlin 开发环境配置 Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对 ...

  5. [Android]使用Kotlin+Anko开发Android(一)

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4800656.html  Kotlin是由JetBrains开发 ...

  6. 在Android中用Kotlin的Anko运行后台任务(KAD 09)

    作者:Antonio Leiva 时间:Jan 19, 2017 原文链接:https://antonioleiva.com/anko-background-kotlin-android/ Anko是 ...

  7. 让你的代码量减少3倍!使用kotlin开发Android(四) kotlin bean背后的秘密

    上一篇我们介绍了缩短五倍的java bean,不知道你在看的时候有没有一种疑问捏? 本文同步自博主的私人博客wing的地方酒馆 再来回顾一下,两种代码的对比 public class User { p ...

  8. Android Studio3.0 新特性 ~ New Features in Android Studio Preview (译文)

    原文地址:https://developer.android.google.cn/studio/preview/features/index.html 最新Android Studio版本是Andro ...

  9. 在Android上Kotlin的单元测试(KAD22)

    作者:Antonio Leiva 时间:Apr 25, 2017 原文链接:https://antonioleiva.com/unit-tests-android-kotlin/ 当然,Kotlin也 ...

随机推荐

  1. Python 网络编程了解

    阅读目录 一: 网络编程socket http://www.cnblogs.com/zhoujunhao/articles/7592671.html 二: TCP粘包处理 http://www.cnb ...

  2. oracle procedure简单的将临时表的数据插入或更新到目标表

    CREATE OR REPLACE PROCEDURE DEAL_SYNC_SCH_CUSTPHONE_NEW AS CURSOR C_CURU IS SELECT * FROM CBS_COS.SC ...

  3. maven依赖排除、顺序原则、版本统一管理

    <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core& ...

  4. flex 客户端缓存SharedObject

    读取缓存: usernameSO = SharedObject.getLocal('username'); if (usernameSO) { usernameSOAL = usernameSO.da ...

  5. koa2.0富文本编辑器的选择历程

    本人学习vue和koa2.0,做了一个简单的个人博客,博客自然会需要富文本编辑器的选择,由于nodejs和koa2.0,于是便开始了不断尝试的历程. 一.ueditor 刚开始在百度搜索,自然第一个发 ...

  6. sql中1=1和1=0的用处

    where 1=1 where 1=1有什么用?在SQL语言中,写这么一句话就跟没写一样. select * from table1 where 1=1与select * from table1完全没 ...

  7. Sublime : python环境

    1.安装python.注意区分32位和64位版本,勾选下图红框实现自动将python安装位置添加到环境变量 2.键盘win+r,输入cmd调出命令行,输入python回车,根据结果查看时候安装成功 3 ...

  8. 华为交换机S5700系列配置镜像端口(M:N)

    配置本地端口镜像组网图(M:N) 组网需求 如图所示,某公司研发一部.研发二部和市场部通过Switch与外部Internet通信,监控设备Server1.Server2与Switch直连. 现在希望将 ...

  9. POJ 1442 优先队列

    题意:有一些ADD和GET操作.n次ADD操作,每次往序列中加入一个数,由ADD操作可知序列长度为1-n时序列的组成.GET操作输入一个序列长度,输出当前长度序列第i大的元素的值.i初始为0,每次GE ...

  10. spring security采用自定义登录页和退出功能

    更新... 首先采用的是XML配置方式,请先查看  初识Spring security-添加security 在之前的示例中进行代码修改 项目结构如下: 一.修改spring-security.xml ...