アプリをAndroid Studio 3.0 beta 4に対応したのでやったこと

まだマージする気はないけど、対応しておくかと思ったのでやってみた。
結構色々と変わっているようだけど、ビルド出来るところまではすぐ出来た。しかしRobolectricまわりでテストが死んでる…(まだ調べてない)追記:Robolectricがエラーになるのを調べたので書いた
  • gradleの更新
  • maven.google.com を追加
  • deploygateのプラグインを更新
  • gradle pluginの更新
  • retrolambda を削除
  • provided を利用してた箇所を annotationProcessorに変更
gradleの更新
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wr
index 4d0f7f7e7..01ed591b3 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Thu Jan 19 11:13:41 JST 2017
+#Tue Sep 05 17:23:15 JST 2017
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
maven.google.com を追加
google()を buildscript と allprojects 両方に指定する必要があった。
deploygateのプラグインを更新
古いプラグインは対応していないようなので1.1.3に更新した
https://docs.deploygate.com/v1.1/docs/gradle-plugin
gradle pluginの更新
diff --git a/build.gradle b/build.gradle
index 156d515ea..ccc0c96f1 100644
--- a/build.gradle
+++ b/build.gradle
@@ -16,7 +16,7 @@ buildscript {
         maven { url 'https://jitpack.io' }
     }
     dependencies {
-        classpath 'com.android.tools.build:gradle:2.3.3'
+        classpath 'com.android.tools.build:gradle:3.0.0-beta4'
         classpath 'com.deploygate:gradle:1.1.3'
retrolambda を削除
Android Studio 3.0から一部Java8の文法に対応しているようなので削除
provided を利用してた箇所を annotationProcessorに変更
icepickとlombokがprovided使ってたので修正
ただLombokがannotationProcessorのみだとエラーになるので、compileOnly も加えた
diff --git a/app/build.gradle b/app/build.gradle
index cb74189ff..a62e509c0 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -260,7 +260,7 @@ dependencies {

     compile 'frankiesardo:icepick:3.2.0'

-    provided 'frankiesardo:icepick-processor:3.2.0'
+    annotationProcessor 'frankiesardo:icepick-processor:3.2.0'

@@ -347,7 +347,8 @@ dependencies {
         transitive = true;
     }

-    provided 'org.projectlombok:lombok:1.16.18'
+    compileOnly "org.projectlombok:lombok:1.16.18"
+    annotationProcessor "org.projectlombok:lombok:1.16.18"
 }