Create or Edit an Application
Create an Application
To create an app, go to the Applications page and click + Create. The Create application page opens. You may also copy an existing app and edit the copy created. Once you have configured all the sections, explained in detail below, click Add to confirm the creation process. You are redirected to the Applications page, and a message appears confirming that the app was successfully created.
Every time you save changes to your app, the Record Description modal opens for you to detail what changes were made. You can then access the history record of the changes made to the app in the Records page.
The sections below provide detailed instructions on how to configure the different sections available and create your app.
In the Name field, enter a name to identify the app. For example, Goldbank wallet prod.
In the Description field, enter a short text with comprehensive information about the app's purpose.
In the Statics resources Id field, enter the path to the static resources repository generated for the app in your Gitlab project. For this example, enter: git-group-example/git-sub-group-example/git-project-example.
In the Client field, select a client from the drop-down menu.
Note
This field is only available for users with permissions on more than one client.
In the Product field, select a product from the drop-down menu, where you can see each product's description and its name between brackets. You can manage your products and create new ones from the Products page.
Note
Only the products of the client previously selected are displayed.
In the Environment field, select an environment from the drop-down menu, where you can see each environment's name and its variant between brackets. You can manage your environments and create new ones from the Environments page.
Note
Only the environments of the client previously selected are displayed.
Hover over each chip to see the application and product configurations. These parameters are common to all platforms and are related to the communication with VT-NET. For example, the encryption parameters configuration. The parameters are set with default values, but you can edit the application or product configuration from this section according to your project's requirements.
Application Configuration
Read the instructions below to learn how to set the application configuration.
Click the pencil icon in the Application chip. A panel opens, where you can edit the following information:
Test automation
Switch the toggle to enable the use of automated testing tools to test the app binaries. This feature cannot be used in productive binaries or in apps with accessibility configurations in Studio.
Warning
The Test automation and the Low Code Test options should not be activated simultaneously as this generates conflicts.
Low Code Test
Switch the toggle to enable the Low-Code Test feature in the app and be able to test it in Studio. This feature cannot be used in productive binaries or in apps with accessibility configurations in Studio.
Warning
The Low Code Test and the Test automation options should not be activated simultaneously as this generates conflicts.
Webview debug
Switch the toggle to enable the debugging option for webview components. This option cannot be used in productive binaries.
WebView Certificate pinning
Enter the domain and the hashes required to restrict which certificates are considered valid for your application. Then click Add certificate to finish the process. Once each certificate is added, click the pencil icon to edit it or the trash icon to delete it.
CA Certificates
Enter the CA digital certificates used to verify the SSL certificates signed by each authority. Then click Add CA certificate to finish the process. Once each certificate is added, click the pencil icon to edit it or the trash icon to delete it.
XpressPlug entry point
Switch the toggle to enable the XpressPlug integration. This option allows you to generate an iOS binary integrated with XpressPlug.
Important
This option is only available for iOS. Make sure you have the iOS platform configured in your app's platform configuration section.
When enabled, the option to upload the JSON file required for the integration becomes available. Click Upload file to select the file from your desktop.
Once you complete the fields required, click Save and close the panel.
Product Configuration
Read the instructions below to learn how to set the product configuration.
Important
If you need to complete any of these fields but you don't have the necessary information, contact the IT team.
Click the pencil icon on the Product chip. A panel opens, where you can edit the following information:
Crc header type
The CRC (Cyclic Redundancy Check) header type indicates which algorythm should be used to calculate the hash generated by VT-NET and the mobile binary, in order to ensure that both hashes match and that the communication has not been compromised. Enter "0" to use MD5, "1" to use SHA1 or "2" to use SHA3-256. You can use the arrows to the right to set the number.
Device handler certificate
Enter the Device Handler certificate used to secure communication with end-to-end encryption. This certificate needs to be the same as the one created in the platform's middleware for the product selected.
VTNetworking
Switch the toggle to enable the library. When transactioning against VT-NET, this library verifies the information and logs it into Crashlytics. All new apps should have this option enabled.
Important
This feature is under testing and only available for beta users. Contact the Mobile Builder team before enabling it.
Certificate pinning
Enter the hash (or hashes) obtained from the VT-Gateway required to restrict which certificates are considered valid for your product.
Click Add to add an additional hash.
Click the trash icon to the right of each hash to delete it.
Once you edit the necessary fields, click Save to implement the changes and close the panel.
Refer to the instructions below to configure the platforms (iOS, Android and Harmony) for which you want to generate an app binary.
In the Platforms section, click Add.
In the modal that opens, select a platform by clicking the icon (iOS, Android or Harmony).
A modal opens, indicating that you are adding a new platform. Configure the following parameters:
Name
Enter a unique name to identify the app. This name is displayed below the app icon in the devices.
Identifier
Enter an ID for the package used to install the application in a device. This information is necessary to add the application to any store. An example of an ID's structure is: net.veritran.glbk.s.dev. You can enter a different ID for each platform and overwrite the one entered in the app basic info section when creating the application. This field is mandatory.
Warning
Identifiers are unique and cannot be reused for other apps.
Store URL
URL of the store where the app will be published (App Store for iOS, Google Play Store for Android and AppGallery for Huawei). This field is mandatory.
Repo encryption version
The application stores its information in repositories persisted in the device storage with a specific encryption mechanism that depends on the platform. Enter the version with which encryption is performed: "0" for software-based encryption, "1" for hardware-based encryption (only available for iOS) or "2" for secure storage (only available for Android).
Important
Options "1" and "2" involve higher security levels and should be used for all new apps.
Revision to force full configuration download
This value allows the binary to identify if the app configuration changed from that already available in the server and should be downloaded or not. If the value is set to 0, the binary will not download the configuration. If the value is set to 99999, or the field is left incomplete, the app will always re-download the configuration.
Min. SDK version
Enter the minimum Android or Harmony version compatible with the app.
Note
This field is only available for Android and Harmony platforms.
Min. iOS version
Enter the minimum iOS version compatible with the app.
Note
This field is only available for iOS platform.
Split APK (only available for Android and Harmony)
Enable the toggle switch to generate a different .apk file for each device architecture, instead of generating a single file for all devices. This allows generating smaller files that will take up less space on the devices.
Note
This option is only available for existing apps' .apk files. Android and Harmony apps published in stores for the first time use .aab files and do not have this option available.
Http traffic Whitelist
Allow traffic without security from an specified domain. To do this, click Add and, in the HTTP Domain field, enter a URL.
This field is used for widgets and webviews.
To delete a URL, click the trashcan icon to the right of each domain.
Note
This field is only available for Android and Harmony platforms.
Mobile security
Switch the toggle to enable the Tamper Plus functionality.
Important
This option is only available for projects who have acquired the Tamper Plus feature. For more information about the feature and modes available, contact the Mobile Builder team.
When enabled, two configurations appear:
Select security level
Choose between the security modes available:
Hard: Interrupts the use of the app if a threat is detected and a non-fatal issue report is generated in Crashlytics.
Soft: The app continues functioning after the threat is detected and a non-fatal issue report is generated in Crashlytics.
Crash: Immediately closes the app if a threat is detected.
Securely closed
Switch the toggle to enable the option. The outcome varies depending on the previous configuration:
If the security level is set to hard and this option is enabled, a message with the ua599 error code is displayed, notifying of a threat and preventing the normal flow of the app from continuing.
If the security level is set to hard and this option is not enabled, the app will unexpectedly close.
If the security level is set to soft, the app continues functioning regardless of whether this option is enabled or disabled.
Public keys
Enter the public key of the keystore used to sign the APKs. This enhances the security of the generated binaries, ensuring that only those signed with authorized keys are valid.
Note
This option is only available for Android and Harmony.
Universal Domains
Fill in the fields in this section to set the URLs that will open the app when it is downloaded on the device.
Domain
Enter the domain. For example: https://example.net.
Path type
Choose a path type. The options available are:
Path
Interprets the text specified in the Path field as a path and opens the URL with that particular path only. For example, if you complete the field with /test, the URL https://example.net/test will be opened.
Path prefix
Interprets the text specified in the Path field as a prefix and opens all the URLs that include that prefix. For example, if you complete the field with /test, URLs such as https://example.net/test, https://example.net/tester and https://example.net/testing will be opened.
Path pattern
Interprets the text specified in the Path field as a path pattern and opens all the URLs that include that pattern in any segment. For example, if you complete the field with /test/.* , all the URLs that include "test" as a path segment will be opened, such as https://example.net/test/resource and https://example.net/test/media.
Path value
Enter the path to be opened. For example: /test.
Then click Add to finish the process. You can edit the domain by clicking each field. To delete a domain, click the trashcan icon to the right of each domain.
Click Add to finish the process. Repeat these steps with each platform you want to add.
Important
The Identifier, Store URL and Domain fields are mandatory and must be completed to add a new platform.
To see the details of the platforms added, hover over each platform's chip. Click the remove icon (x) in any platform chip to delete it. To edit a platform, click the pencil icon in that platform's chip. You can edit all fields except for the platform name.
To add another platform, click Add and start the process again.
Follow the instructions below to integrate a new SDK to your app.
In the SDKs section, click Add.
In the panel that opens, select an SDK from the drop-down menu and review the platforms selected (Android, iOS or Harmony) . By default, all the platforms configured for your app at the moment of adding the SDK are selected. You can unselect the ones where you do not want to include the SDK.
Important
Make sure to have the selected platforms added in the Platforms section to avoid issues when generating the app.
Complete the parameters required to enable that SDK. Hover over the question mark icon to the right of each field to get additional information about the SDK configuration.
Important
Each SDK requires you to fill in different parameters for its configuration. If you have questions about how to complete these parameters, refer to the SDKs documentation or contact the Mobile Product team.
Click Add to finish the process. Repeat these steps with each SDK you want to add.
Hover over each SDK chip to see in which platforms the SDK is included. Chips with a red icon indicate that the SDK was deleted. Chips with a yellow warning icon indicate that the SDK has dependencies pending configuration, this means that it requires the configuration of another SDK or SDKs to work.
Click the remove icon (x) in any SDK chip to remove it from your application. To edit an SDK, click the pencil icon in that SDK chip. Only the SDKs with configurable parameters can be edited. You can edit all fields except for the SDK name. Once you have edited the necessary fields, click Save to implement the changes and close the panel.
Important
If an SDK was deleted (chip marked in red), you must remove it before saving the application.
Tamper detectors are preventive measures to avoid any attempt to tamper with your app without your consent. The application configuration allows you to activate different tamper detection tools. Follow the instructions below to learn how to configure them.
To activate a detector, find it in the list and click the checkbox to the left. By default, all detectors are enabled except for the Integrity detector. To activate all the tamper detectors at once, click the Detections checkbox at the top of the list. See the table below to learn more about each tamper detector:
Debugger
Prevents the debugging of your app. The mode suggested for this detector is "soft".
Hooking
Verifies the system function calls. The mode suggested for this detector is "hard".
Root
Prevents the use of the app on a rooted device. The mode suggested for this detector is "hard".
Emulator
Prevents the use of the application on an emulator. The mode suggested for this detector is "hard".
Integrity
Verifies the integrity of the application by validating its certificates.
Then, edit any tamper detector as desired. To do so, click the pencil icon to the right of the detector name. A modal opens, where you can edit the following settings:
Mode
Mode in which the detector will be run. Click the field and select and option from the drop-down menu. Click soft if you only want the detector to warn you about any attempt to tamper with your application. Click hard if you want the detector to block any further action if any attempt to tamper with your application is detected.
Interval
Interval in which the detector will be run. Click the field and enter the interval in numbers.
Services
Transactions to which you want to apply the tamper detection. Enter the number of transactions.
Select checks
Checks performed by the detector. By default, each detector includes different checks. Click the remove icon (x) of any check if you don't want to include it in your detection process. To add more checks, click the arrow and select them from the drop-down menu or click the Include all checks toggle switch below to include all checks available.
Click Save to implement the changes made to the tamper detectors and close the modal.
If you need to change the order in which the detectors will be run, click the up and down arrows located to the right of each detector and move them in the list.
Best practice
If you are configuring or editing an app for a production environment, you should activate all detectors. If you don't activate one or more of them, and try to save the application, a warning modal appears, indicating that not activating the missing detectors may increase the risk of cyberattacks. You can either click Close and activate the detectors or click Save and continue without activating them.
Edit an Application
To edit an existing app, find the desired app in the list and click the pencil icon to the right. The Edit application page opens, where you can edit the parameters configured during the creation process or add new ones. Once you have edited all the necessary sections, click Save to apply the changes.
Every time you save changes to your app, the Record Description modal opens for you to detail what changes were made. You can then access the history record of the changes made to the app in the Records page.