Android adb ime 调试输入法

目录

前言

安装多个输入法后,可以在设置里进行切换。

既然是开发,能用命令就就命令~

ime 帮助说明:

ime <command>:
  list [-a] [-s]
    prints all enabled input methods.
      -a: see all input methods
      -s: only a single summary line of each
  enable [--user <USER_ID>] <ID>
    allows the given input method ID to be used.
      --user <USER_ID>: Specify which user to enable. Assumes the current user if not specified.
  disable [--user <USER_ID>] <ID>
    disallows the given input method ID to be used.
      --user <USER_ID>: Specify which user to disable. Assumes the current user if not specified.
  set [--user <USER_ID>] <ID>
    switches to the given input method ID.
      --user <USER_ID>: Specify which user to enable. Assumes the current user if not specified.
  reset [--user <USER_ID>]
    reset currently selected/enabled IMEs to the default ones as if the device is initially booted w
    ith the current locale.
      --user <USER_ID>: Specify which user to reset. Assumes the current user if not specified.

列出所有输入法

仅列出输入法 id

ime list -s

console:/ # ime list -s
com.google.android.tts/com.google.android.apps.speech.tts.googletts.settings.asr.voiceime.VoiceInputMethodService
com.tencent.wetype/.plugin.hld.WxHldService
com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME
com.sohu.inputmethod.sogou/.SogouIME
com.iflytek.inputmethod/.FlyIME

本例中,

这几个是系统自带的输入法,也是默认输入法,

com.google.android.tts/com.google.android.apps.speech.tts.googletts.settings.asr.voiceime.VoiceInputMethodService

com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME

这几个是用户自己下载的输入法

com.tencent.wetype/.plugin.hld.WxHldService

com.sohu.inputmethod.sogou/.SogouIME

com.iflytek.inputmethod/.FlyIME

列出所有输入法的所有信息

ime list -a

结果很长,只列出 微信输入法 的信息,

com.tencent.wetype/.plugin.hld.WxHldService:
  mId=com.tencent.wetype/.plugin.hld.WxHldService mSettingsActivityName=com.tencent.wetype.plugin.hld.reactnative.activity.ImeMainSettingActivity mIsVrOnly=false mSupportsSwitchingToNextInputMethod=false mInlineSuggestionsEnabled=false mSupportsInlineSuggestionsWithTouchExploration=false mSuppressesSpellChecker=false mShowInInputMethodPicker=true mSupportsStylusHandwriting=false
  mIsDefaultResId=0x0
  Service:
    priority=0 preferredOrder=0 match=0x108000 specificIndex=-1 isDefault=false
    ServiceInfo:
      name=com.tencent.wetype.plugin.hld.WxHldService
      packageName=com.tencent.wetype
      labelRes=0x7f1102ab nonLocalizedLabel=null icon=0x0 banner=0x0
      processName=com.tencent.wetype:hld
      enabled=true exported=true directBootAware=false
      permission=android.permission.BIND_INPUT_METHOD
      flags=0x0
      ApplicationInfo:
        name=com.tencent.wetype.HldApplication
        packageName=com.tencent.wetype
        labelRes=0x7f1102ab nonLocalizedLabel=null icon=0x7f0e0003 banner=0x0
        className=com.tencent.wetype.HldApplication
        processName=com.tencent.wetype
        taskAffinity=com.tencent.wetype
        uid=10145 flags=0x38b83e44 privateFlags=0xac001100 theme=0x7f12013c
        requiresSmallestWidthDp=0 compatibleWidthLimitDp=0 largestWidthLimitDp=0
        sourceDir=/data/app/~~8c1LJhgD_6HP-G8ZHI-ypA==/com.tencent.wetype-U6heMnke7C3PVtyQud3oAQ==/base.apk
        resourceDirs=[]
        overlayPaths=[/data/resource-cache/com.android.systemui-neutral-VdjM.frro, /data/resource-cache/com.android.systemui-accent-gHXI.frro]
        seinfo=default:targetSdkVersion=33
        seinfoUser=:complete
        dataDir=/data/user/0/com.tencent.wetype
        deviceProtectedDataDir=/data/user_de/0/com.tencent.wetype
        credentialProtectedDataDir=/data/user/0/com.tencent.wetype
        sharedLibraryFiles=[/system/framework/org.apache.http.legacy.jar]
        enabled=true minSdkVersion=24 targetSdkVersion=33 versionCode=28201 targetSandboxVersion=1
        supportsRtl=false
        fullBackupContent=true
        crossProfile=false
        HiddenApiEnforcementPolicy=2
        usesNonSdkApi=false
        allowsPlaybackCapture=true
        nativeHeapZeroInitialized=0
        enableOnBackInvokedCallback=false
        createTimestamp=1320471

启用/禁用 输入法

ime enable <ID>

ime disable <ID>

启用/禁用 不会卸载输入法,只是在切换输入法时是否显示该输入法。

启用输入法

ime enable com.tencent.wetype/.plugin.hld.WxHldService

禁用输入法

ime disable com.tencent.wetype/.plugin.hld.WxHldService

切换输入法

ime set <ID>

输入法已经 enable 才可以切换。

使输入法 enable 的方法:

  • 用户点开输入法,启动输入法(一般会跳转到设置里启用输入法)。
  • 先 ime enable 输入法ID

切换输入法,

ime set com.tencent.wetype/.plugin.hld.WxHldService

还原输入法

ime reset

还原输入法的意思是:

  • disable 用户自己下载的输入法,用户不点开输入法,启动输入法(一般会跳转到设置里启用输入法);
  • 使用系统默认的输入法

操作示例,

console:/ # ime reset
Reset current and enabled IMEs for user #0
  Selected: com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME
   Enabled: com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME
   Enabled: com.google.android.tts/com.google.android.apps.speech.tts.googletts.settings.asr.voiceime.VoiceInputMethodService
console:/ # ime list -s
com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME
com.google.android.tts/com.google.android.apps.speech.tts.googletts.settings.asr.voiceime.VoiceInputMethodService

可以看到,reset 后用户下载的输入法均不可用。

相关推荐
Yeats_Liao几秒前
Spring 定时任务:@Scheduled 注解四大参数解析
android·java·spring
雾里看山2 小时前
【MySQL】 库的操作
android·数据库·笔记·mysql
宏基骑士9 小时前
mac 电脑上安装adb命令
macos·adb
水瓶丫头站住10 小时前
安卓APP如何适配不同的手机分辨率
android·智能手机
xvch11 小时前
Kotlin 2.1.0 入门教程(五)
android·kotlin
xvch15 小时前
Kotlin 2.1.0 入门教程(七)
android·kotlin
望风的懒蜗牛15 小时前
编译Android平台使用的FFmpeg库
android
浩宇软件开发15 小时前
Android开发,待办事项提醒App的设计与实现(个人中心页)
android·android studio·android开发
ac-er888816 小时前
Yii框架中的多语言支持:如何实现国际化
android·开发语言·php
苏金标17 小时前
The maximum compatible Gradle JVM version is 17.
android