過去互換が壊れた Android Studio 3.0 Beta1

はじめに

Android Studio Release Updates: Android Studio 3.0 Beta 1 is now available

を見ると 補完index周りを大幅に変更したらしい

単純に プロジェクト構成情報 と 補完indexの変更かな? と思っていたんですが

でも動かしてみるとかなり変わっているみたいなのでメモっておく

動作環境

  • macOS Sierra
  • 16G
  • HDDタイプのiMac
  • AS 3.0-Beta1
  • gradle plugin 2.3.3
  • gradle runtime-4.1-bin

状況(plugin 2.3.3)

  • NG
compileSdkVersion "Google Inc.:Google APIs:24" 
  • OK
compileSdkVersion 26 

InstantRunも 2.3の時点で Google APIsを指定するとClassNotFoundなエラーが出てましたが

これの延長線上にある感じなんだろうな・・(汗

AAPT2を厳密にするオプションを付けて使うようになったから AAPT2エラーで弾かれている状況。

  • style.xml 定義
  • resource名

これ正直回避しようがないんだよな・・

exclude出来ないし。

上記のURLってライブラリ側の人が直してくれました!ありがとう! という話ですし

  1. Gradle Sync
    1. Gradle コマンド
    2. 補完index作成 //★
    3. 実行構成作成

★でIDE Plugin側でエラーストップされると、runもできないという・・・

止まる件に関しては、一応下記で対応

gradlew clean cleanBuildCache
gradlew --stop

なんか全BuildTypeをビルドしまくってたのでめちゃくちゃ実行時間が厳しかった・・・

これも謎の挙動。sdk内の local repo の参照って動いてなかったりして?

正直な所、AS内部にも local repoもっているので、どこ見てるのかがよくわかんないときが有り

状況(plugin 3.0-beta1)

相変わらず、 他者UIライブラリ同梱 + compilesdk 26 + data-binding 辺りで

  • buildは通る
  • 実行時クラッシュ

ココらへん直るんでしょうか??

G様系だけでUIライブラリ固めると問題無なんですが。。さて。。


TLメモ

  • 新機能の奴を調べる
  • その当時は動いた
  • version上げると動かせないのがかなりある

みたいな状況が多々。あくまで GoogleIOのデモプロジェクトでしかないんだろうな。

これは自分も気になったので後で試す。

でもまあ、IDEのpluginって直相対パスでAS内のJDK参照しちゃってるんだよな・・

幾ら外からJDK_HOMEあたりのパス指定しても・・・