WindowsにおけるFVMとVSCodeをつかうAndroid開発環境構築 その2

自宅のアプリ改修を行うにあたり、
開発環境のバージョンアップを行う。
バージョンアップ対象は下記赤マーカのAGP(Android Gradle Plugin)とGradle、JDKのバージョンアップを行う。

アプリ1もアプリ2もバージョンアップの手順は同じのため、
アプリ1の手順だけ載せてます。

■既存バージョンとバージョンアップ先

Android OSAPISDKFlutterAGPGradleJDK
アプリ19.028282.10.0→3.7.124.1.0→8.46.7→8.61.8→17
アプリ210.029292.10.0→3.7.124.1.0→8.46.7→8.61.8→17



■参考にした公式ドキュメント
・Android OSとAPIレベルの対応
 https://developer.android.com/guide/topics/manifest/uses-sdk-element?hl=ja#api-level-table

・Android GradleプラグインとGraidleバージョンの対応
 https://developer.android.com/studio/releases?hl=ja#api-level-support
 https://developer.android.com/build/releases/gradle-plugin?hl=ja

・Androidとjavaの対応
 https://developer.android.com/build/jdks?hl=ja

■参考にした個人ブログ
https://perfectflutter.com/436/flutter%E3%81%A8jdk%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3-%E4%B8%80%E7%B7%92%E3%81%AB%E5%83%8D%E3%81%8F%E6%96%B9%E6%B3%95/
https://techracho.bpsinc.jp/kawawa/2024_02_16/139435

1.エミュレータの作成

1.エミュレータの作成

2.左枠の「Legacy」タブを選択し、[3.2″ QVGA (ADP2)]をクリックし[次へ]を押下。
※動作想定の画面にあったものを選択ください

3.Releases Name「Q」の横の[↓]を押下してimageをダウンロード後、[次へ]を押下。

4.[完了]を押下。

5.[3.2″ QVGA (ADP2) API29]が作成されていることを確認。

2.gradleのバージョンアップ

1.androidエミュレータで動かしたいソースをローカルに配置する。
手順ではC:\flutter_localフォルダを作成し「app1」を動かす。

2.vscodeにて[ファイル] – [フォルダーを開く]を押下

3.「C:\flutter_local\app1」を選択し[フォルダーの選択]を押下。

4.「<プロジェクト>\android\build.gradle」ファイルの変更
※変更した後のファイルを添付しました。

変更前
 classpath 'com.android.tools.build:gradle:4.1.0'
変更後
 classpath 'com.android.tools.build:gradle:8.4.2'

変更前
 subprojects {
    project.evaluationDependsOn(':app')
 }
変更後
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
    afterEvaluate {
        // check if android block is available

        if (it.hasProperty('android')) {

            if (it.android.namespace == null) {
                def manifest = new XmlSlurper().parse(file(it.android.sourceSets.main.manifest.srcFile))
                def packageName = manifest.@package.text()
                println("Setting ${packageName} as android namespace")
                android.namespace = packageName
            }

            def javaVersion = JavaVersion.VERSION_17
            android {
                def androidApiVersion = 29
                compileSdkVersion 34
                defaultConfig {
                    targetSdkVersion androidApiVersion
                }
                compileOptions {
                    sourceCompatibility javaVersion
                    targetCompatibility javaVersion
                }
                tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
                    kotlinOptions {
                        jvmTarget = javaVersion.toString()
                    }
                }
                println("Setting java version to ${javaVersion.toString()} which is $javaVersion")
                println("Setting compileSdkVersion and targetSdkVersion to $androidApiVersion")
            }
        }

    }

}
subprojects {
    project.evaluationDependsOn(':app')
}

5.「<プロジェクト>\android\app\build.gradle」ファイルの変更
※変更した後のファイルを添付しました。


namespace 'com.app1' 
↑新規追記(下記ファイルのpackageの内容)
「<プロジェクト>\android\app\src\main\AndroidManifest.xml」
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.app1">

変更前
 compileSdkVersion flutter.compileSdkVersion
変更後
 compileSdkVersion 34    

変更前
 targetSdkVersion flutter.targetSdkVersion
変更後
 targetSdkVersion 29

変更前
 jvmTarget = '1.8'
変更後
 jvmTarget = '17'

下記の通り変更(AndroidManifest.xmlのpackageの内容)
applicationId "com.app1"

6.「<プロジェクト>\android\gradle\wrapper\gradle-wrapper.properties」ファイルの変更
※変更した後のファイルを添付しました。

変更前
 distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
変更後
 distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip

3.Casioをエミュレータで実行

1.ターミナルにて下記コマンドを実施
fvm use 3.7.12
fvm flutter pub cache repair
fvm flutter clean
fvm flutter pub get

2.Vscodeを一度閉じて、再度開く

3.画面左の「main.dart」をダブルクリック

4.画面右下の「{}Dart」の右横をクリックして、「3.2″ QVGA (ADP2) API 29」を選択

5.モバイルの画面が表示される。※初回起動時は遅い。

6.[Start Debugging]or[Run Without Debgging]を押下

7.モバイルの画面に表示される。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次