とうとうGUI制限が入った Android Studio 3.0 Beta4
はじめに
とりあえずリリースノート。
新しいDSLを対応したよ しか書いてない・・
正直な所 Beta3の方が安定していた気がする
動作環境
- macOS Sierra
- 16G
- HDDタイプのiMac
- AS 3.0-Beta4 /AS 2.3.3
- gradle plugin 2.3.3 / gradle plugin 3.0-beta4
- gradle runtime-4.1-bin
状況
Glide 4.1.0 + Android Studio 3.0.0 beta-4 環境だと、 Glide の implementation に @ aar と transitive = true 付けないと MultiDexException でコケる
— Ryutaro Miyashita (@ryugoo_) 2017年9月3日
android studio 3.0-beta4
— close_yutori (@kimukou2628) 2017年9月4日
glide 4.1.0 の
aar指定とtransitive=trueの話って、
AS2.3.3でも発生したので、公式ドキュメント更新漏れっぽい
ただbeta4でintegration周りでduplicate Entryエラー
- app/build.gradle
implementation ('com.github.bumptech.glide:glide:4.1.0@aar'){ //◎ transitive=true //◎ } //annotationProcessor 'com.github.bumptech.glide:compiler:4.1.0' kapt 'com.github.bumptech.glide:compiler:4.1.0' implementation ('com.github.bumptech.glide:okhttp3-integration:4.1.0@aar'){ exclude group: 'com.github.bumptech.glide',module 'GlideModule' //■ } implementation ('com.github.bumptech.glide:recyclerview-integration:4.1.0@aar'){ exclude group: 'com.github.bumptech.glide',module 'GlideModule' //■ }
◎が言及されていた対応で、■が引っかかったモジュール。
うーんdependenciesの解決がうまく言ってないみたい。AS2.3でビルドするときは■の除外は不要
android studio 3.0 Beta4
— close_yutori (@kimukou2628) 2017年9月4日
うわ。beta4でbuildするとRealm3.7.0がclass見つからないとクラッシュするな、、、。beta3だと問題ない。
でもGradleSyncの強制バージョンチェックがまた復活して、index作成処理止められる
beta3までは、AS2.3でビルドしてもGradleSync/InstantRunが可能だったのですが、
今回とうとう強制バージョンチェック入りましたね(汗。index作成前に止められると。
- gradle.properties
# GUI android.injected.build.model.only.versioned=3 android.injected.testOnly=false
あたりの対処だけでは駄目なので、IDEA版にはないフラグが新設されている?のかな。。
builder-model.jarのソースを見てみるといいんでしょうけど今ソースどこに有るかわかんないんですよね(汗
android studio 3.0 Beta4
— close_yutori (@kimukou2628) 2017年9月4日
google() にしかないバージョンを指定すると、offlineチェックつけてると必ずコケルな、、。
チェック外すと source.jarとjavadoc.jarをダウンロードするようになったみたい。
prebuildも駄目
なんか益々offline開発が出来なくなってる気がする・・。ココらへんのjarを必須で落としてくるようになったって、javadoc表示周りを強化するような意図が有るのかな?
android studio 3.0 Beta4
— close_yutori (@kimukou2628) 2017年9月4日
うーん。
本体 AS3.0-beta4 D8有効 の時
local.aar 同じ設定でbuildしなおし=>OK
local.aar AS2.3でbuild=>クラッシュ
な状況みたい。これ生成バイナリ違うからという事?
これ実はマズイんじゃないかと。コンパイル自体はBeta4でも出来ますが(本体側JDK8ビルド)
- Beta3までは実行OK
- Beta4だとlocal.aar(JDK7ビルド)のクラスを読んだ時点でクラッシュ
local.aarって 仕事用の共通ライブラリをまとめたものなんですが
な状況。下手するとAS3.0用のaarは今後別用意しないと駄目って話になるのかな。
もうちょっと解析必要かもしれない
TLメモ
Android Studio 3.0.0-beta4にしたらリソースxmlをリネームするときに「https://t.co/gqAFi2fBAQはRead Onlyだから変更不可」というバグに首を傾げている。beta3からあるらしい。 https://t.co/yCX6yZwRFq
— 住友 孝郎 (@cattaka_net) 2017年9月4日
Android Studio 3.0 beta-4 にあげると read only なファイルはリファクタできないからと怒られるようになった
— shogo (@sho5nn) 2017年9月4日