[Flutter]Androidアプリとしてビルドすると「Namespace not specified」というエラーが出る場合の対処法

このページには広告が含まれる場合があります。

 

Flutterで作ったプロジェクトをAndroidアプリとしてビルドすると、

Namespace not specified. Specify a namespace in the module’s build file.

というエラーが出て失敗する場合があります。

ここで「Specify a namespace in the module’s file」と書いてあるので、アプリレベル(モジュールレベル)のbuild.gradleファイル(android/app/build.gradle)を見ると、「android」欄に「namespace」がちゃんと入っているのに、上記のエラーが発生する場合があります。

この場合は、以下の要領で、プロジェクトレベルのbuild.gradleファイル(android/build.gradle)

subprojects {
        afterEvaluate { project ->
            if (project.hasProperty('android')) {
                project.android {
                    if (namespace == null) {
                        namespace project.group
                    }
                }
            }
        }
    }

を追加すると、解消します。

この事象は、Androidアプリをビルドするためのツールである「Gradle」のバージョンを7.xから8.xに上げたために起こるようなのですが、その発生理由は、

  • Gradle7.x時代は「namespace」ではなく、「AndroidManifest.xml」ファイルに記載されていたが
  • Gradle8.xになって「namespace」の記載場所をアプリレベル(モジュールレベル)のbuild.gradleファイルに移管しても
  • いくつかのFlutterのプラグインがそれを認識してくれない

ための発生する可能性があるようです。

 

(詳しくは、以下の動画で説明していますので、よろしければご覧ください)

こんな記事も読まれています

人気No.1

前向きな気持ちになれる 占星術・タロットリーディング

あすコロ式・相談サロン 【ナビるやん】

人に言えない悩みから使命・運勢診断まで、あなたに寄り添いながら“ナビゲート”する、あすコロ人気No.1のオンライン相談サロン。占星術・心理学・タロットの叡智を活かし、普段認識していない「潜在意識」にアクセスしてあなたの気づいていない可能性を拓かせ、明日から前向きに歩めるようになる60分のリーディングセッション。

今すぐ詳細を見る(メルマガ登録で初回半額) ▶

TOP