You can use your logos and names to brand a mobile app built on Mobile Creatio using the SDKConsole utility.
Set up the SDKConsole utility
In general, the procedure comprises the following steps:
- Perform the preliminary setup.
- Install and set up the SDKConsole utility.
- Run the SDKConsole utility.
1. Perform the preliminary setup
- Ensure you can publish the app. You must be enrolled into Apple Developer program to publish your app on iOS and have a Google Play developer account to publish the app on Android. Learn more on Apple and Android websites: Apple Developer Program, Google Play Console.
-
Enable Firebase Cloud Messaging to send push notifications.
- Sign in to https://firebase.google.com/.
- Click Go to console in the top right.
- Create a project in the console.
- Add your Android and/or iOS app to the project.
- Download the config files for the app and save them for later. Specify the path to these files in the utility settings using the google_service_info_file property.
- Retrieve the server API key. To do this, click
in the top left of the Firebase project dashboard → Project Settings → Cloud Messaging tab → Project credentials → Server key.
-
Save the server API key to the [PushNotificationService] table of the Creatio database. For example, you can do it using the following SQL query.
Some_Api_Key is your API key.
- Download and install Java development kit version 8.
- Register your app with App Store Connect (iOS only). To do this, follow the procedure in the official Apple documentation.
-
Install the APNs certificates into Firebase (iOS only). iOS projects require you to install the development and production APNs certificates. To do this:
- Open the certificate configuration page: Certificate.
- Add and install development and production Apple Push Notification service SSL certificates into your Mac.
You also need to generate, download and install provisioning profiles.
Upload the *.p12 files exported from Keychain Access in the Firebase settings on the Cloud Messaging tab.
-
Install J2ObjC (iOS only). The native functionality of the Mobile Creatio application is partly written in Java. The J2ObjC utility for Java code to Objective-C translation is required for shared use on iOS. Learn more about the utility in the official Google documentation. To install J2ObjC:
- Download the J2ObjC release version archive (2.0.5) to a Mac.
- Unpack the archive into your user home directory (MacintoshHD/Users/MyUser /). The unpacked archive must contain the dist directory.
- Rename the unpacked archive directory to j2objc.
2. Install and set up the SDKConsole utility
- Contact Creatio support (support@creatio.com) and specify the email address that is or will be associated with your GitLab account. The support team will send you a signup link. After the signup, you will be able to access the SDKConsole project.
- Sign up for GitLab. Open the link you received from the Creatio support and follow the instructions. If you sign in with a third-party service, make sure that you have a password set up for your GitLab account. To do this, click the profile icon in the top right → Edit profile → Password.
-
Install the SDKConsole utility.
Install the SDKConsole utility on MacInstall the SDKConsole utility on Windows -
Update the SDKConsole utility.
- Back up the SDK.config file that contains the user settings. That way you will not have to reconfigure the utility.
- Download the utility archive from the Git repository.
- Unpack the archive into your utility folder.
- Move the SDK.config backup to the utility folder.
3. Run the SDKConsole utility
-
Configure the SDKConsole utility. Before you run the utility, configure the settings in the SDK.config file. Make sure that you do not use a single backslash (\) in your file paths. Learn more about the utility settings in a separate article: SDKConsole utility settings.
-
Run the SDKConsole utility.
Run the SDKConsole utility on MacRun the SDKConsole utility on Windows
Description of the solutions for typical errors
View the solutions for typical errors in the table below.
|
|
---|---|
The Unable to determine Android SDK directory error on Mac |
|
The Couldn't find the specified scheme 'bpm'online'. Please make sure that the scheme is shared… error when running the build for an iOS project on Mac |
Re-run the build. If this does not help, take the following steps:
|
Remove the permission denied message for my build in the Mac Terminal |
Run the following command at the terminal: |
The function fs.copyFileSync is undefined error during the build on Mac |
Run the following commands at the Terminal: |
The Unable to determine Android SDK directory error on Windows | Specify the ANDROID_HOME environment variable where you need to provide the path to the Android SDK specified during the installation of Android Studio. |
Name of your application.
Path to the directory that contains the resources used in the app, i. e., the logo and background on the login page.
Actions the utility executes. This is a string array where you can specify a combination of the tasks.
prepare | Preparation/rebranding of your iOS/Android project. This step makes all the necessary changes. You will get a finished project you can publish in AppStore and Google Play. |
build | Build the project. You will get an assembled * .ipa iOS app file and\or * .apk Android app file. |
deploy | Publish the app to TestFlight. iOS only. |
Show detailed logs in the terminal when the utility is running. The recommended value is true. If set to false, the terminal displays only the currently executed step without details.
Default server. The server URL will be automatically specified on the login page when you log in to the app for the first time.
Path to the GitLab repository that hosts the original Android/iOS project.
Path to the local Windows/Mac directory where the original Android/iOS project is located. If you specify this parameter the utility uses it in place of the repository_path parameter.
Path to the GoogleService-Info.plist (iOS) or google-services.json (Android) file required to connect to the Firebase push notification service.
App version in the following format: 0.0.1.
Build number (string). Always update the build number before you perform the deploy task.
Path to the image displayed when the application starts (2732x2732 px). iOS only.
A unique app ID, for example, com.myapp.mobile. This is the Bundle ID specified when you registered the app in App Store Connect. iOS only.
Path to the app icon (1024x1024 px). This is a master image the utility uses to generate the required icons for current iOS devices. iOS only.
Account (Apple ID) required to connect to App Store Connect / TestFlight. iOS only.
Path to the distribution certificate required when publishing to TestFlight. iOS only.
Certificate password. To restore the password, contact the certificate author. iOS only.
Specific password. iOS only.
Currently, all Apple accounts support two-factor authentication. To enable third-party services to connect to Apple services, the app-specific passwords were added. To get a specific password:
- Open the https://appleid.apple.com/#!&page=signin URL while signed in to your Apple account.
- Open the Security section → Generate password… command.
- Follow the instructions to get a new password generated.
Description of the published changes to TestFlight (what’s new). The description is published for the primary app language set in App Store. iOS only.
Build type. Android only.
debug |
release |
release-unsigned |
A unique app ID, for example, com.myapp.mobile. Android only.
Path to app resources, such as the app icon and the startup image. Structure the contents of this directory similarly to the res folder in the Android project. The directory can contain subdirectories that have drawable, drawable-xhdpi, and other icons. Android only.
Path to the key file (keystore) required to sign the app. Learn more about signing apps in the official Android documentation. Android only.
Password for the keystore required to sign the app. Android only.
The key alias. Android only.
The password of the alias from the key_alias parameter in the keystore. Android only.