PropertyID.PhysicalKeyboardProfile Field
|
Administrative Settings: For devices managed by an organization,
administrative policies might require to configure the default layout
of an external physical keyboard in combination with
DESKTOP_MODE_POLICY
.
Namespace:
Com.Datalogic.Device.Configuration
Assembly: datalogic-xamarin-sdk (in datalogic-xamarin-sdk.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax
public const Int32 PhysicalKeyboardProfile = "value"
Public Const PhysicalKeyboardProfile As Int32 = "value"
Field Value
Type:
Int32
Remarks
Administrative Settings: For devices managed by an organization,
administrative policies might require to configure the default layout
of an external physical keyboard in combination with
DESKTOP_MODE_POLICY
.
This parameter allows to configure the layout for customizing settings
related to an external physical keyboard connected to the device.
This configuration takes effect only if the value of property
PHYSICAL_KEYBOARD_POLICY
is set to PhysicalKeyboardPolicy.CUSTOM
.
The class of the property is TextProperty
.
This property can be set with a String defining the keyboard layout identifier,
keyboard layout short identifier or the locale:
- keyboard layout identifier: it is the physical keyboard layout identifier
defined by "[package name]/[receiver name]/keyboard_layout_xxx".
For example:
- com.android.inputdevices/com.android.inputdevices.InputDeviceReceiver/keyboard_layout_polish
corresponds to Polish keyboard layout provided by Android.
- keyboard layout short identifier: it is the physical keyboard layout identifier
defined by "keyboard_layout_xxx". This is a shorter version of keyboard layout identifier,
obtained by omitting the "[package name]/[receiver name]/" prefix.
Since, an App could define a custom layout using the same short identifier keyboard_layout_xxx
already used by a pre-loaded layout, when the user sets this property using that value,
the pre-loaded keyboard layout will be used instead of the custom one.
So, in case of custom layouts, it is required to configure this property using the keyboard
layout identifier, instead of the shorter definition.
For example:
- keyboard_layout_german corresponds to German keyboard layout.
- keyboard_layout_french corresponds to French-France keyboard layout.
- keyboard_layout_french_ca corresponds to French-Canada keyboard layout.
- keyboard_layout_italian corresponds to Italian keyboard layout.
- invalid input: '<'/>locale: it is the locale identifier defined by
[language identifier with two lowercase letters]-[country code identifier with uppercase two letters],
where the country code is optional and it depends on the language.
For example:
- "de" or "de-DE" corresponds to German language.
- "de-CH" corresponds to German language in Switzerland.
- "fr" or "fr-FR" corresponds to French language in France.
- "fr-CA" corresponds to French keyboard layout in Canada.
- "it" corresponds to Italian language.
Locale is a compact representation, but it does not always match uniquely with a keyboard layout.
In particular:
- not all the Locales have a corresponding layout (e.g chinese). In this case, when the user
sets this property with one of those Locales, an error will be returned.
- not all the Locales have only one corresponding layout (e.g "en-US"). In this case, setting this property
when the user sets this property with one of those Locales, the most common layout for that
Locale will be chosen.
The following command can be used to retrieve the identifier for all the pre-loaded
and custom keyboard layouts available on the device:
adb shell dumpsys activity service com.datalogic.extension.uxsettings/.MainService
Below the list of pre-loaded physical keyboard layouts:
- keyboard_layout_english_uk
- keyboard_layout_english_us
- keyboard_layout_english_us_intl
- keyboard_layout_english_us_colemak
- keyboard_layout_english_us_dvorak
- keyboard_layout_english_us_workman
- keyboard_layout_german
- keyboard_layout_french
- keyboard_layout_french_ca
- keyboard_layout_russian
- keyboard_layout_russian_mac
- keyboard_layout_spanish
- keyboard_layout_swiss_french
- keyboard_layout_swiss_german
- keyboard_layout_belgian
- keyboard_layout_bulgarian
- keyboard_layout_bulgarian_phonetic
- keyboard_layout_italian
- keyboard_layout_danish
- keyboard_layout_norwegian
- keyboard_layout_swedish
- keyboard_layout_finnish
- keyboard_layout_croatian
- keyboard_layout_czech
- keyboard_layout_czech_qwerty
- keyboard_layout_estonian
- keyboard_layout_hungarian
- keyboard_layout_icelandic
- keyboard_layout_brazilian
- keyboard_layout_portuguese
- keyboard_layout_slovak
- keyboard_layout_slovenian
- keyboard_layout_turkish
- keyboard_layout_turkish_f invalid input: '<'/li
- keyboard_layout_ukrainian
- keyboard_layout_arabic
- keyboard_layout_greek
- keyboard_layout_hebrew
- keyboard_layout_lithuanian
- keyboard_layout_spanish_latin
- keyboard_layout_latvian
- keyboard_layout_persian
- keyboard_layout_azerbaijani
- keyboard_layout_polish
- keyboard_layout_belarusian
- keyboard_layout_mongolian
- keyboard_layout_georgian
- keyboard_layout_thai_kedmanee
- keyboard_layout_thai_pattachote
- keyboard_layout_romanian
- keyboard_layout_romanian_qwertz
- keyboard_layout_moldovan
- keyboard_layout_moldovan_qwertz
- keyboard_layout_serbian_cyrillic
- keyboard_layout_serbian_latin
- keyboard_layout_montenegrin_cyrillic
- keyboard_layout_montenegrin_latin
- keyboard_layout_english_india
- keyboard_layout_hindi_inscript
- keyboard_layout_japanese109
[Android Documentation]
See Also