Class RuntimeBuilderSettings
- java.lang.Object
- com.iizix.run.RuntimeBuilderSettings
 
- public class RuntimeBuilderSettings extends java.lang.ObjectThe build settings loaded from the property container.- Author:
- Christopher Mindus
 
- Field Summary- Fields - Modifier and Type - Field - Description - PlainKString- app_descrDescriptive text of the app, use text table externalized for multiple languages- java.lang.String- app_idSpecifies the app's reverse-domain identifier, e.g.- java.lang.String- app_id_androidSpecifies the app's reverse-domain identifier, e.g.- java.lang.String- app_id_iosSpecifies the app's reverse-domain identifier, e.g.- java.lang.String- app_id_windowsSpecifies the app's reverse-domain identifier, e.g.- PlainKString- app_locNameName of the app displayed to the user.- java.lang.String- app_nameShort name of the app without spaces.- java.lang.String- app_textTableBase text table for iiziRun texts.- static boolean- areAndroidIconsTransparentFlag for opacity for Android icons.- static boolean- areiOSIconsTransparentFlag for opacity for iOS icons.- java.lang.String- assets_folderThe Assets folder for "icons" and "splash" screens.- java.lang.String- author_emailEmail to author for app.- java.lang.String- author_hrefWeb site of author for app.- PlainKString- author_nameName of author.- boolean- build_androidBuilds the customized iiziRun for Android, default true.- boolean- build_iosBuilds the customized iiziRun for iOS, default true.- java.lang.String- build_remoteSpecifies the address of the Remote iiziRun Builder machine.- boolean- build_remote_allBuild all remotely.- boolean- build_remote_tlsSecured with TLS.- int- build_target_typesTargets to build: 0=debug, 1=release, 2=both.- java.lang.String- build_versionFull version number expressed in major.minor.patch notation (default 1.0.0).- java.lang.String- cert_CCertificate "C": Two letter country code, e.g.- java.lang.String- cert_CNThe Common Name of the author for certificates.- java.lang.String- cert_LCertificate "L": Locality (city) name, e.g.- java.lang.String- cert_OCertificate "O": Large organization name, e.g.- java.lang.String- cert_OUCertificate "OU": Small organization name, e.g.- java.lang.String- cert_STCertificate "ST": State name, e.g.- int- deepLink_opThe operation that are allowed for Deep Linking.- java.lang.String- deepLink_urlschemeEnables Deep Linking by means of an URL scheme.- static java.lang.String[]- ICON_DENSITY_ANDROIDIcon densities for Android, null for none.- static java.lang.String[]- ICON_NAMES_ANDROIDThe transparent icon names for Android required in the icons directory.- static java.lang.String[]- ICON_NAMES_COMMONThe transparent icon names for Common use (Web, etc) required in the icons directory.- static java.lang.String[]- ICON_NAMES_COMMON_MUST_BE_PRESENTThe transparent icon names for Common use (Web, etc) required in the icons directory.- static java.lang.String[]- ICON_NAMES_IOSThe opaque icon names for iOS required in the icons directory.- java.lang.String- jdk_pathPath to the root of the Java 1.8 Development Kit.- java.lang.String- login_passwordThe initial password for a default login.- java.lang.String- login_userThe initial user name for a default login.- boolean- output_clearFlag indicating if the user should be prompted to clear the build output directory or if it should automatically be done.- java.lang.String- output_pathPath where the build output of the customized iiziRun will be placed.- boolean- plugin_cameraEnables taking pictures and for choosing images from the system's image library.- boolean- plugin_contactsEnables the access to the contacts database of the device.- boolean- plugin_fingerprintEnables fingerprint authentication with Android Fingerprint scanner or iOS Touch ID.- boolean- plugin_firebaseEnables push notifications, analytics, event tracking, crash reporting and more from Google Firebase.- boolean- plugin_geolocationEnables the geolocation functions.- boolean- plugin_geolocation_BG_androidEnables the background geolocation functions for Android.- boolean- plugin_geolocation_BG_iosEnables the background geolocation functionsfor iOS.- boolean- plugin_inappbrowserEnables the in-app browser to display web pages much like the external web browser.- boolean- plugin_mediaThis plugin provides the ability to record and play back audio files on a device.- boolean- plugin_media_captureThis plugin provides access to the device's audio, image, and video capture capabilities.- boolean- plugin_vibrationEnables simple vibrations on the device.- RuntimeBuilderProps- propsThe settings property.- java.lang.String- server_addrAddress of the iizi Server.- int- server_portServer port number, normally 443 for secure TLS connections (default), otherwise e.g.- boolean- server_secureIndicates the server port is configured for secure TLS communication, default true.- boolean- server_validateValidates that the server is really present and an iizi Server.- static java.lang.String[]- SPLASH_FILESSplash screens are opaque.- static int[]- SPLASH_IOS_SIZESSplash screen sizes for iOS: first width, then height.- java.lang.String- srv_app_descrThe iizi Server App Description.- java.lang.String- srv_app_idThe iizi Server App ID.- protected TextTable- textTableThe text table, null if it comes from a remote party.- static int- TOTAL_ICON_COUNTCount of icons needed (for wizard to display).- java.lang.String- windows_publisher_idThe windows publisher ID as e.g.- java.lang.String- windows_store_identity_nameThe Windows Store identity name, e.g.
 - Constructor Summary- Constructors - Constructor - Description - RuntimeBuilderSettings(RuntimeBuilderProps pc)The constructor.
 - Method Summary- All Methods Static Methods Instance Methods Concrete Methods - Modifier and Type - Method - Description - static java.io.File- generateAndroidDebugKeyStore(RuntimeBuilderProps props, java.io.File assetsDir)Generates the Android debug key store and saves it to the properties.- java.io.File- generateAndroidDebugKeyStore(java.io.File assetsDir)Generates the Android debug key store and saves it to the properties.- static java.io.File- generateAndroidReleaseKeyStore(RuntimeBuilderProps props, javax.security.auth.x500.X500Principal owner, java.io.File assetsDir)Generates the Android release key store and saves it to the properties.- java.io.File- generateAndroidReleaseKeyStore(javax.security.auth.x500.X500Principal owner, java.io.File assetsDir)Generates the Android release key store and saves it to the properties.- javax.security.auth.x500.X500Principal- getAndroidCertificateOwner()Gets the Android app owner used when signing release APK's, an X.500 principal used for certificate creation.- static java.lang.String- getAndroidDebugAlias()Gets the Android debug code alias in the keystore ("androiddebugkey").- static javax.security.auth.x500.X500Principal- getAndroidDebugOwner()Gets the Android Debug owner for signing apps.- static java.lang.String- getAndroidDebugPassword()Gets the Android debug code signing password.- static java.lang.String- getAndroidReleaseAlias()Gets the Android release code alias in the keystore ("iizi").- java.lang.String- getAndroidReleasePassword()Gets the Android release code signing password.- static java.lang.String- getAndroidReleasePassword(RuntimeBuilderProps props)Gets the Android release code signing password.- java.io.File- getAssetsSubdirectory()Gets the projects subdirectory in the Assets folder.- TextTable[]- getDerivedTextTables()Gets all tables in all open projects that derives from this text table.- java.lang.String- getLocalizedString(PlainKString pks, java.lang.String languageCode)Resolves a PlainKString that refers to the text table with the specified language code.- java.io.File- getOutputDirectory()Gets the output directory where to place the builds.- TextTable- getTextTable()Gets the text table.- boolean- hasAndroidKeyStore(boolean isRelease)Checks for presence of Android keystore of debug or release type.- static boolean- hasAndroidKeyStore(RuntimeBuilderProps props, boolean isRelease)Checks for presence of Android keystore of debug or release type.- boolean- isInternalBuild()Checks for internal build.- void- verify(boolean isDesigner, boolean doCheckAll, java.io.File projectDir, java.util.Set<java.lang.String> textTableIDs, java.util.ArrayList<BuilderError> errors)Performs verification of the settings.- static java.lang.String- writeAndroidKeyStore(RuntimeBuilderProps props, java.io.File file, boolean isRelease)Writes an Android KeyStore to file.- java.lang.String- writeAndroidKeyStore(java.io.File file, boolean isRelease)Writes an Android KeyStore to file.
 
- Field Detail- ICON_NAMES_COMMON- public static final java.lang.String[] ICON_NAMES_COMMON The transparent icon names for Common use (Web, etc) required in the icons directory.
 - ICON_NAMES_COMMON_MUST_BE_PRESENT- public static final java.lang.String[] ICON_NAMES_COMMON_MUST_BE_PRESENT The transparent icon names for Common use (Web, etc) required in the icons directory.
 - areAndroidIconsTransparent- public static final boolean areAndroidIconsTransparent Flag for opacity for Android icons.- See Also:
- Constant Field Values
 
 - ICON_NAMES_ANDROID- public static final java.lang.String[] ICON_NAMES_ANDROID The transparent icon names for Android required in the icons directory.
 - ICON_DENSITY_ANDROID- public static final java.lang.String[] ICON_DENSITY_ANDROID Icon densities for Android, null for none.
 - areiOSIconsTransparent- public static final boolean areiOSIconsTransparent Flag for opacity for iOS icons.- See Also:
- Constant Field Values
 
 - ICON_NAMES_IOS- public static final java.lang.String[] ICON_NAMES_IOS The opaque icon names for iOS required in the icons directory.- Note that there are TWO names that begins with "ios/" and needs a subdirectory. These icons are not square. 
 - SPLASH_FILES- public static final java.lang.String[] SPLASH_FILES Splash screens are opaque.
 - SPLASH_IOS_SIZES- public static final int[] SPLASH_IOS_SIZES Splash screen sizes for iOS: first width, then height.
 - TOTAL_ICON_COUNT- public static final int TOTAL_ICON_COUNT Count of icons needed (for wizard to display).
 - props- public final RuntimeBuilderProps props The settings property.
 - build_version- public final java.lang.String build_version Full version number expressed in major.minor.patch notation (default 1.0.0).
 - build_android- public final boolean build_android Builds the customized iiziRun for Android, default true.
 - build_ios- public final boolean build_ios Builds the customized iiziRun for iOS, default true.
 - build_target_types- public final int build_target_types Targets to build: 0=debug, 1=release, 2=both.
 - build_remote- public final java.lang.String build_remote Specifies the address of the Remote iiziRun Builder machine. Format is 'addr:port'. All communication is done over secured TLS connections.
 - build_remote_tls- public final boolean build_remote_tls Secured with TLS.
 - build_remote_all- public final boolean build_remote_all Build all remotely.
 - app_id- public final java.lang.String app_id Specifies the app's reverse-domain identifier, e.g. 'com.iizix.run.devel'. This name cannot be changed once the app has been published.
 - app_name- public final java.lang.String app_name Short name of the app without spaces. This name cannot be localized. This name cannot be changed once the app has been published.
 - assets_folder- public final java.lang.String assets_folder The Assets folder for "icons" and "splash" screens.
 - app_textTable- public final java.lang.String app_textTable Base text table for iiziRun texts. When multiple languages are used, this is the base language text file.
 - textTable- protected TextTable textTable The text table, null if it comes from a remote party.
 - app_locName- public final PlainKString app_locName Name of the app displayed to the user. The name can contain spaces and can be localized. It can also be changed after publishing of the app.
 - app_descr- public final PlainKString app_descr Descriptive text of the app, use text table externalized for multiple languages
 - author_name- public final PlainKString author_name Name of author. Use text table to localize name.
 - author_email- public final java.lang.String author_email Email to author for app.
 - author_href- public final java.lang.String author_href Web site of author for app.
 - cert_CN- public final java.lang.String cert_CN The Common Name of the author for certificates. If unspecified, it is the author's name in the default language (English).
 - cert_O- public final java.lang.String cert_O Certificate "O": Large organization name, e.g. "Onizuka, Inc.". If unspecified, it is the author's name in the default language (English).
 - cert_OU- public final java.lang.String cert_OU Certificate "OU": Small organization name, e.g. "Purchasing".
 - cert_L- public final java.lang.String cert_L Certificate "L": Locality (city) name, e.g. "Palo Alto".
 - cert_ST- public final java.lang.String cert_ST Certificate "ST": State name, e.g. "California".
 - cert_C- public final java.lang.String cert_C Certificate "C": Two letter country code, e.g. "CH".
 - server_addr- public final java.lang.String server_addr Address of the iizi Server. The address can be a DNS name (recommended) but can also be an IP address. This address does not necessarily have to be public on the internet.
 - server_port- public final int server_port Server port number, normally 443 for secure TLS connections (default), otherwise e.g. 80 for unsecure connections.
 - server_secure- public final boolean server_secure Indicates the server port is configured for secure TLS communication, default true.
 - server_validate- public final boolean server_validate Validates that the server is really present and an iizi Server. This is done in order to ensure that the server settings are correct. Default is true.
 - srv_app_id- public final java.lang.String srv_app_id The iizi Server App ID. This value MUST be specified and VALID.
 - srv_app_descr- public final java.lang.String srv_app_descr The iizi Server App Description.- nullor an empty string means that no description is available. This value is used merely for the interface on the client side for choosing the app, when this is possible.
 - login_user- public final java.lang.String login_user The initial user name for a default login.- In order to avoid a login prompt and to handle the login process inside the app, provide a valid and authorized User name and Password. This user should just have access to the app initially. - The default is "iiziRun Developer" with "secret" password. 
 - login_password- public final java.lang.String login_password The initial password for a default login.- The default is "iiziRun Developer" with "secret" password. 
 - deepLink_urlscheme- public final java.lang.String deepLink_urlscheme Enables Deep Linking by means of an URL scheme. The user can use the browser on the device to perform operations when clicking on special links.- nullmeans not enabled.
 - deepLink_op- public final int deepLink_op The operation that are allowed for Deep Linking. Be very careful when choosing the 'run another' or 'redefine' as this could present a security risk for users, unless the server is controlled in e.g. a private or corporate network (i.e. not the internet).- Values: - 0 = launch (default)
- 1 = run another
- 2 = redefine
 
 - output_path- public final java.lang.String output_path Path where the build output of the customized iiziRun will be placed. The default is the directory 'iiziRun' in the module project.
 - output_clear- public final boolean output_clear Flag indicating if the user should be prompted to clear the build output directory or if it should automatically be done.
 - jdk_path- public final java.lang.String jdk_path Path to the root of the Java 1.8 Development Kit. The default will attempt to use the Eclipse settings.
 - plugin_camera- public final boolean plugin_camera Enables taking pictures and for choosing images from the system's image library.
 - plugin_contacts- public final boolean plugin_contacts Enables the access to the contacts database of the device.
 - plugin_firebase- public final boolean plugin_firebase Enables push notifications, analytics, event tracking, crash reporting and more from Google Firebase.
 - plugin_geolocation- public final boolean plugin_geolocation Enables the geolocation functions.- Enabled by default. 
 - plugin_geolocation_BG_android- public final boolean plugin_geolocation_BG_android Enables the background geolocation functions for Android. This makes it possible for the server to receive the location of the device even if the app is not running.
 - plugin_geolocation_BG_ios- public final boolean plugin_geolocation_BG_ios Enables the background geolocation functionsfor iOS. This makes it possible for the server to receive the location of the device even if the app is not running.- Note: the App Store is very strict for this setting and will only allow your app to use it if you can "prove" that the app functions requires it. 
 - plugin_inappbrowser- public final boolean plugin_inappbrowser Enables the in-app browser to display web pages much like the external web browser. This plugin is required for apps using external login sources such as Facebook, LinkedIn or Twitter.
 - plugin_media- public final boolean plugin_media This plugin provides the ability to record and play back audio files on a device.
 - plugin_media_capture- public final boolean plugin_media_capture This plugin provides access to the device's audio, image, and video capture capabilities.- WARNING: Collection and use of images, video, or audio from the device's camera or microphone raises important privacy issues. Your app's privacy policy should discuss how the app uses such sensors and whether the data recorded is shared with any other parties. In addition, if the app's use of the camera or microphone is not apparent in the user interface, you should provide a just-in-time notice before the app accesses the camera or microphone (if the device operating system doesn't do so already). That notice should provide the same information noted above, as well as obtaining the user's permission (e.g., by presenting choices for 'OK' and 'No Thanks'). Note that some app marketplaces may require your app to provide just-in-time notice and obtain permission from the user prior to accessing the camera or microphone. 
 - plugin_fingerprint- public final boolean plugin_fingerprint Enables fingerprint authentication with Android Fingerprint scanner or iOS Touch ID.
 - plugin_vibration- public final boolean plugin_vibration Enables simple vibrations on the device.
 - app_id_android- public final java.lang.String app_id_android Specifies the app's reverse-domain identifier, e.g. 'com.iizix.run.devel'. This name cannot be changed once the app has been published. This name is used to override the Android app ID. This name can be null, in which case the default "app_id" is used instead.
 - app_id_ios- public final java.lang.String app_id_ios Specifies the app's reverse-domain identifier, e.g. 'com.iizix.run.devel'. This name cannot be changed once the app has been published. This name is used to override the iOS app ID. This name can be null, in which case the default "app_id" is used instead.
 - app_id_windows- public final java.lang.String app_id_windows Specifies the app's reverse-domain identifier, e.g. 'com.iizix.run.devel'. This name cannot be changed once the app has been published. This name is used to override the Windows app ID. This name can be null, in which case the default "app_id" is used instead.
 - windows_publisher_id- public final java.lang.String windows_publisher_id The windows publisher ID as e.g. "CN=6920B79C-CBA3-4690-AFF5-2009140DBCE7".
 - windows_store_identity_name- public final java.lang.String windows_store_identity_name The Windows Store identity name, e.g. "NexumTechnologies.56143987FFAF6".
 
 - Constructor Detail- RuntimeBuilderSettings- public RuntimeBuilderSettings(RuntimeBuilderProps pc) The constructor.- Parameters:
- pc- The runtime builder properties container.
 
 
 - Method Detail- verify- public void verify(boolean isDesigner, boolean doCheckAll, java.io.File projectDir, java.util.Set<java.lang.String> textTableIDs, java.util.ArrayList<BuilderError> errors)Performs verification of the settings.- Parameters:
- isDesigner- Flag for Designer.
- doCheckAll- Final check-all verification to also check URL's etc.
- projectDir- The project directory (for Eclipse, for Remote Server it is null.
- textTableIDs- Text table IDs required, null for no checking.
- errors- The errors array to fill in.
 
 - getOutputDirectory- public java.io.File getOutputDirectory() Gets the output directory where to place the builds.- Returns:
- The directory, it might not to be present, but the parent directory is.
 
 - getLocalizedString- public java.lang.String getLocalizedString(PlainKString pks, java.lang.String languageCode) Resolves a PlainKString that refers to the text table with the specified language code.- Parameters:
- pks- The plain KString.
- languageCode- The language code supported by the application, null for default English or if language code is not found.
- Returns:
- The localized String.Note: If the text fails to resolve, a severe error is logged, and the original raw string is returned instead. 
 
 - getAssetsSubdirectory- public java.io.File getAssetsSubdirectory() Gets the projects subdirectory in the Assets folder.- Returns:
- The directory, or null if not verified.
 
 - hasAndroidKeyStore- public boolean hasAndroidKeyStore(boolean isRelease) Checks for presence of Android keystore of debug or release type.- Parameters:
- isRelease- true for release, false for debug.
- Returns:
- true if created, false otherwise.
 
 - hasAndroidKeyStore- public static boolean hasAndroidKeyStore(RuntimeBuilderProps props, boolean isRelease) Checks for presence of Android keystore of debug or release type.- Parameters:
- props- The runtime builder properties.
- isRelease- true for release, false for debug.
- Returns:
- true if created, false otherwise.
 
 - getAndroidDebugAlias- public static java.lang.String getAndroidDebugAlias() Gets the Android debug code alias in the keystore ("androiddebugkey").- Returns:
- The alias "androiddebugkey".
 
 - getAndroidReleaseAlias- public static java.lang.String getAndroidReleaseAlias() Gets the Android release code alias in the keystore ("iizi").- Returns:
- The alias "iizi".
 
 - getAndroidDebugPassword- public static java.lang.String getAndroidDebugPassword() Gets the Android debug code signing password.- Returns:
- The password "android".
 
 - getAndroidReleasePassword- public java.lang.String getAndroidReleasePassword() Gets the Android release code signing password.- Returns:
- The password, null if no code signing is configured.
 
 - getAndroidReleasePassword- public static java.lang.String getAndroidReleasePassword(RuntimeBuilderProps props) Gets the Android release code signing password.- Parameters:
- props- The runtime builder properties.
- Returns:
- The password, null if no code signing is configured.
 
 - getAndroidDebugOwner- public static javax.security.auth.x500.X500Principal getAndroidDebugOwner() Gets the Android Debug owner for signing apps.- Returns:
- The Android owner.
 
 - getAndroidCertificateOwner- public javax.security.auth.x500.X500Principal getAndroidCertificateOwner() throws java.lang.ExceptionGets the Android app owner used when signing release APK's, an X.500 principal used for certificate creation.- Returns:
- The principal.
- Throws:
- java.lang.Exception- For errors.
 
 - generateAndroidDebugKeyStore- public java.io.File generateAndroidDebugKeyStore(java.io.File assetsDir) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.lang.IllegalStateException, java.security.SignatureException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException, PropExceptionGenerates the Android debug key store and saves it to the properties.- Parameters:
- assetsDir- The directory where the project Assets are located, to write the android-debug.p12 file into. If null, no such PKCS#12 file is created.
- Returns:
- "The keystore.p12" file name written, null for none.
- Throws:
- java.io.IOException- For I/O errors.
- java.security.cert.CertificateException- If any of the certificates in the keystore could not be saved.
- java.security.NoSuchAlgorithmException- If the algorithm used to check the integrity of the keystore cannot be found.
- java.security.KeyStoreException- If no Provider supports a KeyStoreSpi implementation for the PKCS#12 type.
- java.security.SignatureException- If the signature is in error.
- java.lang.IllegalStateException- If the state is invalid to generate a keystore.
- java.security.NoSuchProviderException- If no provider for the certificate is available.
- java.security.InvalidKeyException- If the key in invalid.
- PropException- If there is a Property Exception.
 
 - generateAndroidDebugKeyStore- public static java.io.File generateAndroidDebugKeyStore(RuntimeBuilderProps props, java.io.File assetsDir) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.lang.IllegalStateException, java.security.SignatureException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException, PropException Generates the Android debug key store and saves it to the properties.- Parameters:
- props- The runtime builder properties.
- assetsDir- The directory where the project Assets are located, to write the android-debug.p12 file into. If null, no such PKCS#12 file is created.
- Returns:
- "The keystore.p12" file name written, null for none.
- Throws:
- java.io.IOException- For I/O errors.
- java.security.cert.CertificateException- If any of the certificates in the keystore could not be saved.
- java.security.NoSuchAlgorithmException- If the algorithm used to check the integrity of the keystore cannot be found.
- java.security.KeyStoreException- If no Provider supports a KeyStoreSpi implementation for the PKCS#12 type.
- java.security.SignatureException- If the signature is in error.
- java.lang.IllegalStateException- If the state is invalid to generate a keystore.
- java.security.NoSuchProviderException- If no provider for the certificate is available.
- java.security.InvalidKeyException- If the key in invalid.
- PropException- If there is a Property Exception.
 
 - generateAndroidReleaseKeyStore- public java.io.File generateAndroidReleaseKeyStore(javax.security.auth.x500.X500Principal owner, java.io.File assetsDir) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.lang.IllegalStateException, java.security.SignatureException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException, PropExceptionGenerates the Android release key store and saves it to the properties.- Parameters:
- owner- The certificate owner.
- assetsDir- The directory where the project Assets are located, to write the android-release.p12 file into. If null, no such PKCS#12 file is created.
- Returns:
- "The keystore.p12" file name written, null for none.
- Throws:
- java.io.IOException- For I/O errors.
- java.security.cert.CertificateException- If any of the certificates in the keystore could not be saved.
- java.security.NoSuchAlgorithmException- If the algorithm used to check the integrity of the keystore cannot be found.
- java.security.KeyStoreException- If no Provider supports a KeyStoreSpi implementation for the PKCS#12 type.
- java.security.SignatureException- If the signature is in error.
- java.lang.IllegalStateException- If the state is invalid to generate a keystore.
- java.security.NoSuchProviderException- If no provider for the certificate is available.
- java.security.InvalidKeyException- If the key in invalid.
- PropException- If there is a Property Exception.
 
 - generateAndroidReleaseKeyStore- public static java.io.File generateAndroidReleaseKeyStore(RuntimeBuilderProps props, javax.security.auth.x500.X500Principal owner, java.io.File assetsDir) throws java.security.InvalidKeyException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException, java.lang.IllegalStateException, java.security.SignatureException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException, PropException Generates the Android release key store and saves it to the properties.- Parameters:
- props- The runtime builder properties.
- owner- The certificate owner.
- assetsDir- The directory where the project Assets are located, to write the android-release.p12 file into. If null, no such PKCS#12 file is created.
- Returns:
- "The keystore.p12" file name written, null for none.
- Throws:
- java.io.IOException- For I/O errors.
- java.security.cert.CertificateException- If any of the certificates in the keystore could not be saved.
- java.security.NoSuchAlgorithmException- If the algorithm used to check the integrity of the keystore cannot be found.
- java.security.KeyStoreException- If no Provider supports a KeyStoreSpi implementation for the PKCS#12 type.
- java.security.SignatureException- If the signature is in error.
- java.lang.IllegalStateException- If the state is invalid to generate a keystore.
- java.security.NoSuchProviderException- If no provider for the certificate is available.
- java.security.InvalidKeyException- If the key in invalid.
- PropException- If there is a Property Exception.
 
 - writeAndroidKeyStore- public java.lang.String writeAndroidKeyStore(java.io.File file, boolean isRelease) throws NotFoundException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException, java.io.IOExceptionWrites an Android KeyStore to file.- Parameters:
- file- Destination file for a PKCS#12 KeyStore (i.e. "file-name.p12").
- isRelease- The release KeyStore when true, debug when false.
- Returns:
- The password for the keystore.
- Throws:
- NotFoundException- If properties are not found.
- java.io.IOException- For I/O errors.
- java.security.cert.CertificateException- If any of the certificates in the keystore could not be saved.
- java.security.NoSuchAlgorithmException- If the algorithm used to check the integrity of the keystore cannot be found.
- java.security.KeyStoreException- If no Provider supports a KeyStoreSpi implementation for the PKCS#12 type.
 
 - writeAndroidKeyStore- public static java.lang.String writeAndroidKeyStore(RuntimeBuilderProps props, java.io.File file, boolean isRelease) throws NotFoundException, java.security.KeyStoreException, java.security.NoSuchAlgorithmException, java.security.cert.CertificateException, java.io.IOException Writes an Android KeyStore to file.- Parameters:
- props- The runtime builder properties.
- file- Destination file for a PKCS#12 KeyStore (i.e. "file-name.p12").
- isRelease- The release KeyStore when true, debug when false.
- Returns:
- The password for the keystore.
- Throws:
- NotFoundException- If properties are not found.
- java.io.IOException- For I/O errors.
- java.security.cert.CertificateException- If any of the certificates in the keystore could not be saved.
- java.security.NoSuchAlgorithmException- If the algorithm used to check the integrity of the keystore cannot be found.
- java.security.KeyStoreException- If no Provider supports a KeyStoreSpi implementation for the PKCS#12 type.
 
 - getTextTable- public TextTable getTextTable() Gets the text table.- Returns:
- The text table used, null for none.
 
 - getDerivedTextTables- public TextTable[] getDerivedTextTables() Gets all tables in all open projects that derives from this text table.- In runtime, this method returns an empty array! - Returns:
- An array of all derived tables, in runtime always empty, only defined in the Designer!
 
 - isInternalBuild- public boolean isInternalBuild() Checks for internal build.- Returns:
- true if internal build, false for external.