# Preparation for the App and PlayStore

To make the app ready for the AppStore and PlayStore a few further steps are needed before the release.

## Preparation for the AppStore

1. Change the `CFBundleName`  parameter in ./ios/Runner/Info.plist (FlutterBoilerplate cannot be used to publish this app as it is already taken. You must use a unique value for your app)
2. Change your app name in ./ios/Runner/Info.plist under parameter `CFBundleDisplayName`
3. Change the bundle id from `com.template.flutterBoilerplate` to a value of your choice. This can either be done via XCode or by searching and replacing every instance of `com.template.flutterBoilerplate` in the whole project. (com.template.flutterBoilerplate cannot be used to publish this app as it is already taken. You must use a unique value for your app)
4. Create an app icon and replace the current default icons in ./ios/Runner/Assets.xcassets/AppIcon.appiconset . We recommend to use an online tool like <https://www.appicon.co/>
5. Upload the app via Xcode

## Preparation for the PlayStore

1. Change the `applicationId`  in ./android/app/build.gradle (com.template.flutter\_boilerplate cannot be used to publish this app as it is already taken. You must use a unique value for your app)\
   IMPORTANT: Do not change the `namespace` . This will break the app. If you still want to change it then you need to change `com.template.flutter_boilerplate` in `MainActivity.kt` as well.
2. Change your app name in `./android/app/src/main/AndroidManifest.xml` under parameter `android:label`
3. Create an app icon and replace the current default icons in ./android/app/src/main/res . We recommend to use an online tool like <https://www.appicon.co/>
4. Sign the app
   1. Create a file called `key.properties` in the `./android` folder. It must have this conten
   2. ```java-properties
      storePassword=[YOUR STORE PASSWORD]
      keyPassword=[YOUR KEY PASSWORD]
      keyAlias=[YOUR KEY ALIAS]
      storeFile=../app/upload-keystore.jks
      ```
   3. Create a upload-keystore.jks file in the ./android/app folder. Use a program like the KeyStore Explorer to create the file. Fill the missing values in the key.properties file with the ones you define when creating the upload-keystore.jks file
5. Create an appbundle with the following terminal command and uplaod it to the play console
   1. ```
      flutter create appbundle
      ```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://flutter-boilerplate.gitbook.io/flutter-boilerplate-docs/getting-startet/preparation-for-the-app-and-playstore.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
