Android Studio 3.0でのプロジェクト作成時の変更点

  • 19
    いいね
  • 0
    コメント

概要

Google I/O 2017でKotlinがfirst-class languageとなる発表がありました。
そこで、Android Studio 3.0 Canary 1でプロジェクトを作成する際の以前との変化をまとめます。

ロゴ

スクリーンショット 2017-05-19 0.24.05.png

スプラッシュなどで表示されるロゴが新しくなってます。

新規プロジェクト作成ウィザード

スクリーンショット 2017-05-18 23.38.35.png

Include Kotlin supportのチェックボックスが追加されています。

IDE

スクリーンショット 2017-05-19 0.26.29.png

IntelliJのベースがおそらく変わってますが、何かわからず・・
https://developer.android.com/studio/preview/features/index.html#core_ide_changes
2017.1ベースのようです。

プロジェクトテンプレート

build.gradle

スクリーンショット 2017-05-19 0.33.32.png

Google's Maven repositoryが追加されています。
これは既存プロジェクトにも反映させたほうがいいでしょう。
mavenCentral()は不要なのでは・・

app/build.gradle

スクリーンショット 2017-05-19 0.33.59.png

Kotlin以外特に変化なし。
- org.jetbrains.kotlin:kotlin-stdlib-jre7になっているけど、AutoClosableAutoCloseableThrowable.addSuppressedを使わなければ、API Level19未満でも問題ないのだろうか?
- minSdkVersion 18でもorg.jetbrains.kotlin:kotlin-stdlib-jre7でした。
- ソース見るとinlineなので、use不用意に使うのはまずいのでは・・あとで検証
- 検証したところやはり19未満ではAutoCloseable.useで落ちます。
- minSdkVersion < 19ではorg.jetbrains.kotlin:kotlin-stdlibにすべきです。

gradle/wrapper/gradle-wrapper.properties

Android Gradle PluginがGradle 4.0に引き上げられたのでgradle-4.0-milestone-1になっています。
Migrate to the New Pluginも公開されています。結構影響ありそうです。

その他ソースなど

スクリーンショット 2017-05-19 1.35.13.png

JavaのテンプレートをKotlin変換しただけのコードのようで、特に変化はなさそうです。
強いて言うならAndroi Oで追加されるRound Icon Resourcesがデフォルトで追加されているくらいでした。

src/main/javaじゃなくてsrc/main/kotlinにしてほしかったですが、Androidではkotlinディレクトリを作ってもソースディレクトリ認識されません。(Kotlinモジュールでは認識されます)
ちなみに、以下の記述で認識させることができます。これもデフォルトになってほしい。

app/build.gradle
android {
    ...
    sourceSets.all {
        java.srcDirs += "src/${name}/kotlin"
    }
}

その他変更点

https://android-developers.googleblog.com/2017/05/android-studio-3-0-canary1.html
エミュレーターやDebugまわりの新機能が多いです。
Stethoは不要になるかもしれません。

余裕があったらほかの新機能も書いてみます。