こんにちは、インターンのゆうきです。

正式リリースされてからだいぶ経ちAndroid Studio3.3のリリースも近づいてきましたが、皆さんAndroid Studio3.2の新機能を活用しているでしょうか?
今回はAndroid Studio3.2の新機能や既存の便利機能について改めて振り返ってみたいと思います。


目次

  1. 「Android App Bundle」をサポート!
  2. 「Energy Profiler」が追加!
  3. 「Android Jetpack」を利用可能に!
  4. その他機能概要
  5. 既存の便利機能

1.「Android App Bundle」をサポート!

Android App Bundle(aab)とは、Google PlayのDynamic Deliveryと呼ばれる新たなアプリ配信モデルを使用しており、各端末設定に最適化されたAPKをビルドして配信することができる仕組みです。

端的にいうと【自分の端末で使わないリソースを削除してAPKサイズを小さくできる】というわけです。
(Googleはアプリサイズ11%~64%削減を確認)

  • やり方
    Build > Generate Signed Bundle / APK… > Android App Bundle
  • aabでできること
    Dynamic Delivery経由で動的に機能モジュールを追加する
    Instant Appを利用してアプリインストール前にユーザにアプリを試してもらう

詳細な設定方法はこちらを御覧ください。

2.「Energy Profiler」が追加!

Profiler機能に「Energy Profiler」が追加され、バッテリーの消費量をリアルタイムで確認することができるようになりました。


Energy Profilerの画面

画像のようにCPUとNetworkとLocationそれぞれがどの程度のバッテリーを消費しているかや、
どのクラスがバッテリーを消費しているか簡単に確認することができます。

※Energy Profilerを使用するにはAndroid 8.0(API26)以降の端末を接続する必要があります。

3.「Android Jetpack」を利用可能に!

Android Jetpackとは、優れたアプリを簡単に開発できるようにするためのAndroidソフトウェアコンポーネントのコレクションのことです。
このコンポーネントを使用することで、複雑なタスクを簡素化することができます。
詳細はこちら


4.その他機能の概要

  • 最新の変更を知ることができるようになりました。
    Help > What’s new in Android Studio.

  • アプリの構成を視覚化できるようになりました。(3.3で正式追加)
    Android Studio > Preferences > Experimental > Enable Navigation Editor

  • Android Support LibrariesをAndroidXに移行しました。

  • Android Profilerでセッションを保存することができるようになりました。

  • AAPT2がGoogleのMavenリポジトリに移動しました。


5.既存の便利機能

5.1 Image Asset


Material icon、PNG画像、テキストを使用してアイコン(Launcher, Action Bar, Notification)を簡単に作成することができます。

【手順】

  1. Flie > New > Image Asset をクリックするとAsset Studioが起動
  2. Foreground LayerのSource Assetを選択(Image, Clip Art, Text)
  3. Background LayerのSource Assetを選択(Color, Image)
  4. Next
  5. Finish

できた画像はそれぞれのサイズのmipmapフォルダに入っているのでそれを指定するだけで使用できます。

5.2 Vector Asset


Material icon、SVG画像、PSD画像を使用してベクター画像を作成することができます。
これによって、同じ画像で画像の品質を落とすことなく拡大縮小ができるため、APKサイズを小さくすることができます。
また、複数のXMLファイルを使用することでアニメーションさせることも可能となります。

【手順】

  1. File > New > Vector Asset
  2. Asset Typeを選択(Material Icon, Local file)
  3. Next
  4. Finish

できた画像はdrawableフォルダに入っているので、それを指定するだけで使用できます。

※Android4.4(APIレベル19)以下では、ベクター型のdrawableはサポートされていないのでビルド時にPNG画像が生成されるようです。
また、ラスター画像に比べて初期読み込みに時間がかかる場合があるので注意が必要です。

5.3便利なショートカット(Mac)


・Command + F > 検索
・Command + Shift + F > 指定したパス内を検索
・Command + R > 置換
・Command + Shift + R > 指定したパス内を置換
・Command + 下矢印 / Command + クリック > ソースにジャンプ
・Command + / > 選択した行をコメントアウト(解除も同様)
・Command + N > コードを生成(getter, setterなど)
・Control + O > メソッドをオーバーライドして生成
・Control + I > implementsしているメソッドを生成
・Control + J > ドキュメントのクイック検索
・Control + Option + I > 選択した行をオートインデント

おまけ

Android Studio 3.3(Canary版)の新機能の概要について

※詳細についてはAndroid Studio3.3が正式リリースされてからとします。

  • ナビゲーションエディタの正式追加(アプリの構成を視覚化できる)
  • Profilerの更新(Profiler使用時のパフォーマンスが大幅に向上、CPUがフレームをレンダリングするのにかかる時間を調べられる)
  • SDKコンポーネントを自動ダウンロード(必要なパッケージを自動でダウンロードしてくれる)
  • Clang-Tidyをサポート

関連リンク


Android開発者ブログ(https://android-developers.googleblog.com/2018/09/android-studio-32.html)
Android App Bundle, Play Consoleヘルプ(https://support.google.com/googleplay/android-developer/answer/9006925?hl=ja)
Dynamic Delivery, Android Developers(https://developer.android.com/studio/projects/dynamic-delivery#dynamic_feature_modules)
Android Jetpack, Android Developers(https://developer.android.com/jetpack/)
Android Studio release notes, Android Developers(https://developer.android.com/studio/releases/)
キーボードショートカット, Android Developers(https://developer.android.com/studio/intro/keyboard-shortcuts?hl=ja)
Image Asset, Android Developers(https://developer.android.com/studio/write/image-asset-studio?hl=ja)
Vector Asset, Android Developers(https://developer.android.com/studio/write/vector-asset-studio?hl=ja)