Once you finish developing an application project, you need to make it possible for users to install the project on their devices or access it through web browsers. This can be done with the Packing and Build App features. In the Packing stage, you can create the files necessary for deployment by selecting an operating environment and update type. Next in the Build App stage, you can compress those created files to make an installation file.
Configuring Deploy Environment
You can set the necessary values related to Deploy by clicking the menu [Deploy > Settings] item. Only items related to Deploy environment configuration among the menu [Tools > Options] are put together and the values to set are the same.
Packing- Create Archive Files
In this stage, you can select operating environments and corresponding update types for your project. You can designate the files to be included in archive files, varying according to operating environments.
Launch Packing Wizard to Create Archive Files
1
Launch the Packing wizard by accessing the menu [Deploy > Packing(Archive&Update)].
2
In Output Path, specify the location where archive files will be created.
3
Click the Next button to proceed to the next step, which allows you to select packing options for each operating environment.
4
Select operating environments first and then choose corresponding update types and other options. Click Options if you want to use the compression and obfuscation functions.
Call-out | Description | |
---|---|---|
1 | Sub Directory | Designates a folder where archive files will be created. Sub-folders will be created automatically according to selected operating environments Below is the list of the sub-folders that can be created according to selected operating environments. Web Browser (_web_) Windows (_windows_) Androids (_android_) iOS (_ios_) macOS (_macos_) |
2 | Operating environments | Selects the operating environments for which archive files will be created. You can set the options of selected environments. You cannot adjust the settings of unselected environments. |
3 | Update Type | Selects one from three update types according to how you deploy the app. Configurable options vary according to update types. You do not need to select an update type for the web browser environment. |
4 | Resource Setting | Configures options, which vary according to operating environments. |
5 | Update Info | Opens the Update Info setting window. |
5
Upon clicking the Packing button, Nexacro Studio will begin to create archive files according to selected operating environments and configurations. Results will be displayed after the creation of archive files is complete.
If archive files are successfully created, Nexacro Studio will present blue-colored links, which you click to open the folders that contain relevant files. Clicking the [Build App] button at the bottom left will lead you to Build App, a wizard for creating deployment files. When you select 'Web Browser' only as an operating environment, the [Build] button will not activate.
index.html
In the case of the web browser environment, Nexacro Studio does not create an installation file. Instead, it creates an HTML file through which you can access the app by using an web browser. In the _web_ folder, you will find that necessary files have been created including the index.html file. Once you upload all those files to a server, you can access the app through a web browser by entering the below URL.
http://[domain name]/index.html
Select Update Type (for each operating environment)
For the Windows, Android, iOS and macOS environments, you need to select an update type, which alters a selection of settings options as well as created archive files.
Update Type
Update (Local + Server)
To install an app, you need to download necessary archive files and save them to your local storage. If the app detects a change in the version of its contents, relevant updates will be downloaded via the network and saved to your local storage.
Server
You can execute an app only with a network connection. You need to download necessary files from the server.
Local
To install an app, you need to download necessary archive files and save them to your local storage. You can execute an app without a network connection.
Even when the update type is Local, you need a network connection depending on apps for the purpose of accessing data or connecting to the server.
Configurable Options (according to operating environments and update types)
You can select types of files that will be deployed, according to operating environments and update types. In the configurable option section, you can select files to deploy.
When updating modules, sources or resources, the updating will not be conducted if the version of the incoming update package equals that of the previous package. The reason is that Nexacro Platform will consider that both packages are the same.
Update Info.
You can set update policies for receiving recent contents from the server. You need to designate the directory from which contents are downloaded. Moreover, you need to set the timeout for updating and determine the number of permitted retries. (An updating process will finish as a failure if you fail to receive contents for a specified number of retries.) Lastly, you need to determine whether the updating is performed automatically or manually (on user demand).
Applicability according to operating environments and update types
Update (Local + Server) | Server | Local | |
---|---|---|---|
Web Browser | X | ||
Windows | O (Required) | O (Required) | X |
Android | O (Required) | O (Required) | X |
iOS | O (Required) | O (Required) | X |
macOS | O (Required) | O (Required) | X |
Configurable options
Click the [Update Info] item to the right of the Resource Setting item and then edit the content.
Menu name | Description |
---|---|
Base URL | Base location of the files that require updates such as SetupResource.zip and SetupRuntime.exe. |
Timeout | Timeout for updating |
Retry | Number of permitted retries |
AutoUpdate | Selects between 'auto' and 'manual' |
Update Info. is required so you cannot deselect it.
Setup
You can deploy the basic setup of Nexacro Platform without using the Build App wizard. You just need to create a bootstrap file and resource files and add setup update information to the bootstrap file.
Applicability according to operating environments and update types
Update (Local + Server) | Server | Local | |
---|---|---|---|
Web Browser | X | ||
Windows | O | O | O |
Android | X | X | X |
iOS | X | X | X |
macOS | X | X | X |
Configurable options
You can select the types of operating systems where the deployed runtime will run. The information on selected OSes will be added to the bootstrap file start.json.
Menu name | Description |
---|---|
Use | Checks an operating system to which the Nexacro Platform runtime will be deployed. |
Type | Type of an operating system |
Server Path | This is a relative path whose base is the location defined as Base URL in Update Info. If the location of deployed setup is different from the Base URL, you need to use this option. For example, the below URL will be used if you specify "UPDATE" as the Base URL and "SETUP_FILE" as the Server Path.
|
Setup Filename | Name of the setup file |
Engine Setup Key | Setup key |
Version | Version of the setup file |
You can change some options related to the setup—such as a shortcut icon, splash image and engine setup key—in the Build App stage.
Module
You can determine whether to deploy the framework nexacro17lib, which is necessary for executing a Nexacro Platform-based app. For Windows, you can add external modules as well as modules for running a UWP app.
Applicability according to operating environments and update types
Update (Local + Server) | Server | Local | |
---|---|---|---|
Web Browser | X | ||
Windows | O | O | O (Required) |
Android | O | X | O (Required) |
iOS | O | X | O (Required) |
macOS | O | X | O (Required) |
Configurable options
You can add, change or delete module files to deploy. Provided options are varying according to operating environments.
Menu name | Description |
---|---|
Type | Module type OS versions are specified for extension modules. (Ext [OS version]) The type of a module is specified as there are three module types as follows: framework (nexacrolib), file and UWP. |
Server Path | This is a relative path whose base is the location defined as Base URL in Update Info. If the location of the module is different from Base URL, you need to use this option. For example, the below URL will be used if you specify "UPDATE" as the Base URL and "SETUP_FILE" as the Server Path.
|
Name | Name of the module file (unchangeable) |
TargetPath | This is a path to a local storage to which files are downloaded. If you specify the default path (./), files will be saved to the %USERAPP% directory. You can also specify another path like %USERAPP%Component/TEST/. |
Version | Version of the module |
Description | Memo (irrelevant to system operation ) |
See %USERAPP% Alias paths for further information
Configurable options (for Local update type)
The framework file (nexacro17lib.zip) is set by default, and you cannot delete or change this file. Only two options are presented: Type and Name.
Configurable options (for Windows operating environment)
You can add extension modules, UWP and files. For Android, iOS and macOS, you cannot deploy any module other than the framework file.
Configurable options (for web browser environment or for Server update type)
You need to deploy the framework in the form of files executable on web browsers, rather than the form of a compressed file.
Source
You can specify source files (or folders) to deploy, selected from the files in your project. You should select an entire project for the first deployment while you can pick up only necessary files for an update. Source files are deployed in the form of either individual files or compressed archive files depending on operating environments and update types.
Applicability according to operating environments and update types
Update (Local + Server) | Server | Local | |
---|---|---|---|
Web Browser | O | ||
Windows | O | O | O (Required) |
Android | O | O | O (Required) |
iOS | O | O | O (Required) |
macOS | O | O | O (Required) |
Configurable options
You can select files for deployment from Project Files. If there are already-made archive files, you can choose one or more archives and then select files for deployment from Project File. In this way, you can selectively add source files to an archive.
Menu name | Description |
---|---|
Rearchive | When checked, you can build the archive file again by including just necessary source files |
Name | Name of an archive file. |
Version | Version of the archive file |
Description | Memo (irrelevant to system operation ) |
Configurable options (for Web Browser operating environment or Server update type)
While no archive file is created, you just need to select files for deployment from Project Files. You cannot find the Archives option in the configurable options section.
Configurable options (for Local update type)
Only the Rearchive and Name options are presented.
Resource
You can specify resource files to deploy. You should select entire resources for the first deployment while you can pick up only necessary files for an update. Resource files are deployed in the form of either individual files or compressed archive files depending on operating environments and update types.
Applicability according to operating environments and update types
Update (Local + Server) | Server | Local | |
---|---|---|---|
Web Browser | O | ||
Windows | O | O | O (Required) |
Android | O | O | O (Required) |
iOS | O | O | O (Required) |
macOS | O | O | O (Required) |
Configurable options
You can select files for deployment from Resource Files. As for the Archives option, you can create only one archive file, Resource.zip.
Menu name | Description |
---|---|
Name | Name of the archive file (unchangeable) |
Version | Version of the archive file |
Description | Memo (irrelevant to system operation ) |
Configurable options (for Web Browser operating environment or Server update type)
While no archive file is created, you just need to select files for deployment from Resource Files. You cannot find the Archives option in the configurable options section.
Configurable options (for Local update type)
Only the Name option is presented.
Build App- Create Installation Files
In this stage, you can create installation files by including necessary archive files created in the previous Packing stage. You can choose options according to the operating systems to which your application will be deployed.
Launch Build App Wizard to Create Installation Files
1
To launch the Build App wizard, click the Build App button, which appears in the last step of the Packing stage upon the creation of archive files. Otherwise, access the menu [Deploy > Build].
In the case of clicking the [Build] button in the Packing step, it moves to the property setting screen, and in the case of accessing the Build App menu, it moves to the setting screen after selecting Build Target.
2
In the case of selecting the Windows operating system among the Build Target items, check the Setup-related settings and click the [Build] button.
Menu item | Description |
---|---|
Program Name | This is the name that will be displayed in the menu Uninstall or change a program. The default value is the name of the project. |
Build Type | |
Build Type | Selects the operating system version. |
Setup information | |
Install Location | Specifies the path where the app will be installed. The path will be located under the "Program Files" folder in Windows. The default value is nexacro\17. |
Windows [according to versions] | |
Settings varying according to selected versions of Windows. You can use different file names for each version. | |
Setup Filename | Specifies the name of an installation file to create |
Setup Version | Specifies the version of the installation file |
Windows [Operating System Version] > Configure - Configure when changing the Server Path or Engine Setup Key. | |
Server Path | This is a relative path whose base is the location defined as Base URL in Update Info. If the location of the setup is different from Base URL, you need to use this option. For example, the below URL will be used if you specify "UPDATE" as the Base URL and "SETUP_FILE" as the Server Path.
|
Engine Setup Key | Designates an engine setup key (CLSID) |
Menu item | Description |
---|---|
Advanced | |
Install Mode | Default: default installation mode Silent: the application will be installed with default settings without the appearance of a dialog during installation. |
Auto Update | This option is used to determine whether to update the engine of Nexacro Platform automatically. This option overrides the AutoUpdate option, which falls into the Update Info section in the Packing stage. The default value is "Auto". If you select "Manual", the engine will not be updated automatically. |
Shortcut Type | Desktop: creates a shortcut on the desktop Start Menu: creates a shortcut on the start menu Desktop + Start Menu: creates shortcuts on the desktop and start menu both Select at Install time: allows users to designate the location of a shortcut when the engine is installed. No use: no shortcut is created. The default value is "Select at Install time". If the Install Mode is set to "Silent", the option "Select at Install time" is not available and the default value is "Desktop". |
Shortcut Icon File | Changes an icon that represents the app set-up file, executable program and uninstaller program The default value is the icon of Nexacro Platform. |
Splash Image File | Changes the image of the splash screen to a specified file |
Splash Show Message | Default: displays the default message Do not show: no message is displayed. |
Update Browser | Determines whether to update the browser emulator to the latest version |
Rename Executable | Changes the name of the executable program The default value is nexacro.exe. |
If your app includes a WebBrowser component, the version of the browser emulator will vary according to the value of the Update Browser option. If more than one app are installed in your PC, a conflict may occur over the settings on browser emulators.
In this case, you can prevent such a conflict by renaming the file nexacro.exe through the Rename Executable option.
You can either use the default engine setup key as it appears in the input field automatically or use a new setup key by clicking the key-shaped icon on the right side of the input field. You are recommended to create new engine setup keys and manage them separately if you need to install multiple apps in your PC.
An installed app will not be updated if its engine setup key is newly created in the process of an update.
3
If you select Android, iOS or macOS among build targets, you can set options related to AppBuilder.
Menu | Description |
---|---|
Project information | |
Program Name | This is a program name that will appear when the app is installed in an operating system. |
Build Environment | |
TargetProject | You can either create a new App Builder project or select an existing project. |
Project URL | This is the location to which your app will be deployed. The default value is an URL automatically created by AppBuilder. |
Package Name | Displays the Package name. |
Version | Specifies the file version. |
Build Type | - Build Builds a selected project. If the project has been built before, it will be built anew. - Upload Contents Uploads only the contents of a selected project. |
Build Library | You can select the Nexacro Platform libraries that will be included in the project build. |
Build Mode | Selects the build mode. |
Auto Deploy Server | |
Deploy Mode | Configures whether to use the Deploy server. When selecting true, you can select Deploy Server. |
Deploy Server | When the Deploy Mode item value is set to true, selects the Deploy server from the Deploy Server list set in App Builder. |
Deploy Directory | Displays the path set in Deploy Server. The setting value can be modified. |
[Each operating system] | |
Setup Filename | Specifies the name of an installation file to create. |
Setup Version | Specifies the version of the installation file. |
[Each operating system > Advanced] | |
Signing | Defines the signing that will apply to the project build. |
Plist URL | This is the URL for a plist file for updating in-house. You can change the URL if you run a separate server for deployment. If you use the AppBuilder server, the default value will be used. This option is applicable only to iOS. |
Built-in Library | You can select 32-bit and 64-bit shared libraries that will be applied to the build of an installation file. This functionality is supported by Nexacro Platform whose version is 17.0.0.2200 or later. |
User Library | You can select the user libraries that will be included in the project build. This option is applicable only to Android and iOS, not to macOS. |
Icon | Specifies an image file for the icon of the app. |
Splash Image | Specifies an image file for the splash screen of the app. |
Dmg Image | Specifies a .dmg file as an Apple disk image. This option is applicable only to macOS. |
Permission | Specifies permissions for running the app. This option is applicable only to Android rather than iOS and macOS. |
Rotation | Selects the option to pin the screen to Portrait or Landscape or unpin to enable the Sensor. |
When an image file, such as Icon or Splash Image is included, the image preview function is provided when the eye-shaped icon is clicked. If you have bundled multiple image files in a zip file, then you can click the [>] button in the lower right corner to view the next image.
4
Click the Build button to create installation files as configured.
You can check out created installation files. For iOS and Android, QR codes will be generated to allow you to download the files by yourself.
Description | ||
---|---|---|
1 | Log | Shows the logs of the build process Error messages will be presented if errors have occurred. |
2 | Download url | Provides the URLs to download the executable files for each running environment Hovering a mouse pointer over a URL displays the relevant QR code on the right-hand side. |
3 | Copy url | Copies the URL on the clipboard |
4 | Save QR Code | Saves the QR code in the form of a PNG file |
Set Options for AppBuilder
If you build an app through AppBuilder, you need to create an AppBuilder project and set related options, which can be done through the console of AppBuilder. Meanwhile, the Build App wizard can handle the following jobs: creating an AppBuilder project, changing the framework library, registering user libraries and setting permissions.
Create TargetProject (App Builder Project)
Setting > Build Environment > Target Project
To use App Builder, you need to create an App Builder project first. You can select an existing project if there is one. If there is no existing project, click the + button to create a new project.
If the package name does not match the value of Signing, App Builder may fail to create an installation file.
Register or Change Build Library
Setting > Build Environment > Build Library
You can manage the Nexacro Platform framework library as well as libraries for each operating system. You can edit existing libraries and add new library files.
Description | ||
---|---|---|
1 | Library list | Displays the list of libraries registered on the App Builder server and libraries to be newly registered. Displays icons in a different form for the items being modified and newly added, depending on the status. |
2 | Library configuration | Name, Version, Framework Library are required items. At least one of 3 items must be specified for Mobile Engine Library. |
If you designate a local library instead of the one registered in the server, App Builder will use the library installed on your PC.
The local library item is set to the product-installed version by default. The list of library files set by default can be found in the SetupRuntime.json file.
The default library file can be changed by the user. Changed contents are maintained until the product updates, and if the SetupRuntime.json file is changed during the product update, then it is initialized according to the corresponding version.
l Android library can be selected from Android or AndroidX.
You can choose a different version of the file from the framework library. If the file version is different, then the item is displayed in red.
Changing or Registering Signing as New
Setting > Android, iOS, macOS > Advanced > Signing
You can register or create the Signing file (for Android) and then check the registered content.
Android
Item | Description | |
---|---|---|
1 | name | Enter the name of the item to register. |
2 | Owner | Enter the owner or Keystore (or Signing). (It is automatically entered as the login account). |
3 | Keystore Alias Name | Enter the Keystore Alias name. The Keystore Alias name must be at least 6 characters long. |
4 | Keystore Alias Password | Enter the Keystore Alias password. The Keystore Alias password must be at least 6 characters long. |
5 | Keystore File | Create the Keystore file or register the file you have. - Generate: Create the Keystore file in App Builder. - Upload: Register the Keystore file and display the registered file. The registered file is displayed in the form of a link and you can download the file by clicking the link. |
6 | Keystore Password | Enter the Keystore password. |
iOS/macOS
Item | Description | |
---|---|---|
1 | name | Enter the name of the item to register. |
2 | Owner | Enter the owner or Keystore (or Signing). (It is automatically entered as the login account). |
3 | Certificate Name | Enter the iOS Certificate name. |
4 | Certifcate Password | Enter the password for the registered iOS Certificate file. |
5 | Certificate File | Register the iOS Certificate file. |
6 | Provisioning Profile (iOS) | Register the Provisioning Profile file. |
7 | Provisioning Type | Displays the Provisioning Profile file type. This is not an input item and one of enterprise, app-store, ad-hoc, or development is displayed depending on the Provisioning Profile file property. |
Register or Change User Library
Setting > Android, iOS > Advanced > User Library
You can manage user libraries for each operating systems. You can edit existing libraries and add new library files.
Description | ||
---|---|---|
1 | User library list | This list shows both the user libraries already registered in the server and the user libraries to be registered. Status indicates three types as stated below. server: user libraries already registered in the server but not being edited update: user libraries already registered in the server and being edited new: user libraries that will be registered in the server |
2 | User library configuration | All the items are required. (ClassName is required only for Android.). The below extensions are supported as a library file. Android: *.jar iOS: *.a |
You can select user libraries to apply them to a certain project project.
Define Permissions
Setting > Android > Advanced > Permission
You can define permissions required to run an app in Android.
When you designate the permission for Map or Xpush, you are required to enter the key to the device API. Otherwise, the app will not work properly.
You should attach the Firebase Android config file (google-services.json) to designate the permission for Xpush.
Check Logs when AppBuilder Fails to build
If AppBuilder fails to build an app, it will provide a log by presenting a log file link instead of an installation file link.
In the log file, you can see an error code as well as the logs created when the build failed.
Quick Build with Previous Settings
If you have the Build history of the project, then you can use the Quick Build function. If there is the Build history, then the menu [Deploy > Quick Build] item is enabled.
In the Quick Build Wizard, you can check the list of each operating system in which the Build has been performed, download the app, or modify the version information of the edited resource file, and then proceed with Build.
Item | Description | |
---|---|---|
1 | History | Displays the Build history for each operating system. Provides the link to download Setup File and the QR Code information. Runs Build only for the selected operating system. |
2 | Detail | Displays some partial setting values set in Packing, Build Wizard. The content cannot be modified and can only be used for checking. |
3 | You can close or open the Detail window by clicking the button. | |
4 | Contents Update | Select the Resource to update and modify the Version information. Only the selected Resource is processed. |
5 | Packing | Runs the Packing wizard. |
6 | Build | Runs Quick Build. Depending on the Update Type, the internally processed operation varies. |
When clicking the [Build] button, it operates as follows according to Update Type.
Update (Local + Server) | Server | Local | |
---|---|---|---|
Windows | Packing | Packing | Packing Build |
Android iOS macOS | Packing Upload Contents | Packing | Packing Build |
Develop and Run UWP App
In Windows 10 or later, you can develop and deploy an app that uses Universal Windows Platform (UWP) APIs. In Nexacro Platform, the Camera, Network and Geolocation objects of the DeviceAPI module adopt UWP APIs.
Packing > Module
When setting modules, add UWP (WIndows10 Device Agent).
A UWP app is not supported when the update type for packing is "Local".
Deploying nexacro17_UWP.appxbundle
The nexacro17_UWP.appxbundle file is neither included in an installation file nor created in the process of packing. You must copy the file to the URL of a bootstrap file. The nexacroUWP app will be installed automatically when you launch your installed app.
Running UWP App
A UWP app works in the same way as conventional apps if you use a Network or Geolocation object. However, a background app like below will be launched if you operate a device component directly: for example, calling the takePicture method of the Camera object.
The below sample is a simple example that operates a camera feature in Windows 10 and shows the captured image through an ImageViewer component.
this.Button00_onclick = function(obj:nexacro.Button,e:nexacro.ClickEventInfo) { this.Camera00.takePicture(); }; this.Camera00_oncapture = function(obj:nexacro.Camera,e:nexacro.CameraEventInfo) { trace('camera capture ok: '+e.url); this.ImageViewer00.set_image("file://"+e.url); }; this.Camera00_onerror = function(obj:nexacro.Camera,e:nexacro.CameraErrorEventInfo) { trace('camera error: '+e.errormsg); };