過去互換が壊れた Android Studio 3.0 Beta1
はじめに
Android Studio Release Updates: Android Studio 3.0 Beta 1 is now available
を見ると 補完index周りを大幅に変更したらしい
単純に プロジェクト構成情報 と 補完indexの変更かな? と思っていたんですが
でも動かしてみるとかなり変わっているみたいなのでメモっておく
動作環境
状況(plugin 2.3.3)
android studio 3.0 beta1
— close_yutori (@kimukou2628) 2017年8月10日
ヤッパリ
Google ApisのGradleSync失敗は治ってないか、、、。
release note見る限りkotlinバグ対応だし。
AS2.3.3 index作成で超固
AS2.4p7 GradleSync問題無
- NG
compileSdkVersion "Google Inc.:Google APIs:24"
- OK
compileSdkVersion 26
InstantRunも 2.3の時点で Google APIsを指定するとClassNotFoundなエラーが出てましたが
これの延長線上にある感じなんだろうな・・(汗
android studio 3.0 beta1
— close_yutori (@kimukou2628) 2017年8月10日
ide側のpluginで補完index周りの過去互換切っちゃってるんだろうな。
(Gradlesyncコマンド成功、補完index失敗なので
これ3.0このままで行くなら、古いASは取っておかないと編集すら出来なくなるねコレ
うごご、この属性使わないようにするという対応なんだけど、外部ライブラリで使われてるからそれを探さないと駄目やん>< / “Android Studio 3.0-alpha2 compile errors · I…” https://t.co/q39FXz5jlf #android
— close_yutori (@kimukou2628) 2017年8月10日
AAPT2を厳密にするオプションを付けて使うようになったから AAPT2エラーで弾かれている状況。
- style.xml 定義
- resource名
これ正直回避しようがないんだよな・・
exclude出来ないし。
上記のURLってライブラリ側の人が直してくれました!ありがとう! という話ですし
android studio 3.0 Beta1
— close_yutori (@kimukou2628) 2017年8月10日
3.0-beta1 plugin使うと
GradleSync で build-cache使ってるっぽくて
imcompatibule build cacheなエラーでとまるな。
あと実行時に全てフルビルドしてるのは気のせい?
- Gradle Sync
- Gradle コマンド
- 補完index作成 //★
- 実行構成作成
★でIDE Plugin側でエラーストップされると、runもできないという・・・
止まる件に関しては、一応下記で対応
gradlew clean cleanBuildCache
gradlew --stop
なんか全BuildTypeをビルドしまくってたのでめちゃくちゃ実行時間が厳しかった・・・
android studio 3.0 Beta1
— close_yutori (@kimukou2628) 2017年8月10日
google() をbuild.gradleに入れないと
RecyclerViewとかが赤くなるんだけど、コレ今回からの仕様なのか?
AS内部のrepoに同梱されなくなる?
これも謎の挙動。sdk内の local repo の参照って動いてなかったりして?
正直な所、AS内部にも local repoもっているので、どこ見てるのかがよくわかんないときが有り
android studio 3.0 beta1
— close_yutori (@kimukou2628) 2017年8月10日
string.xml からは Alt+F6で利用箇所探せるけど
hoge.xml からはstringリソースなのに利用箇所が有りませんとかでるのって
既存からだっけ?
毎回検索で凄い不便 ><
はい。
— close_yutori (@kimukou2628) 2017年8月10日
確かに、同じプロジェクトをAS2.3.3 で開くと認識しましたね。
うーん
補完、参照index作成の高速化の為に
デフォルトのファイル名の物しか対象にしないんですかね、、、(苦笑
これ正式版にされても困る~(^^;;
これおきてるの、
— close_yutori (@kimukou2628) 2017年8月10日
どうもbeta1からみたいなんですよね。
G様またやらかしたのかな~(^^;;
<kotlin直すついでに違うバグ混入?
状況(plugin 3.0-beta1)
android studio 3.0 Beta1
— close_yutori (@kimukou2628) 2017年8月10日
gradle 3.0-beta1 plugin
カスタムlayoutはbuild通るようになったけど、databindingでクラッシュ。
databindingのpluginの最新がDLされなかったから、未配布のせいかな?
相変わらず、 他者UIライブラリ同梱 + compilesdk 26 + data-binding 辺りで
- buildは通る
- 実行時クラッシュ
ココらへん直るんでしょうか??
G様系だけでUIライブラリ固めると問題無なんですが。。さて。。
rm -rf ~/.gradle これで治るかなあ
— Naoki Hosoya (@nhosoya) 2017年8月10日
Android Studio 3.0 Beta1
— close_yutori (@kimukou2628) 2017年8月10日
これgradle plugin 3.0 beta1 で自分も起こった。
G様以外のUI library参照してるとおこるっぽいhttps://t.co/Q77ektyHFE
偶にであれば(通るときがあるのであれば)、
— close_yutori (@kimukou2628) 2017年8月10日
jpsで見たときにdeamonが複数立ち上がってるかと。
beta1からだと aapt2が厳しくなってるようで偶にかち合うみたいですね(検証用プロジェクト動かしてる感じだと
あと自分の場合、
— close_yutori (@kimukou2628) 2017年8月10日
公式のリリースノートに
clean projectすれば治るありましたが、それで直らず
.ideaと.iml消してOpenProject
+ invalidated restart
までしてマシな状況に(^^;;
なんか凄い強キャッシュ
TLメモ
LoaderのサンプルDeprecatedになってるじゃんhttps://t.co/s0LV8gg1U4
— 帰宅マン (@ogapants) 2017年8月10日
- 新機能の奴を調べる
- その当時は動いた
- version上げると動かせないのがかなりある
みたいな状況が多々。あくまで GoogleIOのデモプロジェクトでしかないんだろうな。
知り合いからJetBrains製のJDKを紹介された。Android StudioのPerformanceがちょっといいと言われたけど、一応使ってみよう。https://t.co/atcGxKM3XR
— Pluu (@pluulove) 2017年8月10日
これは自分も気になったので後で試す。
でもまあ、IDEのpluginって直相対パスでAS内のJDK参照しちゃってるんだよな・・
幾ら外からJDK_HOMEあたりのパス指定しても・・・