Skip to content

Resolve tickets MOO-1878 and MOO-1894 and update documentation for OTA handling Nanoflows and Microflows #9648

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: development
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ To set up your local app, do the following:
1. When Mendix Native Mobile Builder launches you will see the home screen:

{{< figure src="/attachments/howto/mobile/native-mobile/distribution/build-native-apps/deploying-native-app/home-screen.png" alt="Mendix Native Mobile Builder Home Screen" width="350" class="no-border" >}}
1. Select **Build app for distribution**.
1. Select **Build app for local development**.
1. Fill in your app's name and the app identifier. The wizard provides defaults, but you might want to align the app identifier to use your company's reversed URL, or change the app name in some other way:

{{< figure src="/attachments/howto/mobile/native-mobile/distribution/build-native-apps/deploying-native-app/wizard-app-details.png" alt="Wizard App Details" width="350" class="no-border" >}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,79 @@ To generate a keystore for Android, follow these steps:
{{< figure src="/attachments/refguide/mobile/managing-app-signing-keys/qanda.png" alt="info questions" class="no-border" >}}

6. Finishing these questions generates a keystore which will be saved into a *file.keystore* file in your current working directory.


## Building a Release App {#building-release}

Once your signing credentials are ready, you can build the signed release version of your app using Xcode (for iOS) or Android Studio (for Android).

### iOS (Xcode)

1. Open your project in Xcode (this can be generated by Mendix Native Builder).

2. In the project navigator, select your app target.

3. Go to the Signing & Capabilities tab and ensure your team and provisioning profile are set.

4. Choose Any iOS Device (arm64) in the device target dropdown.

5. Go to the Product menu and select Archive.

6. When the archive is complete, the Organizer window will open.

7. From there, you can export the .ipa file by selecting Distribute App > App Store Connect or Ad Hoc, depending on your goal.

8. Follow the steps to export the .ipa file or upload it directly to App Store Connect.

The exported .ipa file can typically be found under:

`"~/Library/Developer/Xcode/Archives/<DATE>/<YourApp>.xcarchive"`

### Android (Android Studio)

1. Open the android directory of your Mendix Native project in Android Studio.

2. Select Build > Generate Signed Bundle / APK from the top menu.

3. Choose APK or Android App Bundle (AAB).

4. Follow the wizard and choose your keystore file, alias, and password.

5. Select release as the build variant.

6. Complete the wizard and wait for Android Studio to build the release file.

The output .apk or .aab file will be located in:
`"<your-project>/android/app/build/outputs/apk/release/app-release.apk"`
or
`"~<your-project>/android/app/build/outputs/bundle/release/app-release.aab"`

## Publishing to App Stores {#publishing}

### iOS – App Store Connect

1. Log into App Store Connect.

2. Create a new app record if this is your first time submitting.

3. Upload the .ipa file directly from Xcode or by using Transporter (a free tool from Apple).

4. Fill in all required metadata, screenshots, and compliance information.

5. Submit your app for review.

Make sure your Apple Developer Account is active and the app has passed validation before submission.

### Android – Google Play Console

1. Go to the Google Play Console.

2. Create a new application and fill in the store listing information.

3. Navigate to the Release > Production > Create Release section.

4. Upload your signed .apk or .aab file.

5. Review and roll out your release to production.

Be sure to enroll in Google Play App Signing if you plan to use AAB files. Also, don’t forget to set up content rating, privacy policies, and testing tracks if needed.
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ OTA updates are useful in the following app development cases:
* Style changes
* Static image, text, or other static asset changes
* Layout changes
* Nanoflow changes
* Adding/Editing Nanoflow or Microflow
* JavaScript action changes
* Widgets added or removed
* You added a new custom JavaScript-only widget or module
Expand All @@ -77,7 +77,6 @@ If you have made any changes directly to your iOS or Android app, you will have
* You fundamentally changed your app's functionality (this is an Apple App Store limitation, and will require a re-release and re-review of your app by Apple—your app might be removed if you do not comply)
* A new native module has been added (such as the [Native Mobile AR](https://marketplace.mendix.com/link/component/117209) module — for more information see [Modules](/refguide/modules/)
* The app has been renamed
* You added a new microflow or nanoflow
* The app's launcher icons have been changed
* The splash screen has been changed
* The native template was updated (NT patch updates also require a full release)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ To set up your local app, do the following:
1. When Mendix Native Mobile Builder launches you will see the home screen:

{{< figure src="/attachments/howto10/mobile/native-mobile/distribution/build-native-apps/deploying-native-app/home-screen.png" alt="Mendix Native Mobile Builder Home Screen" width="350" class="no-border" >}}
1. Select **Build app for distribution**.
1. Select **Build app for local development**.
1. Fill in your app's name and the app identifier. The wizard provides defaults, but you might want to align the app identifier to use your company's reversed URL, or change the app name in some other way:

{{< figure src="/attachments/howto10/mobile/native-mobile/distribution/build-native-apps/deploying-native-app/wizard-app-details.png" alt="Wizard App Details" width="350" class="no-border" >}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,79 @@ To generate a keystore for Android, follow these steps:
{{< figure src="/attachments/refguide10/mobile/managing-app-signing-keys/qanda.png" alt="info questions" class="no-border" >}}

6. Finishing these questions generates a keystore which will be saved into a *file.keystore* file in your current working directory.


## Building a Release App {#building-release}

Once your signing credentials are ready, you can build the signed release version of your app using Xcode (for iOS) or Android Studio (for Android).

### iOS (Xcode)

1. Open your project in Xcode (this can be generated by Mendix Native Builder).

2. In the project navigator, select your app target.

3. Go to the Signing & Capabilities tab and ensure your team and provisioning profile are set.

4. Choose Any iOS Device (arm64) in the device target dropdown.

5. Go to the Product menu and select Archive.

6. When the archive is complete, the Organizer window will open.

7. From there, you can export the .ipa file by selecting Distribute App > App Store Connect or Ad Hoc, depending on your goal.

8. Follow the steps to export the .ipa file or upload it directly to App Store Connect.

The exported .ipa file can typically be found under:

`"~/Library/Developer/Xcode/Archives/<DATE>/<YourApp>.xcarchive"`

### Android (Android Studio)

1. Open the android directory of your Mendix Native project in Android Studio.

2. Select Build > Generate Signed Bundle / APK from the top menu.

3. Choose APK or Android App Bundle (AAB).

4. Follow the wizard and choose your keystore file, alias, and password.

5. Select release as the build variant.

6. Complete the wizard and wait for Android Studio to build the release file.

The output .apk or .aab file will be located in:
`"<your-project>/android/app/build/outputs/apk/release/app-release.apk"`
or
`"~<your-project>/android/app/build/outputs/bundle/release/app-release.aab"`

## Publishing to App Stores {#publishing}

### iOS – App Store Connect

1. Log into App Store Connect.

2. Create a new app record if this is your first time submitting.

3. Upload the .ipa file directly from Xcode or by using Transporter (a free tool from Apple).

4. Fill in all required metadata, screenshots, and compliance information.

5. Submit your app for review.

Make sure your Apple Developer Account is active and the app has passed validation before submission.

### Android – Google Play Console

1. Go to the Google Play Console.

2. Create a new application and fill in the store listing information.

3. Navigate to the Release > Production > Create Release section.

4. Upload your signed .apk or .aab file.

5. Review and roll out your release to production.

Be sure to enroll in Google Play App Signing if you plan to use AAB files. Also, don’t forget to set up content rating, privacy policies, and testing tracks if needed.
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ OTA updates are useful in the following app development cases:
* Style changes
* Static image, text, or other static asset changes
* Layout changes
* Nanoflow changes
* Adding/Editing Nanoflow or Microflow
* JavaScript action changes
* Widgets added or removed
* You added a new custom JavaScript-only widget or module
Expand All @@ -77,7 +77,6 @@ If you have made any changes directly to your iOS or Android app, you will have
* You fundamentally changed your app's functionality (this is an Apple App Store limitation, and will require a re-release and re-review of your app by Apple—your app might be removed if you do not comply)
* A new native module has been added (such as the [Native Mobile AR](https://marketplace.mendix.com/link/component/117209) module — for more information see [Modules](/refguide10/modules/)
* The app has been renamed
* You added a new microflow or nanoflow
* The app's launcher icons have been changed
* The splash screen has been changed
* The native template was updated (NT patch updates also require a full release)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ To set up your local app, do the following:
1. When Mendix Native Mobile Builder launches you will see the home screen:

{{< figure src="/attachments/howto9/mobile/native-mobile/distribution/build-native-apps/deploying-native-app/home-screen.png" alt="Mendix Native Mobile Builder Home Screen" width="350" class="no-border" >}}
1. Select **Build app for distribution**.
1. Select **Build app for local development**.
1. Fill in your app's name and the app identifier. The wizard provides defaults, but you might want to align the app identifier to use your company's reversed URL, or change the app name in some other way:

{{< figure src="/attachments/howto9/mobile/native-mobile/distribution/build-native-apps/deploying-native-app/wizard-app-details.png" alt="Wizard App Details" width="350" class="no-border" >}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,79 @@ To generate a keystore for Android, follow these steps:
{{< figure src="/attachments/refguide9/mobile/managing-app-signing-keys/qanda.png" alt="info questions" class="no-border" >}}

6. Finishing these questions generates a keystore which will be saved into a *file.keystore* file in your current working directory.


## Building a Release App {#building-release}

Once your signing credentials are ready, you can build the signed release version of your app using Xcode (for iOS) or Android Studio (for Android).

### iOS (Xcode)

1. Open your project in Xcode (this can be generated by Mendix Native Builder).

2. In the project navigator, select your app target.

3. Go to the Signing & Capabilities tab and ensure your team and provisioning profile are set.

4. Choose Any iOS Device (arm64) in the device target dropdown.

5. Go to the Product menu and select Archive.

6. When the archive is complete, the Organizer window will open.

7. From there, you can export the .ipa file by selecting Distribute App > App Store Connect or Ad Hoc, depending on your goal.

8. Follow the steps to export the .ipa file or upload it directly to App Store Connect.

The exported .ipa file can typically be found under:

`"~/Library/Developer/Xcode/Archives/<DATE>/<YourApp>.xcarchive"`

### Android (Android Studio)

1. Open the android directory of your Mendix Native project in Android Studio.

2. Select Build > Generate Signed Bundle / APK from the top menu.

3. Choose APK or Android App Bundle (AAB).

4. Follow the wizard and choose your keystore file, alias, and password.

5. Select release as the build variant.

6. Complete the wizard and wait for Android Studio to build the release file.

The output .apk or .aab file will be located in:
`"<your-project>/android/app/build/outputs/apk/release/app-release.apk"`
or
`"~<your-project>/android/app/build/outputs/bundle/release/app-release.aab"`

## Publishing to App Stores {#publishing}

### iOS – App Store Connect

1. Log into App Store Connect.

2. Create a new app record if this is your first time submitting.

3. Upload the .ipa file directly from Xcode or by using Transporter (a free tool from Apple).

4. Fill in all required metadata, screenshots, and compliance information.

5. Submit your app for review.

Make sure your Apple Developer Account is active and the app has passed validation before submission.

### Android – Google Play Console

1. Go to the Google Play Console.

2. Create a new application and fill in the store listing information.

3. Navigate to the Release > Production > Create Release section.

4. Upload your signed .apk or .aab file.

5. Review and roll out your release to production.

Be sure to enroll in Google Play App Signing if you plan to use AAB files. Also, don’t forget to set up content rating, privacy policies, and testing tracks if needed.
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ OTA updates are useful in the following app development cases:
* Style changes
* Static image, text, or other static asset changes
* Layout changes
* Nanoflow changes
* Adding/Editing Nanoflow or Microflow
* JavaScript action changes
* Widgets added or removed
* You added a new custom JavaScript-only widget or module
Expand All @@ -77,7 +77,6 @@ If you have made any changes directly to your iOS or Android app, you will have
* You fundamentally changed your app's functionality (this is an Apple App Store limitation, and will require a re-release and re-review of your app by Apple—your app might be removed if you do not comply)
* A new native module has been added (such as the [Native Mobile AR](https://marketplace.mendix.com/link/component/117209) module — for more information see [Modules](/refguide9/modules/))
* The app has been renamed
* You added a new microflow or nanoflow
* The app's launcher icons have been changed
* The splash screen has been changed

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.