Getting started with Android and Kotlin (译文)
原文链接
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 (译文)的更多相关文章
- Android的Kotlin秘方(I):OnGlobalLayoutListener
春节后,又重新“开张”.各位高手请继续支持.谢谢! 原文标题:Kotlin recipes for Android (I): OnGlobalLayoutListener 原文链接:http://an ...
- [Android]使用Kotlin开发Android(二)
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4829007.html [TOC] 使用Kotlin+OkHtt ...
- Google Android Studio Kotlin 开发环境配置
Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对Kotlin的重视,本文就介绍一下Android Studio下的Kot ...
- Google Android Studio Kotlin
Google Android Studio Kotlin 开发环境配置 Google 近日开发者大会宣布Kotlin成为Android开发的第一级语言,即Android官方开发语言,可见Google对 ...
- [Android]使用Kotlin+Anko开发Android(一)
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4800656.html Kotlin是由JetBrains开发 ...
- 在Android中用Kotlin的Anko运行后台任务(KAD 09)
作者:Antonio Leiva 时间:Jan 19, 2017 原文链接:https://antonioleiva.com/anko-background-kotlin-android/ Anko是 ...
- 让你的代码量减少3倍!使用kotlin开发Android(四) kotlin bean背后的秘密
上一篇我们介绍了缩短五倍的java bean,不知道你在看的时候有没有一种疑问捏? 本文同步自博主的私人博客wing的地方酒馆 再来回顾一下,两种代码的对比 public class User { p ...
- Android Studio3.0 新特性 ~ New Features in Android Studio Preview (译文)
原文地址:https://developer.android.google.cn/studio/preview/features/index.html 最新Android Studio版本是Andro ...
- 在Android上Kotlin的单元测试(KAD22)
作者:Antonio Leiva 时间:Apr 25, 2017 原文链接:https://antonioleiva.com/unit-tests-android-kotlin/ 当然,Kotlin也 ...
随机推荐
- JAVA接口中不可以有静态方法吗
1. 接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract(只能是 public abstract,其他修饰符都会报错),所以不能含有静态代码块以及静态方法(用 ...
- Python 中lambda 简单介绍
转自:https://www.cnblogs.com/AlwaysWIN/p/6202320.html 在学习python的过程中,lambda的语法经常出现,现在将它整理一下,以备日后查看. 1.l ...
- Terms of Company
CMD系统:中国机车远程监视与诊断系统,由车载子系统.车地数据传输子系统和CMD地面综合应用子系统三部分组成. LKJ:列车运行监控装置,机车运行过程中与行车安全相关的信息,如司机号.车次.公里标.速 ...
- [CF19E]Fairy
给定一张n个点m条边的无向图,求删除哪一条边后,能够确保构成一个二分图,输出所有可能 解法:我们知道二分图的性质是没有奇环,这道题我们也应该从这个方面入手来考虑. 如果没有奇环的话我们当然想怎么删就怎 ...
- 混合开发的大趋势之一React Native之Image (脑动理解)
文章是宝宝自己写的,你可以转走,标明哪来的就行王亟亟的大牛之路 国庆这些天要么旅游要么WOW,感觉整个人都废了.. 直接从黄种人晒成了非洲大酋长..然而还是无橙,这礼拜要做7天,昨天把单元测试的东西整 ...
- grep 使用场景
(1)结合find命令和管道 你的一个音乐文件夹里有多种格式的文件,而你只想找到艺术家jay的mp3文件,并且不含有任何的混合音轨 find . -name "*mp3" | ...
- spring security使用数据库验证的逻辑处理
前面做了多个示例,包括使用jdbc和hibernate两种方式访问数据库获取用户信息和权限信息,其中一些关键步骤如下: 我们在SecurityConfig中配置覆盖configure方法时候,可以 ...
- git diff提示filemode发生改变解决办法
git diff提示filemode发生改变(old mode 100644.new mode 10075) Posted on 2016-11-15 16:55 我是孙海龙 阅读(2292) 评论( ...
- Spring -- spring 和 hibernate 整合
1.概述, 事务管理, 编程式和说明式事务管理 2. 事务属性 传播行为: 传播行为 意义 PROPAGATION_MANDATORY 该方法必须运行在一个事务中.如果当前事务不存在,将抛出一个异常. ...
- java--何时处理Exception(哪一个层级),包装的基础类处理任务尽可能简洁,写入日志,检查null等运行时异常
1. 运行时异常和受检异常 2. 提前预防运行时异常.最常发生的是NPE,而检查NPE是程序员的基本职责.其他的,如除0等运行时异常的检查,需要程序员仔细检查,每个函数都得检查(除非可以确定不会有空指 ...