Android Studio 3.0 Canary4 挙動メモ

はじめに

更新が結構頻繁なASですが、気づいた点等を備忘としてメモしておこうかと

動作環境

  • macOS Sierra
  • 16G
  • HDDタイプのiMac
  • AS 3.0-rc4
  • gradle plugin 2.3.3
  • gradle plugin 3.0-alpha4(canary4)

挙動メモ

AS3.0-canary4本体

  • まともにOpen Projectすらできませんでした><。
  • メモリ足りない系のエラーダイアログが出て操作ブロック・・。
  • gradleの方も、-XX:MetaspaceSize=512m の指定は必要*1

ただこの状態だと家のMBP4Gではもう無理ですね・・・(汗

まさにこのエラー。というか、

  • G様の suppot-library/gms library とか超肥大しすぎ
  • デフォルトのWizで作ったやつも、下手するとそのままの状態でDexOver出る。
  • MultiDex導入は基本避けられない

状況なのに、何させたいのさ! とツッコミを入れたい・・・

JAVA_7ビルド + plugin 3.0-alpha4 指定

  • 記述変更なし
  • plugin3.0-alpha4
  • gradle runtime 4.0

  • canary3だとビルド自体が通らない
  • canary4だとビルドが通る=>一瞬直った?
    • 実行時に BindingUtils.setContentView でエラー

で駄目でしたね。data-bindingで引っかかると・・

stackoverflow.com

みてもわかるように、

  • annotationProcesser指定にしていたところを止める
  • kaptに戻す

annotationProcesser系にするからapt plugin外すって話だったのが逆行している状態。

AS3.0に関しては APTが死んでる状態なのかな〜(汗

JAVA_7ビルド + plugin 2.3.3 指定

  • 記述変更なし
  • plugin2.3.3
  • gradle runtime 4.0(3.5でも変わらず)

この状況だと AS2.3.3より安定している感じなので、とりあえず様子を見る

  • index作成時間が以前に戻った(AS2.3.2レベル)
    • IDEが固まりにくくなった

だけでも確かによかったかも。。

Canary3 までの挙動

JAVA_8ビルド + plugin 3.0.0-rc4 でビルド高速化ウハウハ?の考察

一応下記も参考にして書き換えトライとかしてみてるんですけどね・・

  • 単純に compile=>api に置き換えただけ
    • buildの速度は上記のスライドの指摘の通り、ほとんど変わらず

Device Manager

結局、OS6/OS7実機端末だと

  • /data/data/ 以下にアクセスできない
  • sdcardに書き出す
  • 場所がわかんないー で探した感じ。

であと、右メニューに[Sync]が新規追加されていたんだけど、これ実行すると

  • remount開始
  • =>対象フォルダ以下だけではなく、全スキャン
  • 10分ぐらいCPUが高止まりしてAS動かせず・・

うーん。これで苦痛にならないG様の感性がわかんないですわ><

Vector Asset

何でこれ調べてたかというと、下記な話があって

を読みつつも、デザイナーさんから提供されてたsvgでどうにかならんもんか調べてた感じですね。

Material Designのアプリ内導入

exception-think.hatenablog.com


TLメモ

サードパーティ機能の本体取り込みについて

InstantRunの完成度?

InstantRunの精度はそれ程変わってない気もするな・・

最近の対応はJAVA_8ビルド対応したぐらい?(AS2.4以降)

layout Preview

レイアウトスクショ機能とかもココまで頑張んないと駄目orz

  • 別端末に転送時の再ビルド時間コストに比べれば大分マシ
    • ソース変更していないのにフルリビルドありえねーよなー

とか正直な所思うこと多々

気持ち的に

なのが正直な感想・・。

Devices Exploler もIDEA ULにあった機能の改善版みたいな感じですしね・・

githubのサンプルや古いプロジェクト動かす時に消耗していること

以前はビルドできてたのになーとか思いつつ

sdkフォルダ内見るとbuild-toolsが無くなってる?インストしてなかったっけ? とかだったり

に記載されているとおり、

  1. ASのバージョン
  2. build-toolsのバージョン
  3. gradle pluginのバーション
  4. gradle runtimeのバーション

の最適組み合わせバージョンがあるので、ずれると重く/ビルドエラー になる

って話のようですが・・・*2

*1:実行スレッド数が増えているから?

*2:build-tools == gradle plugin の最適解はたしかにありそう