あかんわ

覚えたことをブログに書くようにすれば多少はやる気が出るかと思ったんです

2018年のAndroid開発はKotlinにします

久しぶりのAndroid開発*1で遭遇したエラーを解決するために色々と調べていたら、KotlinがAndroid開発の公式言語として採用*2された事と、Android Studio*3がKotlinに正式対応していた事を知り、Kotlin on Androidに挑戦することにしました。

目次

Android StudioでKotlinを使う方法

Android DevelopersのサイトにKotlin on Androidの記事がいくつかありましたので、これらの記事を参考に作業しました。
Android StudioでKotlinを使うためには、Android Project作成時に、Create Android ProjectInclude Kotlin supportを有効化するだけで良いらしく、試しにプロジェクトを作成したら、MainActivity.javaファイルの代わりにMainActivity.ktファイルが作成されていました。

KotlinとJavaの違い

プロジェクト作成時のMainActivity.javaMainActivity.ktでは、それ程の違いは無いようですが、所々、Kotlinの方が簡潔に記述てきていることが確認できます。

MainActivity.kt
package com.example.b0npu.hellokotlin

import android.support.v7.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}
MainActivity.java
package com.example.b0npu.helloandroid;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

Kotlinに正式対応したAndroid Studioの準備

昔の記事を参考に、最新のAndroid Studioをダウンロードして設定しました。

Gradle sync failedが表示された場合の対処

Android Studioの初回起動等でGradle sync failedが表示された場合は、必要なAndroid SDKが足りていないらしいので、適宜、ダウンロードします。

お好みで設定

使いやすくするために、見た目やエディタの設定を標準設定から変更しました。

行番号を表示する

Preferences > Editor > General > AppearanceのShow line numbersを有効化します

フォントを変更する

Preferences > Editor > Colors & Fonts > FontでSchemeDuplicateスキーマを複製するとEditor Fontの項目が変更できるようになります

変更されたファイルのタブにはアスタリスクを表示する

Preferences > Editor > General > Editor TabsのMark modified tabs with asteriskを有効化します

自動保存を無効にする

Preferences > Appearance & Behavior > System SettingsのSynchronizationの項目にあるSynchronize files on frame or editor tab activation*4Save Files on frame deactivation*5を無効化します

File HeaderのTemplateコメントを変更する

Preferences > Editor > File and Code TemplatesのIncludesの項目にあるFile Headerを変更します

Android Logcatをカラフルにする

Preferences > Editor > Colors & Fonts > Android Logcatで変更します

ThemeにDarculaを使用している場合のLogcatのColor設定

  • Info … Foregroundを5394ECに設定
  • Warning … ForegroundをD6BF55に設定
  • Error … FF6B68(初期設定)
  • Assert … ForegroundをCC666Eに設定
  • Debug … BBBBBB(初期設定)
  • Verbose … Foregroundを747474に設定
Vimプラグインを導入する

Configure > PluginsのInstall JetBrains plugin...からIdeaVim*6をインストール*7します

Hello Kotlin

  1. Start a New Android Studio projectでProjectを作成し、Create Android ProjectInclude Kotlin supportを有効化する。

  2. Create Android Projectでは、適宜、Application nameCompany domainProject locationを好みに変更する。

  3. Target DeviceAPIで動作させたいデバイスを指定して、用意されているテンプレートからEmpty Activityとかを選択してFinishを押すと、Gradle*8 projectがbuildされてエディタが起動する。

  4. Runを押すと、Select Deployment Targetと言われるので、Create New EmulatorAndroidエミュレータを作る。
    選んだAndroidエミュレータの作成に必要なAPIが無ければ、Recommendedとかから好みのAPIを選んでダウンロードする。

  5. Androidエミュレータの起動とコードのビルドが無事に完了して、apkファイルが生成されて、Androidエミュレータにアプリがインストールされれば、Hello Kotlinが表示される。

f:id:b0npu:20180318015129p:plain

開発環境

*1:IntelliJ IDEAでのScala on Android using sbt

*2:Google I/0 2017で発表

*3:2017年10月にリリースされたAndroid Studio 3.0

*4:開いているファイルの自動保存

*5:ファイルを閉じると自動保存

*6:キーマップの変更なんかは~/.ideavimrcに記述するようです

*7:IntelliJ IDEAのバージョンによってはインストール時に導入できるようです

*8:2017年現在のJavaの一般的なビルドツール