Some devices don't have keyboard with full type, and the Android OS uses
the KeyCharacterMap.BUILT_IN_KEYBOARD (value is 0) as the fallback keyboard
type. If the phone/tablet doesn't have built in keyboard, the returned
KeyCharacterMap is empty, and it will causes the ArrayOutOfBounds exception
when initializing keyboard mapping. The problem can be reproduced on the official
emulator. So this CL adds KeyboardCharacterMap.VIRTUAL_KEYBOARD as
the fallback keyboard type, if the phone/tablet doesn't have FULL keyboard.
Some devices don't have keyboard with full type, and the Android OS uses the
KeyCharacterMap.BUILT_IN_KEYBOARD
(value is 0) as the fallback keyboard type. If the phone/tablet doesn't have built in keyboard, the returnedKeyCharacterMap
is empty, and it will causes theArrayOutOfBounds
exception when initializing keyboard mapping. The problem can be reproduced on the official emulator. So this CL addsKeyboardCharacterMap.VIRTUAL_KEYBOARD
as the fallback keyboard type, if the phone/tablet doesn't haveFULL
keyboard.