webMethods Mobile SuiteWeb Help
About this Documentation
Document Conventions
Online Information and Support
Data Protection
webMethods Mobile Development Help
About this Guide
Introduction to Mobile Development
About Mobile Development
Other Resources for Mobile Development
Mobile Development Terminology
Introduction to the Mobile Development User Interface
Mobile Development Perspective
Opening the Mobile Development Perspective
Displaying a Mobile Project in the Outline Editor
Displaying a Window, View, or Dialog in the Outline Editor
Modifying How Information is Displayed in the Outline Editor
Adding Objects to a Mobile Project
Using the Palette to Add Objects to the Mobile Project
Removing Objects from a Mobile Project
Setting Properties in the Outline Editor
Using Mobile Designer Ant Targets
Mobile Development Preferences
Mobile Development Process Overview
Creating a Mobile Project
Creating a New Mobile Project
Defining Resources for a Mobile Project
Using the UniversalResHandler
Adding Graphical Assets
Customizing a Library Icon
Creating a Scalable Vector Graphic
Importing Icons
Importing Images for App Icons and Launch Screens
Using Graphical Assets
Adding Static Web Resources
Using Custom Android Resources
Configuring the Orientations Setting for the Application
Configuring Supported Languages
Setting the Default Language for the Project
Specifying Values for Non-Default Language Text Resources
Compiling Resources
Generating Sources for a Mobile Project
Java Sources that Mobile Development Generates
Text Resources that Mobile Development Creates for a Mobile Project
Migrating Mobile Projects
Importing Mobile Projects
Solving Compile Issues
Migrating App Icons and Launch Screens
Migrating Other Icons
Using Sample Projects
Importing the Mobile Designer Sample Project
Using the Cocktail App Example
Adding Services to a Mobile Project
Adding RESTful Services
Adding RESTful IS Services
Adding Virtual Services
Adding the SyncComponent Object
Adding Task Client Services
Adding ARIS Services
Adding Web Services
Adding a Data Model to a Mobile Project
About Data Modeling
Adding a Data Model
Building the User Interface for a Mobile Application
About Building the User Interface
Basic Structure of the Application User Interface
Defining Panes for the Application Window
Adding Views to the Application’s User Interface
Renaming a View
Adding Content to a View
Programmatically Populating a ListView
Using a Content Provider to Populate a ListView
Using a Content Adapter to Populate a ListView
Responding to User-Initiated Events
Defining Dialogs
Using Colors, Sizes, Styles and Themes
Using Colors
Using Sizes
Using Font Sizes
Using Styles
Using ApplicationStyle to Define Android Styles and Themes
Using Templates to Define Custom Objects for a Mobile Project
Creating a Template for a Custom Object
Using a Template in the Mobile Application User Interface
Predefined Templates
Using Constraint Layout
Creating a Constraint Layout Template
Creating a Constraint Layout Template When Creating a View
Configuring a Constraint Layout Template
Deleting a Constraint Layout Template
Creating Business Logic for a Mobile Application
About Adding Application Logic
About the TransitionStackController
Logic for a View
Logic for a Dialog
Logic for a Method Name Property
Logic to Programmatically Set a Property Value at Run Time
Logic to Transition to Another View
Common Methods to Override in the Generated Code for the Application
Common Methods to Override in the Generated Code for a View
Common Methods to Override in the Generated Code for a Template
Using the Sync Component Object
Testing, Building, and Installing a Mobile Application
Validating the Application Model
Testing a Mobile Project with Phoney
Specifying a Run Configuration for Local Testing
Building a Mobile Project
Running a Local Multi-Build
Specifying a Run Configuration for a Local Multi-Build
Running a Jenkins Build
Specifying a Run Configuration for a Jenkins Build
Installing an Application on Android Using the Emulator
Installing an Application on iOS Using the Simulator
Managing Mobile Applications and Projects
Renaming a Mobile Project
Renaming the Application
Changing the Package Name
Managing Personal Data
About Personal Data
Modifying Personal Data in Mobile Development Preferences
Modifying Personal Data on a Jenkins Server
Code Snippets
Using the DateFormatter and DateTransformer
Detecting the Current Platform
Using the Context Key Store to Store and Retrieve Application-wide Settings
Encoding and Decoding Images with Base64
Configuring a Session Object with Credentials
Creating Your Own Operation
Chaining Multiple Operations
Using Multipart Requests
Doing Error Handling for Operations
Getting the Current GPS Position and Translating it into a Human-readable Location
Downloading an Image from a Remote Host
Using a Java Class to Communicate with the Natively Injected Code
Configuring Your Application to Receive Push Notifications
Configuring Mobile Projects to Work With Firebase Cloud Messaging on Android
Configuring a Content Adapter to Use Multiple Templates
Configuring the SearchNavButton Object
Configuring the SwipeButton Object
Configuring the SwipeRemove Object
User Interface Object Reference
User Interface Objects
Application Node Properties
Objects to Use for Windows
Window Properties
Objects to Use for Panes
HorizontalSplitter Properties
PaneConfiguration Properties
PaneDefinition Properties
VerticalSplitter Properties
Objects to Use for Views
ListView Properties
NavView Properties
TabView Properties
View and SideView Properties
WebView Properties
Objects to Use for the Layout of the User Interface
Group Properties
Separator Properties
Spacer Properties
Objects to Use for Dialogs
AlertDialog Properties
DialogButton Properties
PopupMenu Properties
Objects to Use for Tables
DynamicTablecell Properties
DynamicTablerow Properties
Table Properties
TableButton Properties
Tablecell Properties
Tablerow Properties
Objects to Use for User Interface Controls
Button Properties
ButtonGroup Properties
CheckBox Properties
Container Properties
DateEntry Properties
DropDownListEntry Properties
DynamicDisplayObject Properties
DynamicDisplayObjectArray Properties
DynamicDropdownlistEntryItems Properties
EndlessScrolling Properties
Entry Properties
FloatingEntry Properties
Image Properties
NavButton Properties
Pagination Properties
ProgressAnim Properties
RadioButton Properties
SearchEntry Properties
SearchNavButton Properties
StringDropdownlistEntry Properties
SwipeButton Properties
Tab Properties
Textfield Properties
WebViewElement Properties
Objects to Use for Content Providers or Content Adapters
ContentAdapter Properties
ContentProvider Properties
CustomDataComparator Properties
DataBinding Properties
DataTransformer Properties
DynamicDataSource Properties
EntityDataSource Properties
JsonDataExpression Properties
RESTDataProvider Properties
RESTDataSource Properties
TemplateAssignment Properties
TemplateDataBinding Properties
Objects to Use for Event Listeners
RowSelectionListener Properties
StringValidator Properties
SwipeListener Properties
Objects to Use for Event Actions
Back Properties
ChangePaneConfiguration Properties
Delegate Properties
OpenDialog Properties
ToggleVisibility Properties
Transition Properties
Objects to Use for Templates
ListViewElement Properties
Template Properties
TemplateReference Properties
Services Object Reference
Objects to Use for RESTful Services
Resources Properties
Resource Properties
Method Properties
Request Properties
Parameter Properties
Response Properties
Objects to Use for Mobile Support - Offline Synchronization
SyncComponent Properties
Using webMethods Mobile Designer
About this Guide
Getting Started
About Mobile Designer
webMethods Mobile Designer Overview
Mobile Designer Build-Time Component
Mobile Designer Cross Compiler and Run-Time Classes
Parameter-Driven Projects
Configuring Mobile Designer
About Configuring Mobile Designer
Updating the sdk.properties File to Configure Mobile Designer
Mobile Designer Configuration Properties (sdk.properties)
JAD and Manifest Files
Java Compiler Check
KZip Property
7Zip Property
Localization Property
Proguard Obfuscator Settings
Project Build Settings
Proxy Settings
Platform-Specific Properties
Environment Variable for Mobile Designer
Preparing Linux Systems for Mobile Designer
Setting Up Platforms
Supported SDK Versions
SDK Versions that Mobile Designer Supports
Setting Up the Android Platform
About Setting Up the Android Platform
Installing the Android Studio IDE
Configuring Mobile Designer for the Android SDK
Setting Up an Android Virtual Device (Emulator)
Starting the Android Virtual Device (Emulator)
Using the Android Emulator with a Proxy Server
Setting Up the iOS Platform
About Setting Up the iOS Platform
Installing the Apple Xcode IDE
About Signing iOS Applications
Using an Existing Signing Environment
Importing the Signing Environment from Another Macintosh
Creating a New Signing Environment
Configuring Mobile Designer for the iOS Platform
Creating Mobile Application Projects
Setting Up a Mobile Application Project
About Mobile Application Projects
Sample Project Provided with Mobile Designer
NativeUI Demo New
Coding a Mobile Application
Migrating to the New Run-Time Classes
Enabling the New Run-Time Classes
Refactoring MyApplication
Refactoring MyCanvas
Refactoring Access to Handlers
Using CameraHandler in the New Run Time
Using the ImagePicker Class
Capturing Barcodes Using ImagePicker
Live Barcode Scanning
Binding MyCanvas with MyApplication
Replacing Deprecated or Removed Methods and Fields with New API
Additional Steps
Mobile Designer-Provided Run-Time Classes
Application and Parameter Classes
Run-Time Comms Classes
Run-Time Database Classes
Run-Time Media Classes
Run-Time Serializer Class
Run-Time Storage Classes
Run-Time Utility Classes
Image Caching
Managing the Image Cache
Disabling Image Caching for the Whole Application
Copying an Image for Drawing
Asset Catalogs
Creating Asset Catalogs for an Application
Creating Asset Catalogs using Mobile Development
Creating iOS Asset Catalogs Manually with Xcode
Creating Android Asset Catalogs Manually
Importing an Asset Catalog Using the Resource Handler
Loading an Image from an Asset Catalog
Android Auto-scaling
Mobile Designer Logging API
DateFormat API
File Management API
Connectivity Status API
Querying the Current Connection State
Registering for Connection Status Notifications
Permissions API
Determining Existing Permissions
Requesting New Permissions
Registering Applications for Data Sharing (custom URIs and MIME-types)
Defining Data Sharing for an Application
Handling Data Sharing Events
Supported MIME-types
Credential and Isolated Storage API
Security Considerations
Orientation API
Location API
Location Updates in Background Mode
Geocoding
Native Authentication API
Linking to External (3rd Party) Native Libraries/Frameworks
iOS
Android
Using System.getProperty to Obtain Device Information
Creating the User Interface
Defining Resources for a Mobile Application Project
About the Resource Handler
Coding the Resource Handler
Using Resource Blocks and Resource Packs
Storing Resource Files for the Project
Launch Screens for Applications
Setting Project Properties for the Resource Handler
Managing Memory for Your Resource Handler and Resources
Accessing Resources in Your Application Code
Compiling Resources Using the +Run-Reshandler Ant Target
Setting Properties and Parameters for a Mobile Application Project
About Properties and Parameters
Where You Set Properties
Where You Set System Properties
Project Properties
Setting Project Properties
Where You Define Parameters
Setting Parameters in the _defaults_.xml and Target Device Files
Setting Parameters in the Resource Handler Code
Using Parameters in Your Application Code
Adding Devices to a Mobile Application Project
Devices that a Mobile Application Supports
Adding a Device to a Project
Building Mobile Application Projects Using Jenkins
Getting Started
About the Mobile Suite Jenkins Plugin
Jenkins Terminology
Requirements
Installing and Configuring Jenkins
Installing Jenkins
Single-Computer Setup for iOS
Creating the Default Keychain for the Jenkins User
Configuring Your Server After Installation
Adding an Ant Installation Through Global Tools
Managing Signing Keys
Adding an Android Keystore
Exporting iOS Certificates and Private Keys to .p12 Files
Adding an iOS .p12 File
Uploading Provisioning Profiles
Advanced Settings
About
New Build Steps Provided by the Mobile Suite Plugin
Creating New Build Jobs
Using the Jenkins-Create-Job Ant Task
Building Mobile Applications From Source Control
Using the Jenkins-Multi-Build Ant Task
Building and Compiling Mobile Application Projects Using Ant Targets
Build Process Overview
Build Ant Target Summary
Steps in the Multi-Build Process
Building Mobile Applications
About Building a Mobile Application Project
Before You Can Build a Mobile Application Project
Setting Properties to Build for an iOS Device
Setting Properties to Build for an Android Device
Building a Project for Multiple Target Devices
Building a Project for the Last Target Devices
Building a Project from the Command Line
Using Native Tools to Create the Final Binary
Generating Javadocs for a Project
Customizing the Build Process
About Customizing the Build Process
Creating Custom Ant Scripts to Run at Predefined Hook Points
Hook Point Reference
Creating Patch Files to Apply to the Cross-Compiled Code
Creating a Patch
Installing and Testing Mobile Applications
Using Phoney for Debugging Your Mobile Application
About Using Phoney to Debug Mobile Applications
Phoney Ant Target Summary
Steps Performed for Phoney Ant Targets
Running Phoney from the Command Line
Installing Certificates on Phoney
Using Phoney to Monitor an Application’s Memory and Thread Usage
Activating Devices
About Activating Devices
Activate Devices Ant Summary
Steps Performed to Activate Handsets
Activating a Device
Installing Applications on Devices
About Installing Applications on Devices
Installing Applications on Android Devices
Installing an APK File to an Emulated or Physical Device Using the Android Debug Bridge
Installing an APK File to an Emulated or Physical Device Using the Built-in Emulator of Mobile Development
Installing Applications on iOS Devices
Installing to a Simulated or Physical Device Using the Apple Xcode IDE
Installing an Ad-Hoc Build to a Physical Device Using iTunes
Installing Custom SSL Certificates on Devices
Installing Certificates on Android 4.0 and Later Physical Devices
Installing Certificates on iOS Physical Devices
Project Properties Reference
Android Project Properties
Build Results Properties
Build Script Properties
Cross-Compiler Properties
Debugging
Extra Libraries and Custom Code
Java Classes
Optimization
Screen and Display Handling
Threading
Android
iOS
Cross-Product Integration Properties
Device-Specific Properties
Hook Point Properties
Multi-Build Selection Properties
Phoney Properties
Project Language Properties
Resource Handler Properties
Run-Time Classes Properties
Run-Time Code Compilation Properties
Ant Target Summary
Ant Target Summary
webMethods Mobile Designer Native User Interface Reference
About this Guide
Mobile Designer Native User Interface
About the Native User Interface (NativeUI) Library
Look-and-Feel When Using the NativeUI Library
About Using the NativeUI Library
Mobile Application Design
Hierarchy of NativeUI Objects for a User Interface
Setting and Querying NativeUI Object Attributes
Handling Events Generated by User Actions
Transitioning Between Windows and Views
Defining the Layout of Objects in the User Interface
Controlling the Inner Padding of Parent Objects
Positioning Elements in a Parent Object
Sizing Child Elements
Controlling the Vertical Spacing Between Child Elements
Controlling the Horizontal Alignment of Elements
Using Tables to Control the Layout of Elements
Managing Object Focus
Background Colors and Images
Adding Support for Right-to-Left Languages
Using Multiple Panes for Tablet User Interfaces
Managing the Layout of Panes
Designing Applications to Run on Both Tablets and Smaller Devices
Determining the Device Size at Run Time
Adding Panes to a Window
When to Use Views or Panes
JavaScript Bridge
Maintaining Good Security
Sending a Message to JavaScript from Java
Evaluating an Arbitrary Chunk of JavaScript Code
Sending a Message to Java from JavaScript
Using Tabbed Views
Integration in Mobile Designer
Using List Views and Elements
Swiping Behavior
Using Edit Mode in List Views
Using Element Identifiers
Native User Interface (NativeUI) Objects
About the NativeUI Objects
nUIAlertDialog
nUIButtonElement
nUICheckboxButton
nUIContainerElement
nUIDateEntry
nUIDialogWindow
nUIDisplayObject
nUIDropdownlistEntry
nUIElementDisplay
nUIEntryElement
nUIFloatingEntry
nUIImageElement
nUIListElement
nUIListView
nUINavbuttonElement
nUINavView
nUIObject
nUIPopupMenuBuilder
nUIProgressanimElement
nUIRadioCheckbox
nUISearchEntry
nUISearchNavButton
nUISeparatorElement
nUISpacerElement
nUISwitchButton
nUITableButton
nUITablecellElement
nUITableElement
nUITablerowElement
nUITabView
nUITextfieldElement
nUITimerObject
nUIViewDisplay
nUIWebView
nUIWebviewCallBack
nUIWebviewElement
nUIWindowDisplay
Copyright
webMethods Mobile SuiteWeb Help
Copyright