※記事内に広告を含む場合があります

Android StudioをLadybugにアップデート手順とその後の作業の注意点【Chipmunkから移行】

android開発環境構築 Android Studio Ladybugにアップデート(アイキャッチ画像) android開発
android開発環境構築 Android Studio Ladybugにアップデート(アイキャッチ画像)

最先端技術は日進月歩です。日常欠かせないスマホも日々進化しており、それを支える開発ツールであるAndroid Studioも、定期的にアップデートを行わないと、最新の機能やデバイスに対応できなくなることがあります。

先日、アプリの動作がある特定のデバイス上で想定通りにならず、Android Studioでデバッグしようとしたところ、エラーが発生してしてデバックできませんでした。原因を調べてみると、開発環境が古いことが原因とのこと。たった3年の差でも、技術の進化に追いつけていないことを知り驚きました。

SecurityException Writable dex file '~/code_cache/.overlay/base.apk/classes17.dex' is not allowed. が原因でデバッグできない問題の解決方法
何年も前から使っているAndroid用の買い物メモアプリ(覚えてねこ!)の音声認識結果が、突然英語でしか返ってこなくなってしまいました。 原因を調べるためにデバッグしようとして、いつものようにスマホをUSB接続し、デバッグボタンをクリックす...

とはいえ、Android Studioのアップデートは進化しており、アップデート自体はそれほど難しくありませんでした。ただし、アップデート後のアプリのビルドでは、Javaの最低バージョンや使用しているライブラリ間の依存関係が変わるなど、少し手間がかかります。それでも、アップデートしなければ動かなくなるのなら、早いか遅いかだけで、いずれ通らなければならない道です。そんな私のような腰が重いおじさん世代の開発者の方々が、「そろそろやってもいいかな」と思えたときの手助けになるように、なるべくわかりやすく解説しました。ぜひ参考にしてみてください!

Android Studioインストーラーのダウンロード

私がインストールしているAndroid Studioのバージョンを調べてみると、「Chipmunk 2021.2.1 Patch 2」でした。

Android Studio 現在のバージョン確認
Android Studio 現在のバージョン確認

Android Studio の「ヘルプ」-「アップデート確認」をクリックします。

Android Studio バージョンアップ
Android Studio バージョンアップ

右下に以下のような小さな画面が表示されますので、「アップデート」をクリックします。

Android Studio バージョンアップ2
Android Studio バージョンアップ(アップデートの確認クリック後)

以下のようなダイアログが表示されますので、「アップデート」をクリックします。

Android Studio バージョンアップ3
Android Studio バージョンアップ(アップデートクリック後)

以下のようなサイト画面が表示されますので、「Android Studio Ladybugをダウンロード」をクリックします。インストーラーファイル(android-studio-2024.2.1.11-windows.exe)がダウンロードが開始されます。ダウンロードファイルは約1.1ギガバイトありますので、通信速度によっては少し時間がかかるかもしれません。

Android Studio バージョンアップ4
Android Studio バージョンアップ4

Android Studioをバージョンアップ

ダウンロードしたらAndroid Studioを閉じて、ダウンロードしたインストーラー(android-studio-2024.2.1.11-windows)を起動します。

Android Studio バージョンアップ5
Android Studio インストーラー起動後

デフォルトのまま「Next」をクリックすると以下のダイアログが表示されます。このメッセージの意味は、

Android Studio バージョンアップ6
Android Studio バージョンアップ(Nextクリック後)

This will remove ALL of program files under
C:\Program File\Android\Android Studio
and cannot be undone. Are you sure you wish to continue?

C:\Program File\Android\Android Studio
の下にあるすべてのプログラム ファイルが削除され、元に戻すことはできません。続行してもよろしいですか?

「元のバージョンを削除して新しいバージョンに書き換えますよ」という警告メッセージが表示されています。通常であれば、Android Studioのエミュレータやプロジェクトファイルはインストール先とは別のディレクトリに保存されていますので削除されませんので問題無いでしょう。「はい」をクリックしてください。

ただし、もしなんらかの理由で、設定やプロジェクトデータなどを保持したい場合は、アンインストール前にそれらをバックアップしておくことをお勧めします。重要なのは「keystore」ファイル(xxxxxxx.jks)です。私の場合、Android Studioのインストールフォルダとは全く別のフォルダで管理していたためか、「keystore」ファイルや保存先の設定等が削除されることもなく、問題なくそのまま使用できました。

Android Studio バージョンアップ7
Android Studio バージョンアップ(「はい」クリック後)

メッセージ:Welcome to Android Studio Setup
Setup will guide you through the installation of Android Studio.
It is recommended that you close all other applications before starting Setup.This will make it prossble to update relevant system files without having to reboot your computer.
Click Next to continue.

訳:Android Studio セットアップへようこそ
セットアップでは、Android Studio のインストール手順を案内します。
セットアップを開始する前に、他のすべてのアプリケーションを閉じることをお勧めします。これにより、コンピューターを再起動せずに、関連するシステム ファイルを更新できるようになります。
[次へ] をクリックして続行します。

要約すると「他のアプリも閉じて実行すればコンピューターを再起動しなくても大丈夫だよ」というメッセージです。なるべく他のアプリを閉じて「Next」ボタンをクリックします。

Android Studio バージョンアップ8
Android Studio バージョンアップ(Nextクリック後)

メッセージ:Check the components you want to install and uncheck the compornents you don’t want to install.Click Next to continue.

訳:インストールするコンポーネントをチェックし、インストールしないコンポーネントのチェックを外します。[次へ] をクリックして続行します。

Android Virtual Deviceは、エミュレータを実行させるための仮想的なAndroid端末です。エミュレータを使っている人はチェックを入れて「Next」をクリックしてください。

Android Studio バージョンアップ9
Android Studio バージョンアップ9

メッセージ:The location specited must have at least 500MB of ferr space.

訳:指定する場所には少なくとも 500 MB の ferr スペースが必要です。

インストールするフォルダを指定しますが、少なくとも500MBが必要なようです。500MB以上あることを確認して「Next」をクリックしてください。

Android Studio バージョンアップ10
Android Studio バージョンアップ(インストール実行)

「Install」をクリックすればインストールが始まり、数分後に以下のような画面が表示されます。

Android Studio バージョンアップ11
Android Studio バージョンアップ(インストール後)

「Next」をクリックするとバージョンアップしたAndroid Studioの起動確認画面が表示されます。

Android Studio バージョンアップ12
Android Studio バージョンアップ(インストール完了)

Finish」をクリックして新しいAndroid Studioを起動します。

日本語化

再起動後、日本語化を行います。手順は以下のとおりです。

  1. Android Studioのバージョンを確認する
  2. Jetbrains公式サイトより、バージョンに合った言語パックをダウンロードする
  3. ダウンロードファイル(zip)を解凍する
  4. Android Studioの設定からダウンロードして解凍した言語パックを指定してインストールする
  5. Android Studioを再起動する

日本語化に関して、少し分かりにくい点や注意が必要な部分について、キャプチャ画像と簡単な説明を掲載しています。よろしければ参考にしてください。

1.Android Studioのバージョンを確認する

Android Studioのバージョンは、⚙️-[Settings]-[Appearance & Behavior]-[System Settings]-[Updates]の順にクリックして表示された以下の部分(AI-の次の数字3文字 例)242)に記載されています。

Android Studio バージョン確認方法
Android Studio バージョン確認方法
2.Jetbrains公式サイトより、バージョンに合った言語パックをダウンロードする

バージョンに合った言語パックをダウンロードしようとすると以下のような画面が出て戸惑うかもしれません。このメッセージは言語パックをインストール手順が表示されているだけです。

日本語パックダウンロード時のダイアログ(設定手順)
日本語パックダウンロード時のダイアログ(設定手順)

日本語の訳は以下のとおりです。

「日本語言語パック」のインストール方法
1.IDE をお持ちでない場合はインストールします:
2.IDE を開き、Ctrl+Alt+S を押して IDE 設定を開きます。
3.プラグインを選択し、 「設定マーク」をクリックしてからディスクからプラグインをインストールをクリックします。
4.プラグイン アーカイブ ファイルを選択し、OK をクリックします。
5.OK をクリックして変更を適用し、プロンプトが表示されたら IDE を再起動します。

今回、IDEはAndroid Studioのことです。色々なミドルウェア用の言語パックを選択できますが、IDE(Android Studio)は先ほどの手順で既にインストールしていますので、ここでは選択しなくて大丈夫です。(そのまま「Got it」やってちゃってください)

4.Android Studioの設定からダウンロードして解凍した言語パックを指定してインストールする

画面が洗練されていて、解凍した言語パックをどこで指定するのか、少し分かりにくいかもしれません。以下の画面を参考にしてください。

「Install Plugin from Disk」選択手順
「Install Plugin from Disk」選択手順

⚙️-[Plugins] をクリックして開かれたダイアログで、さらに⚙️-[Install Plugin from Disk]を選択すると、さらに以下のようなダイアログが表示されます。

[Install Plugin from Disk]で選択するファイル
[Install Plugin from Disk]で選択するファイル

[Install Plugin from Disk]で選択するファイルは、ダウンロードしたファイルではなく、ダウンロードして解凍したjarファイルです。言語パックによってバージョン番号は違うはずですが、私の場合は、ja.242.152.jarでした。

言語を日本語に設定する
言語を日本語に設定する

キャプチャ画像を後から撮ったので、既に日本語になった画像なので違和感あると思いますが、言語を日本語に選択するをお忘れなく。

もし日本語化でわからないことがあれば、以下のサイトが参考になると思います。

Android Studioを日本語化する手順【2024最新版】
Android Studioを英語表記から日本語表記に変えたいという方に向けた記事になります。Android Studioはインストールした時点では英語表記になります。英語が得意な人でない限り、日本語表記の方が使いやすいと思います。本記事で...

これは余談ですが、私がインストールしたIDE(Android Studio)は、インストール時(2024年11月12日)に、自ら日本語パックをインストールしようとして、以下のように失敗していました。そのため、上記のような手動でのインストールが必要でした。

Android Studio バージョンアップ16
Android Studio バージョンアップ16

もしかしたら、IDEのインストーラーが新しくなっていれば、日本語パックは自動でインストールされているかもしれません。その場合は、言語を日本語に選択するだけでOKだと思います。

その他インストール後の作業

私の場合、インストール後に以下のような作業が必要でした。よろしければ参考にしてください。

Microsoft Defender(ウイルス対策ソフトウェア)の除外リストに追加

Microsoft Defender(ウイルス対策ソフトウェア)のリアルタイム保護機能がIDEのパフォーマンスに悪影響を与える可能性があるため、ワークスペースやgradleの作業領域等を除外リストに追加することで、スムーズな動作を確保することができます。「自動」「手動」「このプロジェクトでは無視する」「今後表示しない」というリンクが表示されますので、「自動」をクリックするだけでこの作業は完了します。

Android Stuidoコンポーネントのアップデート

Ladybugは、2024年2月1日にリリースされましたが、その後たくさんのアップデートがあります。インストーラーのバージョンにもよりますが、私の場合、以下のアップデート要請の指示がありました。

  • Android Emulator: Android エミュレータは、PC上で仮想的にAndroid端末を動作させるツールです。これをアップデートすることで、エミュレータの性能や互換性、バグ修正が改善されます。
  • Android SDK Platform-Tools: これは、AndroidデバイスとPCを接続するために必要なコマンドラインツール(adb や fastboot など)を含んでいます。アップデートにより、デバイスとの接続が安定し、最新の機能や修正が提供されます。
  • Android SDK Platform 33: これは、Android 13(APIレベル 33)の開発に必要なSDKプラットフォームです。これをアップデートすることで、Android 13に関する新機能や修正が利用できるようになります。
  • Google APIs Intel x86 Atom System Image: GoogleのAPIが含まれるエミュレータ用のシステムイメージです。これをアップデートすると、特定のGoogleサービス(Google Play Servicesなど)をエミュレータ上で利用できるようになります。
  • Google APIs Intel x86_64 Atom System Image: こちらは、Google APIsをサポートするエミュレータ用の64bitシステムイメージです。これをアップデートすることで、64bitエミュレータ上でGoogleの機能を利用できるようになります。

ボタンをクリックするだけで上記コンポーネントのアップデートが始まります。私が行ったときは1.1ギガバイトのダウンロードから始まりましたので、30分くらいの時間がかかりました

GradleのJDKとプロジェクトのJDKを合わせる

Android Studioをアップグレードしたことで、Android Studio IDEのJAVA HOMEプロジェクトのJDKに違いが出たようです。「Gradle JDK と JAVA_HOME の場所が異なるため、複数の Gradle デーモンが生成される場合があります」という少しずれたメッセージが表示され、ビルドができませんでした(英語でしたが)。対処方法は、プロジェクトのJDKをIDEのJAVA HOMEに合わせれば解決します。私の場合、IDEのJAVA HOMEはC:\Program Files\Android\Android Studio\jbrでしたので、プロジェクトのGradle JDKをその参照先に変更することで対応しました。

Android Studio バージョンアップ20
プロジェクトのGradle JDKの参照先を変更する
Gradleのバージョンアップ

gradleのバージョンが低いというエラーが表示されてビルドができませんでした。gradleのバージョンを上げます。

gradle-wrapper.properties ファイルに記載されているgradleのバージョンを指定されたバージョン(私の場合は8.9だった)に変えます。

distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip

また、build.gradle(プロジェクトレベル)の下記設定も最新のものに変えて、最後にsync(:同期)を行います。

buildscript {
    dependencies {
        classpath 'com.android.tools.build:gradle:7.5'  // これを最新バージョンに更新
    }
}
Manifest merger failedエラーの修正

Gradleのバージョンを8.9へアップデートした(Gradleを8.2から8.4でも同じらしい)ことで、AdMob(com.google.android.gms:play-services-measurement-api)とGoogleサービス(com.google.android.gms:play-services-ads-lite)の別々のライブラリで、同じ属性 (android.adservices.AD_SERVICES_CONFIG) が定義されていることが原因で、以下のようなエラーが出てビルドきなくなるようです。

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : Attribute property#android.adservices.AD_SERVICES_CONFIG@resource value=(@xml/ga_ad_services_config) from [com.google.android.gms:play-services-measurement-api:21.5.1] AndroidManifest.xml:32:13-58
  	is also present at [com.google.android.gms:play-services-ads-lite:22.6.0] AndroidManifest.xml:92:13-59 value=(@xml/gma_ad_services_config).
  	Suggestion: add 'tools:replace="android:resource"' to <property> element at AndroidManifest.xml to override.

詳しい原因はわかりませんが、googleのバグらしいとのことです。

対処方法は、『提案: オーバーライドするには、AndroidManifest.xml の 要素にtools:replace=”android:resource”‘ を追加します。』と書かれているように、素直に提案通りに対処します。手順は以下の通りです。

  1. AndroidManifest.xmltools 名前空間を追加(①)
  2. <application> タグに tools:replace="android:resource" を追加(②)
  3. プロジェクトをビルドして確認。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools">  <!-- ① toolsの名前空間を追加 -->
          package="com.example.yourapp">

    <!-- 必要なパーミッションやその他の設定がここに続きます -->

    <application
          ・
          ・     >
        
        <!-- 他のメタデータやアクティビティ設定などがここに続きます -->

        <!--
            競合するリソース(android:resource)の定義が異なる2つのライブラリ(play-services-ads-lite と play-services-measurement-api)で存在するため、
            tools:replace="android:resource"(上書き) を追加して、リソースの競合を解消しています。
            アプリでライブラリの定義を使用しない場合は上書きしても問題無いということが前提です
        -->
        <property
            android:name="android.adservices.AD_SERVICES_CONFIG"
            android:resource="@xml/gma_ad_services_config"
            tools:replace="android:resource" />

    </application>

</manifest>

詳しくは、以下のサイトが参考になります。

【Android】Gradleのバージョンを上げたら広告関連のManifest merger failedが出たときの対処法
GradleおよびAGP(Android Gradle Plugin)のバージョンアップで発生した、広告(AdMob)関連の「Manifest merger failed」エラーを解決する方法 Manifest merger failed ...

私の場合、appの他に共通ライブラリのAndroidManifest.xmlでも同じようなエラーが出ていましたので、同じように修正することでエラーを回避できました。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">        <!-- ① toolsの名前空間を追加 -->
        ・
        ・
        ・
    <application>
        <!-- 他の設定 -->

        <!--
            競合するリソース(android:resource)の定義が異なる2つのライブラリ(play-services-ads-lite と play-services-measurement-api)で存在するため、
            tools:replace="android:resource"(上書き) を追加して、リソースの競合を解消しています。
            アプリでライブラリの定義を使用しない場合は上書きしても問題無いということが前提です
        -->
        <!-- 重複するリソースの競合解消 -->
        <property
            android:name="android.adservices.AD_SERVICES_CONFIG"
            android:resource="@xml/gma_ad_services_config"
            tools:replace="android:resource" />
    </application>

</manifest>
リソースファイル(layout内xml)の「Lint」静的解析ツール変更を取り込む

Android Studioには「Lint」という静的解析ツールがあり、アプリケーションのコードやリソース(例えば、レイアウトXML)をチェックして問題点を指摘します。Lintは、警告やエラーを表示するため、開発者が見落としやすい問題を指摘してくれる便利なツールです。

バージョンアップ後、Lintのルールが変更されたり、チェックが強化されたりすることがあります。以前は警告だったエラーが強化されて、新たにエラーとして扱われるようになった所が出て来ることがあります。

たとえば、以下のようなandroid:textSize 属性に指定されている値が「dp」の場合、スケーラブルな単位(sp)を使うべきというエラーになります。この問題を修正するには、android:textSize値を sp にするだけです。

<Button
                android:id="@+id/xxxxxx"
             ・
                android:textSize="11dp" ← 11spに修正する
             ・
                app:layout_constraintTop_toTopOf="@+id/xxxxx" />

このようなエラーが発生すると、リソースファイルがビルドできません。すべて修正する日知用があります。

補足

最近私が嵌まっている沸かせる温調ボトル。電源コードは本体にしまえるし、日本製なので変換用のアダプタも必要ありません。便利ですよ~。

これ、何に使うかというと、私は熱燗飲むために使っています。とっくりを入れた時の高さが丁度いいんですね。

dretec(ドリテック)沸かせる温調ボトル
dretec(ドリテック)沸かせる温調ボトル
熱燗
熱めの熱燗が好き

沸かせる温度は4種類ありますが、基本的には95℃で沸かせば、とっくりの中の日本酒は60℃くらいになります。程よい少し熱めの熱燗が楽しめます。注いでもボトルに戻せば温かさはキープされますし、もう一杯飲みたいときや、冷めたときは、温め直せばOKです。週末、基本、部屋でテレビを見ながら机の上に置いて楽しんでいますが、300Whなので、そのくらいの性能を持ったモバイルバッテリーで利用できます。車中泊で使うのもありですね。これ、超おすすめですよ~。

コメント

タイトルとURLをコピーしました