Atlas — Supported user interface features for mobile applications |
Build applications for use on mobile devices, including tablets, phones, and portable media players, using the Pega-Mobile RuleSet. Many of the user interface features available in an application built to run through a web browser are also supported in applications built for use on mobile devices. For features not yet optimized for use on mobile devices, create specialized mobile versions of rules, and save them into a RuleSet with the same name and version, but with a _mobile suffix. For more information, see PDN article How to create a specialized RuleSet for mobile devices.
Additional features supported in a mobile application are detailed in the sections below.
The Pega-MobileGallery RuleSet is similar to other PRPC galleries that showcase application features and configurations. This gallery displays working examples of Pega Mobile's runtime and design time capabilities. See PDN article View Pega Mobile features and configuration in the Mobile Gallery.
A clipboard view is also available, which is similar to the Designer Studio clipboard tool. The mobile clipboard lets you view property values, rules, and more in your application. Access the clipboard while using the Apple Safari or Google Chrome emulator on your desktop. See PDN article Inspect your Pega Mobile application with the Mobile Clipboard tool.
Pega Mobile 3.3 introduced the Mobile Mashup and Mobile SnapStart features, which allow for the creation of URLs that can embed Pega Mobile functionality inside third-party mobile applications. See PDN article Pega Mobile Mashup and Pega Mobile SnapStart.
Additionally, you can customize the appearance of Pega Mobile using CSS. See PDN article Configuring the color scheme of your Pega Mobile application.
If your application runs on mobile devices and on desktop browsers, you can create sections and harnesses that contain the features supported by the Pega-Mobile RuleSet without affecting the browser copy of the rules. To learn about creating and referencing harnesses and sections for mobile devices, consult the PDN.
You can use circumstancing on a section rule to create a mobile-compliant version of the section. Use Save As to save the section rule, and enter the property pyPortal.pyDesktopSubType and value Mobile
. On the Pages & Classes tab, add the pyPortal page and class Data-Portal. You can ignore the performance warning message.
You can also circumstance your entire UI experience based on the device type. For the circumstance, enter property pxRequestor.pxDeviceType and value phone
or tablet
. When you log in using this portal, the application determines the User Agent, and displays the portal, sections, harnesses, and flow actions with a user interface for the specified device type. You can circumstance individual harness and section rules in the same manner.
Specifically, the RequestorInitialize activity opens the portal as specified and initializes the pyPortal page. The activity populates pxDeviceType with the result of the pyGetDeviceType decision tree. You can save pyGetDeviceTypeinto your application RuleSet and override the conditions that determine the device type. However, do not remove existing entries in the pyGetDeviceType rule. Instead, create your entries on top of entries in the table. As delivered to Pega-Desktop, pyGetDeviceType uses the pyGetUserAgent function rule to determine the device type.
Always
and Other Conditions
. However, note that unlike desktop applications, Smart Layouts in mobile applications show or hide the label based on the Visible When setting of the field; the Visible When on the label is ignored.When the Pega-Mobile RuleSet is present for your application, harnesses have an additional section, Mobile, on the Display Options tab. The Supplemental Toolbar Navigation Rule field lets you specify a navigation rule that supplements the contents of the toolbar display. See Harness Form — Completing the Display Options tab.
If you save your Confirm harness to a different name as you create your mobile application, be sure to update the Harness field under the Action tab on flow actions to reflect the new harness name.
Add titles to the harness using the header cells in a container. In the Cell Property Value field, you can specify a property reference or enter a text string for the title. Titles entered in the Container property panel are unsupported in mobile applications.
The following layouts are supported in mobile applications.
Single and Double Smart Layouts are no longer available for use starting in Pega 7.1.
Multi-column, multi-row Free Form layouts are supported with all mobile controls.
Dynamic layouts can be created using the form in the Mobile UI "Layouts" gallery. Using a dynamic layout will automatically adjust items on a mobile screen to best fit its specific size.
Repeating grids are supported with some considerations.
Edit Mode | Can Add * | Can Edit | Select on single tap | Can delete using long tap menu ** | Edit method | Supported in main content panel | Supported in overlay | ShowDetails Checkbox |
Read Only | N/A | X | X | Supply a flow action | ||||
Read/Write | X | X | N/A | X | ||||
Modal Dialog | X | X | X | X | Modal | X | ||
Expand Pane | X | X | X | X | Main content panel via slide gesture | X | ||
Embedded Pane | X | X | X | X | Main content panel via slide gesture | X | ||
Inline | X | X | X |
* if Add button is present in design time.
** if Delete button is present in design time.
Note that when an end user selects an item on a Repeating Grid, pySelected is set to "true' so that the selected item can be used as part of additional processing.
Read Only
, Modal Dialog
, Embedded Pane
, and Expand Pane
are fully supported. On a mobile device:
Modal Dialog
launches in the main content panel.Embedded Pane
and Expand Pane
slide over to fill the content panel.Tabbed layouts are supported using a carousel effect, identified by the 3 dots at the bottom of the screen. Switch between tabs using a swiping motion.The tabbed layout must be the only layout in the section. Do not add other layouts.
Configure controls for your mobile application carefully. Remember that features of controls may be configured directly on the control rule, on the cell property panel in the section, or on a property. If you configure the control rule directly, you affect all instances of the control. If you configure the control on the cell property, you affect only this instance of the control.
As a best practice, ensure that all cells have a control in the cell property panel. If you configure the property to have a control, check to make certain the control is present when you use the property in a cell. If the Control field of the cell property is blank at run-time, the application looks to the property to determine the control configuration.
The decision table pzMobileControlMapping maps commonly used controls to mobile versions of those controls in order to facilitate the operation of an existing PRPC desktop version of your application. Map your custom controls in pyCustomMobileControlMapping.
In the Basics section of rules for controls in a mobile application, the Value field Value of associated property
is supported, if present. Tooltips are not supported for any controls in a mobile application.
Following are some of the more commonly used controls.
pxCheckbox |
Both Editable and Read-Only are supported. Format: Type — |
pxCurrency |
Formats a number as a currency using the default locale. Options: Placeholder is supported. Format: Decimal Places is supported. Scale Negative Format is supported. Symbol — |
pxDateTime |
The TimeOfDay property type is not currently supported in a mobile application. See Adding a Calendar control. When adding a Date time text input control to a layout, the native browser date and time pickers are enabled by checking the Browser native support on mobile check box. All other configuration parameters on the control are currently unsupported. |
DynamicSelect |
Supports the Dynamic Select control. On Blur and OnChange events are supported. |
PromptSelect |
Presents a drop-down list of values determined by the Table Type areas of the General tab of a property rule. On Blur and OnChange events are supported. |
pxButton |
Format - Label - Enter text or a field value with brief text to appear on the button. The supported subset of Behaviors and Actions are described in the table below. Note that the Display action Refresh Section is supported only with Target |
pxLink |
Format - Label - Enter text or a field value with brief text to appear on the link. The supported subset of Behaviors and Actions are described in the table below. Note that the Display action Refresh Section is supported only with Target |
pxTextArea |
Presents the property as an HTML text area, which provides multi-line input or display. The Text Area control uses this rule. To place the control in a section or harness, drag and drop the text area icon () from the Basics control group onto a layout cell. See Adding a Text Area control. |
pxTextInput |
Presents the property as an HTML text box in edit mode. Spell checking is enabled by default. The Text Input control uses this rule. To place the control in a section or harness, drag and drop the text input icon () from the Basics control group onto a layout cell. See Adding a Text Input control. |
pxAutoComplete |
Can be set on a cell or property. Supported fields include Display Fields, Maximum Results, Minimum Search Characters, and Only match the start of string. Can be read only or editable. |
pxSignatureCapture |
Used to capture a user signature on either a desktop or a mobile application. This function is typically performed on a mobile device though a touch interaction, but this can also be done on a desktop app using a mouse. Once captured, the signature is added to the work item as an image attachment. To place the control in a section or harness, drag and drop the Signature Capture icon () from the Advanced control group onto a layout cell. See Adding a Signature Capture control. |
pxAddressMap |
Used to map addresses in Google Maps from within either a desktop or a mobile application. To place the control in a section or harness, drag and drop the Address Map icon () from the Advanced control group onto a layout cell. See Adding an Address Map control. |
The mobile versions of each control are HTML-sourced to support their use on mobile devices. Do not edit these versions.
As you create your application, do not use the mobile version of a control. The decision table pzMobileControlMapping handles the mapping of standard PRPC controls to mobile versions. The following table lists the mobile versions of supported controls. Map your custom controls in pyCustomMobileControlMapping.
The following table describes the action categories and action names that are supported for use in a mobile application. You may configure multiple actions on a button or link control.
Action Category | Mobile Action Name |
---|---|
Process Work |
Show Flow Location Add New Work (from New or Create harness) Finish Assignment (from Perform harness) Cancel Save |
Get Work |
Create Work Open Assignment Open Work by Handle |
Display |
Refresh Section |
Launch |
Harness - Target value of Local Action - Target value of Modal Dialog or Overlay are supported. Using Page is supported. Scan Barcode/QR Code - See PDN article How to use the mobile barcode and QR code scanner. |
Advanced |
Run Activity Run Script Run Data Transform |
Atlas — Standard controls without parameters
Atlas — Standard controls with parameters |