文档章节

AndroidStudio配置Kotlin开发环境

猴亮屏
 猴亮屏
发布于 2017/07/10 14:47
字数 552
阅读 53
收藏 0

一、安装Kotlin插件

1、在as中添加Kotlin插件,下载这个插件需要开挂,但是我找到了更好的方法,我没有试过,希望大家试一试把结果告诉我:

方法1:从阿里云的地址下载:

Module的build.gradle

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'//这里添加
apply plugin: 'kotlin-android-extensions'//这里添加

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.xiaolei.kotlinapp"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    //主要是这两个依赖
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    //下面这个依赖我自己试的时候不能加,不知道为什么很多人加上都没事,我不加没事,加了反而出事,不明白了。。
    //compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
}
repositories {
    //修改成国内阿里云的maven地址,否则某些地方下载不下来
    maven {url 'http://maven.aliyun.com/nexus/content/groups/public/'}
}
Project的build.gradle

buildscript {
    ext.kotlin_version = '1.1.0'
    repositories {
        maven {url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}
allprojects { 
    repositories {
        maven {url 'http://maven.aliyun.com/nexus/content/groups/public/'}
    }
}
task clean(type: Delete) {
    delete rootProject.buildDir
}

方法二:从其他地址手动下载,然后再附加到as

插件地址:http://download.csdn.net/detail/feibendexiaoma/9848739 
先下载好插件,然后同样File–>Settings–>Plugins–>Install Plugin from disk 选择你本地已经下载好的kotlin插件。

二、提高kotlin项目编译运行速度

据说现在的AS编译运行kotlin项目的速度很慢,所以网上有人给出了解决办法:

项目根目录的gradle.properties里加

    kotlin.incremental=true

三、让kotlin自动识别布局文件中的View

写findViewById()是在太烦,还得强制转换,显得太low怎么办?用ButterKnife?实际上官方已给我们提供了解决方案。这个官方当然不是狗哥,而是我们的jetbrains神!

//在module的build.gradle最上面加上这句话:
apply plugin: 'kotlin-android-extensions'//这货是kotlin插件里的一个拓展包


然后在Activity里引入
import kotlinx.android.synthetic.main.「布局文件名称,如:activity_main」.*

然后就可以直接用View的id来对View进行设置了,如:

import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_start.*


class StartActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        setContentView(R.layout.activity_start);
        
        //直接用布局文件中View的id来调用
        iv1.setImageResource(R.drawable.abc_ab_share_pack_mtrl_alpha);
    }
}

 

参考资料:

http://www.cnblogs.com/princenwj/p/6888226.html

© 著作权归作者所有

共有 人打赏支持
猴亮屏

猴亮屏

粉丝 35
博文 525
码字总数 57346
作品 4
北京
Android工程师
私信 提问
关于切换Windows用户导致Android Studio无法识别Android SDK 的解决方法

关于切换Windows用户导致Android Studio无法识别Android SDK的解决方法。 如果你的计算机是多用户的,你肯定会遇到过这个问题,例如账号A和账号B ,当你在A账户下使用Android Studio可以开发,...

Helloall
2015/02/13
2.1K
1
android studio如何修改默认安装的apk文件

目前androidstudio默认点击安装按钮时,安装的是app/outputs/apk/app-debug-unaligned.apk 是吧, 我现在项目里面把生成的apk名称换了,但路径还是这个,可点击安装按钮时,报错了,说找不到...

jiaming_zhu
2017/01/19
398
0
图文详解Android Studio搭建Android集成开发环境的过程

有很长一段时间没有更新博客了,最近实在是太忙了,没有时间去总结,现在终于可以有时间去总结一些Android上面的东西了,很久以前写过这篇关于使用Android Studio搭建Android集成开发环境,不...

查杰
06/29
0
0
Cocos2d-x 3.4在AndroidStudio上编译配置

1.准备好以下文件   1) AndroidStudio: https://dl.google.com/dl/android/studio/install/1.1.0/android-studio-bundle-135.1740770-windows.exe   2) NDK:https://dl.google.com/and......

simpower
2015/07/31
0
0
Android 尝试解决 Gradle 升级时 offline mode 类型问题

小菜每次升级 AndroidStudio 和 Gradle 都倍感头疼,没有梯子真的好痛苦,这次小菜从 2.3.3 升级到 3.1.4 版本,被 Gradle 的 offline modle 问题困扰了很久,现在整理一下小菜的处理方式。 ...

阿策神奇
08/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Ugly Number(leetcode263)

Write a program to check whether a given number is an ugly number. Ugly numbers are positive numbers whose prime factors only include 2, 3, 5. Example 1: Input: 6Output: true......

woshixin
15分钟前
0
0
深度模型从研者 眼里的 似然估计 & Hessain 海森矩阵 & Fisher Information (费雪信息)

深度模型的训练的基本依据是最小化模型拟合数据的误差。旨在不仅知其然(如何构建和训练一个深度模型),还应知其所以然(为什么这样训练,可以做哪些优化)。我们就会发现,有很多研究者,在...

刘小米_思聪
19分钟前
0
0
阿里巴巴智能监控新场景的探索

摘要: 智能监控是智能运维的子领域,详细分析。 作者简介 王肇刚 阿里巴巴全球运行指挥中心高级技术专家 智能监控是智能运维的子领域,我们说的监控,探讨的更多是在监控策略,因为可能从数...

阿里云官方博客
22分钟前
1
0
【双十二】12 月 12 日 12 点 12 分限量抢福利,云计算不剁手!

活动详情 1.首充豪礼 双十二当日,新用户首充 200 元送 200 元代金券!仅限前 88 名!先到先得!拼手速!(新用户指 12 月 12 日前已完成注册但从未充值过的用户)
 2.超值返券 双十二当日,...

七牛云
47分钟前
3
0
Calculate Linux 发布 18 LXQt是基于Gentoo的发行版

导读 Calculate Linux 是一个基于 Gentoo 并与 Gentoo 完全兼容的滚动更新发行版家族,专为企业环境下的快速部署而优化。其提供多个不同的分支版本,分别适用于桌面、服务器等应用场景。该项...

问题终结者
50分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部