android-unicode

NPM version build status Test coverage node version npm download

Android unicode UTF-7 input apk

Android Unicode Input Service Node.js wrapper.

Installment

$ npm i android-unicode --save

Use in ADB shell

Ref: https://github.com/senzhk/ADBKeyBoard

  1. Sending text input
$ adb shell am broadcast -a ADB_INPUT_TEXT --es msg '你好Hello'
$ adb shell am broadcast -a ADB_INPUT_TEXT --es format base64 --es msg 'K1RpMWxody1jbg=='

K1RpMWxody1jbg== is encode with UTF-7 and Base64

Use python code like this.

import base64

s = u'你好''
print base64.b64encode(s.encode("utf-7"))
  1. Sending keyevent code (67 = KEYCODE_DEL)
$ adb shell am broadcast -a ADB_INPUT_CODE --ei code 67
# repeat 10 times
$ adb shell am broadcast -a ADB_INPUT_CODE --ei code 67 --ei repeat 10
  1. Sending editor action (2 = IME_ACTION_GO)
$ adb shell am broadcast -a ADB_EDITOR_CODE --ei code 2
  1. Sending unicode characters
# To send 😸 Cat
$ adb shell am broadcast -a ADB_INPUT_CHARS --eia chars '128568,32,67,97,116'

Usage

Switch to Utf7ImeService

$ adb shell ime set macaca.unicode.ime/.Utf7ImeService

Switch to system default Service

$ adb shell ime set com.android.inputmethod.pinyin/.PinyinIME

List available Service

$ adb shell ime list -a

License

The MIT License (MIT)