TripLearnerDiaryという名前でアプリを公開していたのだが、意味が分からないのでAchieve Diaryに名前を変更したいと思う。
アプリ名を変更する時には、android\app\src\main\AndroidManifest.xmlを更新すれば良いのだが、これだけではエラーになってしまった
変更前のアプリ名:TripLearnerDiary
変更後のアプリ名:AchieveDiary
更新した部分
1 2 3 4 5 |
<application android:label="@string/AchieveDiary" android:name="${applicationName}" android:icon="@mipmap/ic_launcher"> ... |
エラー内容
1 2 3 4 5 6 7 |
FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:processDebugResources'. > A failure occurred while executing com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask$TaskAction > Android resource linking failed ERROR:C:\Users\user_name\Documents\Flutter\DEV\triplearnerdiary\build\app\intermediates\packaged_manifests\debug\AndroidManifest.xml:43: AAPT: error: resource string/AchieveDiary (aka com.triplearner.diary.dev:string/AchieveDiary) not found. |
解決方法
追加でandroid\app\build.gradleも更新する必要がある
変更前
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
buildTypes { debug { debuggable true applicationIdSuffix ".dev" resValue "string", "TripLearnerDiary", "Debug TripLearnerDiary" } release { debuggable false applicationIdSuffix "" resValue "string", "TripLearnerDiary", "TripLearnerDiary" apply from: './signing/signing.gradle', to: android signingConfig signingConfigs.release } } |
変更後
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
buildTypes { debug { debuggable true applicationIdSuffix ".dev" resValue "string", "AchieveDiary", "Debug Achieve Diary" } release { debuggable false applicationIdSuffix "" resValue "string", "AchieveDiary", "Achieve Diary" apply from: './signing/signing.gradle', to: android signingConfig signingConfigs.release } } |
これでBuildしなおせばOK
フォルダ名など昔のアプリ名のままだが一旦無視して更新してみる
- pubspec.yamlのversion番号を更新
- flutter clean
- flutter build appbundle
- 作成されたファイルをGoogle Consoleにアップロード
なお、Google Playで公開するアプリ名はGoogle Console>ストアでの表示>メインのストアの掲載情報 で変更できる