標籤:
歡迎Follow我的GitHub, 關注我的CSDN.
Kotlin是基於JVM的程式設計語言, 由JetBrains公司開發, 目前已經開源.
IntelliJ IDEA, PyCharm, Android Studio等IDE, 就是出自於JetBrains公司.
介紹:
Statically typed programming language for the JVM, Android and the browser. 100% interoperable with Java?
用於JVM, Android, 網頁等的靜態類型程式設計語言, 完全相容Java.
Kotlin作為Android社區當前比較熱的討論內容, 已經發布了1.0.0-rc版本, 並且得到Google的關注, 畢竟Android Studio是基於JetBrains的架構. Java檔案可以直接轉換為Kotlin檔案, 兩者具有非常強的互通性.
Talk is cheap, show you the code. 讓我們來看看如何在Android項目中整合Kotlin.
本文樣本的Github
1. 設定項目
建立一個空的Android項目.
項目gradle:
添加Kotlin的版本號碼, 使用最新的1.0.0-rc, 保持版本一致.
buildscript { ext.kotlin_version = "1.0.0-rc-1036"}
模組gradle:
添加類的路徑, 必須在模組中添加, 因為kotlin-android-extensions外掛程式會使用依賴.
buildscript { repositories { jcenter() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" }}
添加Kotlin支援Android的外掛程式
apply plugin: ‘kotlin-android‘apply plugin: ‘kotlin-android-extensions‘
kotlin-android用於編譯Android代碼, kotlin-android-extensions用於擴充綁定關係.
添加Java的編譯路徑, 在main中建立kotlin檔案夾, 用於存放kotlin代碼(建議).
sourceSets { main.java.srcDirs += ‘src/main/kotlin‘ }
添加maven的依賴.
dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"}
完整的支援Kotlin的模組build.gradle.
buildscript { repositories { jcenter() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" }}apply plugin: ‘com.android.application‘apply plugin: ‘kotlin-android‘apply plugin: ‘kotlin-android-extensions‘android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "me.chunyu.spike.wcl_kotlin_demo" minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt‘), ‘proguard-rules.pro‘ } } sourceSets { main.java.srcDirs += ‘src/main/kotlin‘ }}dependencies { compile fileTree(dir: ‘libs‘, include: [‘*.jar‘]) testCompile ‘junit:junit:4.12‘ compile ‘com.android.support:appcompat-v7:23.1.1‘ compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"}
2. 安裝外掛程式
Android Studio的Kotlin外掛程式, 用於支援Kotlin的語言特性.
選擇: Preferences -> Plugins -> Install JetBrains plugin -> kotlin.
只需要安裝Kotlin即可, 因為Kotlin Extensions已經包含在Kotlin中了.
3. 轉碼
選中需要轉換的Java檔案, 如MainActivity.java,
使用Command+Shift+A, 啟動Action, 輸入Convert, 找到命令, 即可轉換, 如
或
選擇Code -> Convert Java File to Kotlin File, 也可以使用快速鍵.
把.kt的檔案剪下到kotlin檔案夾下, 即可使用.
推薦Kotlin檔案和Java檔案分開存放, 不過放在一起也可以使用.
4. 添加資源
Kotlin的代碼非常簡潔, 設定屬性也比較方便.
import android.support.v7.app.AppCompatActivityimport android.os.Bundleimport kotlinx.android.synthetic.main.activity_main.*/** * Kotlin的主類, 添加設定屬性. */class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) main_tv_message.text = "Hello Kotlin" main_tv_message.textSize = 20.0f }}
id是main_tv_message的TextView, 設定text為”Hello Kotlin”.
代碼風格與Python等指令碼語言非常類似, 容易編寫.
顯示
官方提供了關於Kotlin比較豐富的講解, 大家也可以閱讀源碼. Just for fun.
OK, that’s all! Enjoy it!
Java的進化? Kotlin初探與整合Android項目