Android Studio を Electric Eel にアップデートしたときにやったこと

# 概要

業務で開発しているアプリを Android Studio Electric Eel でビルドできるようになるまでに対応したことを記載する。

# Electric Eel 対応

- Android Studio Electric Eel をダウンロード
    - ビルドが通らなくなる可能性を考慮し、既存の Android Studio をアップデートするのではなく新規でインストール
![スクリーンショット 2023-01-31 15.36.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/775277ef-6968-4064-eaef-93b5c45ea1bd.png)

- Android Studio Electric Eel でプロジェクトを開くと ↓ のようなバルーンが表示されるので `upgraded`
![スクリーンショット 2023-01-26 17.54.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/ff316330-1f77-169e-5ade-482606a5a650.png)

- ↓ のようなポップアップが表示されるので `Begin Upgrade`
![スクリーンショット 2023-01-26 17.55.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/2a99fbb6-d4b0-1df8-f2ff-bbf675339bf8.png)

- Android Studio 内の View に ↓ が表示されるのですべてチェックし `Run selected steps`（`Recommended steps` はデフォルトではチェックは外れていた気がする）
    - `Move package from Android manifest to build files` について補足
        - [アプリ モジュールを設定する  |  Android デベロッパー  |  Android Developers](https://developer.android.com/studio/build/configure-app-module?hl=ja#set-namespace)
![スクリーンショット 2023-01-26 17.56.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/b214a7f6-dc45-1928-eacc-87c12e929459.png)
- `Running Sync`
![スクリーンショット 2023-01-26 17.58.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/6189225e-f7a1-4042-c8bf-b08d42c25256.png)
- `Sync succeeded`
![スクリーンショット 2023-01-26 18.27.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/3eb1c8ff-0b22-0280-0058-142f029bac4f.png)

- 一度実行してみる
- エラーが出ず実行できれば完了
- プロジェクトによっては別途対応が必要なことがあって、ここからは別途やったことを実行時のエラー内容とともに記載

- Compose `1.1.1` → `1.2.0` に更新
    - エラー
        - `android studio - This version (1.1.1) of the Compose Compiler requires Kotlin version 1.6.10 but you appear to be using Kotlin version 1.5.31`
    - Kotlin のバージョンが変わったせいで Compose と Kotlin のバージョンの組み合わせがずれた
    - 戻してもいいかもだけどせっかくなのでついでに更新したいよね
    - 参考
        - [Compose と Kotlin の互換性マップ  |  Android デベロッパー  |  Android Developers](https://developer.android.com/jetpack/androidx/releases/compose-kotlin?hl=ja#pre-release_kotlin_compatibility)
![スクリーンショット 2023-01-27 18.12.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/34926/2bdb4858-d21f-74cf-dd8c-6a8af8379b8f.png)
        - Stack Overflow
            - [android studio - This version (1.1.1) of the Compose Compiler requires Kotlin version 1.6.10 but you appear to be using Kotlin version 1.5.31 - Stack Overflow](https://stackoverflow.com/a/73145031)

- `com.google.gms:google-services:4.3.10` → `4.3.14` に更新
    - エラー
        - `Execution failed for task ':app:mapDebugSourceSetPaths'. > Error while evaluating property 'extraGeneratedResDir' of task`
    - `4.3.14` で修正された `Google Service` のバグ
    - Stack Overflow
        - [android - Execution failed for task ':app:mapDebugSourceSetPaths'. > Error while evaluating property 'extraGeneratedResDir' of task - Stack Overflow](https://stackoverflow.com/a/73774667)

- `hilt` 関連アップデート
    - `com.google.dagger:hilt-android:2.40.5` → `2.42`
    - `com.google.dagger:hilt-android-gradle-plugin:2.40.5` → `2.42`
    - `com.google.dagger:hilt-android-compiler:2.40.5` → `2.42`
    - エラー
        - `error: [Hilt] Unsupported metadata version. Check that your Kotlin version is >= 1.0: java.lang.IllegalStateException: Unsupported metadata version.`
    - これも Hilt と Kotlin のバージョンの組み合わせがずれた
    - 参考
        - [android studio - Hilt Unsupported metadata version in Kotlin - Stack Overflow](https://stackoverflow.com/a/68319048)

- `android.jetifier.blacklist` → `android.jetifier.ignorelist` に変更
    - エラー
```
An exception occurred applying plugin request [id: 'com.android.application']
> Failed to apply plugin 'com.android.internal.application'.
   > The option 'android.jetifier.blacklist' is deprecated.
     It was removed in version 7.0 of the Android Gradle plugin.
     This property has been replaced by android.jetifier.ignorelist
```

- [OSS ライセンス Gradle プラグイン](https://developers.google.com/android/guides/opensource?hl=ja#add_the_gradle_plugin) の更新
    - `com.google.gms:oss-licenses:0.9.2` → `com.google.android.gms:oss-licenses-plugin:0.10.6`
    - `apply plugin: 'com.google.gms.oss.licenses.plugin'` → `apply plugin: 'com.google.android.gms.oss-licenses-plugin'`
    - エラー
        - `field 'configurations' without corresponding getter has been annotated with @Input.`
    - 参考
        - [oss-licenses-plugin causes Gradle deprecation warnings · Issue #166 · google/play-services-plugins](https://github.com/google/play-services-plugins/issues/166)

- 以上の対応でビルドできるようになった

# 余談

一昨年ごろから Android Studio のバージョンにはアルファベット順に生き物がつくようになっていて遊び心があって好き。
この記事書いてる時点（2023-01-31）では `G` まで決まってるみたい。
`H` は `Horse`（馬） と予想。

| バージョン | 生き物 |
|:-:|:-:|
| Arctic Fox  | ホッキョクギツネ  |
| Bumblebee  | マルハナバチ  |
| Chipmunk  | シマリス  |
| Dolphin  | イルカ  |
| Electric Eel  | 電気ウナギ  |
| Flamingo  | フラミンゴ  |
| Giraffe  | キリン  |