Make your mobile app more accessible for your international audiences by
localizing the UI text for specific countries and regions.
For example, uPlus bank plans to open a new company branch in Spain. To ensure that
employees can efficiently submit local expenses in their native language, uPlus bank
translates the UI labels and messages of their Pega app
into Spanish and uploads the compressed localization package to Pega Platform.
Note: The UI labels and messages that you translate as part of the
localization package are applied based on the locale of the mobile device. The remaining
mobile UI elements (such as navigation bar labels, list titles, and tabs) and elements
of the web UI are localized based on the operator's locale.
Configure localization in your offline-enabled mobile app to give users a
consistent experience regardless of network connection status, and enable them to change
languages within the app at run time without losing data.
For example, when
surveying individuals who speak different languages, survey takers can easily switch
languages by selecting a language option in the language list of the offline-enabled
app.
Before you begin:
Define the languages that your users speak and find out which language packs are
in your system. To acquire language packs, contact Global Client Support.
By default, when you configure offline localization for your app, the system packages
and makes available offline only those field values and paragraphs that the UI
directly references. The system also packages field values with parameters.
In the header of Dev Studio, click ConfigureMobileOffline configuration.
On the Offline configuration tab, in the
Configuration template section, click the template that
you want to use with your offline-enabled mobile app.
On the Resources tab, add the locales that you want to
support in offline mode:
In the Locales section, click Add
locale.
In the dialog box, enter the names of the locales that you want to add,
and then click Add.
Note: You can add multiple locales by adding the ISO codes for standard
languages and dialects. For example, you can add de_DE
for German, es_ES for Spanish, and
zh_CN for simplified Chinese.
In the upper-right corner of the offline configuration template form, click
Save.
Decide how you want users to switch locales at run time, and based on your
choice, add a button, a link, or a drop-down list to your section.
Optional: To package and make available offline field values that are no UI section
directly references, for example, the case status, or to package field values
that are dynamically resolved (through a property reference), add these field
values to the allow list by performing the following actions:
On the Allow list tab, click Add
field values.
Populate the auto-complete field with the field values that the UI does
not directly references but which you want to include in packaging, and
then click Add.For example: To package the ButtonLabel Add Item field
value, which is used in a section from the Work-
class, select the AddItem field value from the
list.
If multiple classes reference a field value, click Add field
values with multiple runtime class.
Populate the Field Value auto-complete field
with the field value.
In the Run time classes list, select the classes
that reference the field value, and then click
Add. For example: For the ActionPrompt Delete item field value,
which you access from the section in the Work- and
Work-Cover classes, make the following
entries:
@BASECLASS!PYACTIONPROMPT!DELETE
ITEM"Work-"
@BASECLASS!PYACTIONPROMPT!DELETE
ITEM"Work-Cover"
Result: The field values for all the locales that the template configuration
includes are downloaded to the client store when the mobile app performs a full
synchronization. For more information, see Data synchronization in offline mode.
Ensure that offline localization of your app works as intended by applying the
recommended debugging techniques.
Your application UI is not translated in offline mode
Resolving issues with offline localization
In Dev Studio, check the
configuration of the field value associated with the untranslated text
to determine whether the field value is dynamic (a property reference),
or static.
Note: Generally, field values associated with out-of-the-box controls or
that are directly referenced in the UI are static. Field values that
are referenced in other ways are dynamic.
Depending on how the system references the field value, ensure that you
have the correct configuration:
If the text is retrieved dynamically from a property reference,
ensure that the required field values are present in the
pyFieldValueWhitelistForOffline HTML
rule. For more information about adding dynamically referenced
field values to the allow list, see Configuring localization for offline-enabled mobile apps.
If the field value that is associated with the untranslated text
is static, check the section and the field value classes. Ensure
that the field value is present in the section class or in the
inheritance of the section class.
If steps 1 and 2 are ineffective, in the console, run the following
script to fetch the localization object, and then verify whether the
required field values are available in the correct class: