android - 防止 GBoard 语音输入编辑其输入
问题描述
我正在重新使用旧的 Android 平板电脑作为外接键盘。我编写了一个自定义视图InputConnection
,将击键转发到计算机;效果很好。
我想用GBoard的语音输入来打字。我覆盖public boolean commitText(CharSequence text, int newCursorPosition)
并发text
送到计算机;这也很好用。
但是,如果 GBoard 认为它误认了较早的单词,它有时会在事后编辑文本。显然我无法编辑已经发送到计算机的文本。所以最终结果是文本最终被发送了两次,例如,如果我说“测试 123”,commitText
则调用
test
123
test 123
有没有办法告诉 GBoard 编辑器是“仅附加”的,它应该等到它完全识别输入后再输入?
我使用的是 Android 4.3(API 级别 18)。
顺便说一句,像 KDE Connect 这样的类似应用程序也存在同样的问题。
解决方案
推荐阅读
- node.js - NodeJS - @azure/service-bus:如何将消息中的 `userProperties` 传递给 C# 后端
- html - 从数据库表中提取数据并显示在视图中
- python - Python 重构此函数以将其认知复杂度从 20 降低到允许的 15
- vue.js - 运行 Axios 拦截器
- c++ - 如何从 ROI(框架上的徽标矩形)中跟踪对象(电视徽标)的消失?
- c++ - C++程序测试用例验收
- jasper-reports - 如何从通过jasper报告生成的excel报告中删除背景单元格
- gradle - fileTree 访问排除目录
- android - DatePickerDialog 箭头按钮卡住并且语言 RTL 行为异常
- javascript - UnhandledPromiseRejectionWarning:ElementNotInteractableError:元素不可交互