Skip to content
Star

IME Bridge 模块

IME Bridge 是说点啥的独立 LSPosed / LSPatch 扩展模块。它让悬浮球通过当前第三方输入法直接预览和回填识别文字,也可在兼容输入法底部直接长按录音。

进阶功能

该模块会在选定的第三方输入法进程中运行,需要 LSPosed 或 LSPatch 环境。请只从可信来源下载安装,并将作用域限制为实际需要桥接的输入法。

能做什么

能力开源版Pro 版说明
悬浮球文字回填由当前第三方输入法直接向输入框提交最终识别文字
流式预览支持时以组合文本显示中间结果,结束或取消时正确收尾
键盘显隐检测由输入法自身报告面板状态,可减少对无障碍检测的依赖
输入法内录音长按第三方输入法底部的桥接区域录音,松手后交给说点啥识别
剪贴板特权读写✅*在目标输入法进程内读写系统剪贴板,供 SyncClipboard 在非主键盘场景下同步;凭证与 HTTP 仍在说点啥本体
输入框上下文辅助在启用相关 AI 后处理选项时读取光标附近文本作为参考

* 开源版与 Pro 版均需使用 0.2.4 或更高版本模块,并由模块声明 supports_clipboard

模块本身不执行 ASR 或 AI 后处理。录音、供应商选择、备用引擎、识别历史、SyncClipboard 网络请求和最终后处理仍由说点啥负责。

剪贴板同步限制

桥接剪贴板能力依赖目标输入法进程存活。键盘被系统回收后,监听与写入会暂停,直到再次打开该输入法。这不是 always-on 守护进程。

使用前准备

  • Android 8.0(API 26)或更高版本
  • 最新版说点啥开源版或 Pro 版
  • 已配置可用的 ASR 供应商
  • 以下环境二选一:
    • 已安装并启用 LSPosed 的 root 设备
    • 可使用 LSPatch 修补第三方输入法 APK 的设备
  • 目标输入法应基于标准 Android InputMethodService;部分高度定制或有完整性校验的输入法可能不兼容

先选择目标输入法

“目标输入法”是你平时实际使用、希望接收说点啥结果的第三方键盘。LSPosed 作用域应勾选它,而不是说点啥。

下载模块

  1. 打开模块的 Releases 页面
  2. 下载最新版本的 APK
  3. 安装 APK;它会以 BiBi IME Bridge 出现在应用和模块列表中

建议同时更新说点啥与 IME Bridge。旧模块可能仍可完成文字回填,但不会上报输入法内录音、会话或输入上下文等新能力。

使用 LSPosed 安装

  1. 安装 IME Bridge APK
  2. 打开 LSPosed 管理器并启用 BiBi IME Bridge
  3. 进入模块作用域,只勾选需要桥接的第三方输入法
  4. 不要把说点啥开源版或 Pro 版本体加入作用域
  5. 强制停止并重新打开目标输入法;如仍未生效,请重启设备
  6. 将目标输入法切换为当前键盘,再到说点啥刷新桥接状态

最小作用域

不要勾选“系统框架”或无关应用。扩大作用域不会增加功能,只会让模块进入更多不必要的进程。

使用 LSPatch 安装

  1. 在 LSPatch 中选择需要桥接的第三方输入法 APK
  2. 将 IME Bridge 作为嵌入模块进行修补
  3. 安装修补后的输入法,并将其设为当前键盘
  4. 更新第三方输入法后,需要使用新版 APK 重新修补

签名与账号风险

LSPatch 会改变 APK 签名;LSPosed 模块可能导致系统稳定性问题甚至系统崩溃,使用前请确保有救砖能力。操作前请备份输入法配置;若不愿承担这些风险,请使用 LSPatch 方案。

在说点啥中启用

  1. 打开 设置 → 界面与交互 → 悬浮球设置
  2. 开启「输入法桥接文字回填」和「在桥接输入法内录音」(可选,见下文)
  3. 点进普通文本框并保持目标输入法打开
  4. 点击「输入法桥接状态」刷新检测结果
  5. 确认状态中显示正确的目标输入法,并且存在活动输入连接

启用后,悬浮球识别结果会优先通过目标输入法自身写入。若桥接暂时未就绪,说点啥仍可尝试无障碍写入或剪贴板兜底。

正常使用流程

  1. 在任意应用中点进普通文本输入框
  2. 确认已打开配置过作用域的第三方输入法
  3. 使用悬浮球开始录音
  4. 流式识别支持中间结果时,输入框中会显示可撤销的组合文本预览
  5. 识别完成后,最终文字由当前输入法提交;取消会话时预览也会被清理

密码、支付等敏感输入框会被模块主动阻止,属于正常的安全行为。

在第三方输入法内录音

此功能需要较新的 IME Bridge,并且状态中的 PCM 显示为“支持”。

  1. 设置 → 界面与交互 → 悬浮球设置 开启「在桥接输入法内录音」
  2. 在系统应用权限中,允许目标第三方输入法使用麦克风
  3. 打开普通文本输入框,在键盘底部中央的桥接区域长按约 0.2 秒
  4. 出现录音波形后开始说话
  5. 松手停止;音频会交给说点啥,并按当前 ASR、备用引擎和 AI 后处理设置完成识别

目标输入法录音时也会遵循说点啥的「录音时压低其他音频」设置。

触摸区域限制

底部桥接区域需要从按下开始接管触摸事件,因此该区域内的短按也可能被消耗。若它遮挡输入法原有按钮,可在 BiBi IME Bridge 应用中调整区域宽度和高度,或关闭「在桥接输入法内录音」而只保留文字回填。

录音失败时不会自动改用悬浮球或说点啥自身麦克风,需要排查后重新触发。

调整录音区域

安装模块后,打开应用列表中的 BiBi IME Bridge

  • 可预览待机与录音波形
  • 录音区域宽度可在 120–280 dp 之间调整,默认 190 dp
  • 高度可在 24–72 dp 之间调整,默认 32 dp;增加高度也会让区域略微上移
  • 可一键恢复默认值

修改后重新打开目标输入法查看效果。部分 LSPosed / LSPatch 环境无法让目标进程读取自定义值,此时模块会安全回退到默认尺寸。

Pro:输入框上下文辅助 Pro

Pro 版开启 AI 后处理的「输入框上下文」后,悬浮球可通过 IME Bridge 获取光标附近文本,让 LLM 更好地理解前后文、术语和语气。

  • 仅在用户开启输入框上下文与 AI 后处理时请求
  • 只作为后处理参考,不会替代本次识别正文
  • 密码等敏感输入框会拒绝请求
  • API 日志只记录结果状态和字符数量,不记录上下文内容

详细说明见 Pro 功能介绍

状态与故障排除

状态或现象处理方法
未收到桥接响应确认模块已启用、作用域包含当前第三方输入法,并重启输入法或设备
没有当前输入法先切换到已桥接的目标输入法并打开键盘
没有活动输入连接点进普通文本框并保持键盘显示,再刷新状态
等待输入框模块已检测到,但当前没有可写入的编辑器;重新点击文本框
敏感输入框已阻止属于安全限制,请改用普通文本输入框测试
PCM 不支持更新 IME Bridge;确认已开启输入法内录音并重新启动目标输入法
目标键盘无法录音为目标输入法授予麦克风权限,并确认没有其他应用独占麦克风
不支持通用底部触发区域该输入法窗口结构不兼容;仍可只用文字回填,或更换目标输入法
文字仍走无障碍方式检查桥接状态、当前输入法和活动输入连接是否均正确
更新输入法后失效LSPosed 重新启动目标进程;LSPatch 使用新版输入法 APK 重新修补

如仍无法定位,可进入 设置首页 → 识别历史,点击右上角的 API Log,并结合 LSPosed 日志检查模块是否进入了正确的输入法进程。分享日志前请先确认其中没有个人信息。

权限与隐私

  • Xposed 类模块拥有较高能力,请保持最小作用域并使用正式仓库发布的 APK
  • 普通文字回填不会读取输入框已有内容
  • Pro 输入上下文仅在明确开启后读取有限的光标附近文本,并对敏感输入框失效关闭
  • 输入法内录音由目标输入法进程采集后发送给说点啥;若当前使用在线 ASR,音频随后会按该供应商的规则上传
  • 模块不自行保存或识别音频,也不执行 AI 后处理

与 AIDL 联动的区别

项目IME BridgeAIDL 联动
适用输入法可通过 LSPosed / LSPatch Hook 的第三方输入法已主动集成说点啥 AIDL 协议的输入法
是否需要 Hook需要不需要
主要入口悬浮球或输入法底部录音区域输入法自身提供的语音入口
文字写入通过当前输入法的输入连接由调用方接收识别回调并处理

如果使用的是已集成语音联动的 fxliang Fcitx5,请优先参考 AIDL 通信(小企鹅联动)

相关页面

Released under the Apache 2.0 License.