Android 语音输入法

按住说话,
文字实时上屏

inktalk 是一款以语音为核心的 Android 输入法,基于火山引擎「豆包流式语音识别大模型 2.0」, 支持中英混合识别、自由语音指令、手写输入和轻量数字键盘,并可接入任意 OpenAI 兼容大模型完成总结、翻译与整理。 它不内置完整字母键盘,让语音负责连续表达,数字键盘负责快速录入数字。

设计理念

不内置完整字母键盘,是刻意的

语音负责连续表达,数字键盘负责快速录入数字,手写负责局部精修,指令负责改写,每日整理负责回顾。它们彼此配合,构成一条完整的输入闭环。

语音速记

按住即说、实时上屏,思考的速度就是成文的速度。长文、灵感、消息,先说出来再说。

手写精修

手写与语音默契配合:手写负责精准定位与补字,语音负责说出改法——这是局部修改的最佳方案,不改全文,只动该动的地方。

✦ 指令改写

AI 辅助改写是语音输入的必要搭档:口述难免口语化,一句指令就能润色成稿。输入法由此成为一个随身的小型 AI Chat 入口

每日整理

一键梳理当日全部语音、手写与指令输入,AI 生成当日摘要——高效回顾一天输入内容的最佳方案,也是 inktalk 最大的特点之一。

功能

一块键盘,覆盖从听写到成稿

语音是主线,AI、手写与数字键盘是补充。所有功能都在输入法面板内完成,不需要离开当前应用。

低延迟实时听写

双向流式端点(bigmodel_async),200 ms 音频分包,识别结果只在变化时下发;边说边上屏,结束自动定稿。

中英语音识别

支持实时中英混合识别;需要英文优先时,可切换到使用 en-US 偏好的定稿模式。数字通过独立数字键盘直接输入。

✦ 自由语音指令 · 你的 AI Chat 入口

说出修改要求即可改稿:支持选区修改、全文修改与光标处生成。结果先在面板预览,确认后才写入——输入法从此也是一个随身的 AI Chat。

AI 总结 / 翻译 / 整理

优先处理选中文本,未选中时处理本次语音内容。接入任意 OpenAI 兼容 API,结果可追加或直接替换原文。

手写输入 · 语音的精修搭档

基于 ML Kit 数字墨迹识别,中文和英文模型并行运行并自动合并候选,不需要手动切换语言。模型下载后可离线识别。

轻量数字键盘

直接输入数字、小数点、正负号、日期和时间,不必逐个口述;点击麦克风即可返回语音输入。

⌘ 快捷键面板

ESC、Tab、全选、复制、粘贴、撤销(Ctrl+Z)与方向键,5×2 等宽网格,横向滑动切换,编辑长文不求人。

每日输入记录 · 当日整理

语音、数字键盘、手写、指令与 AI 结果按日期归档在本机。每条记录可逐字选择热词;当日整理还会生成待确认候选,不会自动修改热词表。

自适应热词与纠错候选

从每日记录逐字选择热词;已验证的删除与后续输入会形成可能纠错。所有自动候选都需要确认,用户热词优先进入 ASR 请求。

热词与参数控制

专有名词热词提升识别准确率;智能标点、数字规整(ITN)、语义顺滑(DDC)均可在设置中独立开关。

配置导入导出

语音识别、AI 与输入模式配置可导出为 JSON 备份、换机导入,单文件上限 128 KB,导出前提示敏感凭据风险。

安全在线更新

检查官网版本清单,下载后校验 SHA-256、包名和签名证书;校验通过后仍由 Android 系统显示安装确认。

原理

两段式架构:先听清,再写好

语音识别与 AI 处理相互独立,均可自由替换服务方,凭据只保存在本机。

① 语音识别 · 火山引擎

豆包流式语音识别大模型 2.0(SAUC 二进制协议,WebSocket + gzip)。16 kHz 单声道 PCM 以 200 ms 分片上行,async 端点专属二遍识别负责最终定稿。

② AI 处理 · 任意 OpenAI 兼容接口

总结、翻译、整理与语音指令走标准 chat/completions。可配置 Base URL、API Key 与模型名;「关闭思考模式」开关自动适配通义、火山方舟豆包与 OpenAI gpt-5 系三类参数。

快速开始

三分钟完成配置

需要火山引擎「豆包流式语音识别大模型 2.0」凭据(按音频时长计费);AI 功能为可选项。

  1. 三步引导安装后打开设置页,依次完成:启用 inktalk 输入法 → 切换到 inktalk → 授予录音权限。
  2. 填入凭据新版控制台只需填 API Key;旧版控制台填 App ID + Access Token。点「测试 ASR 连接」,成功会返回 logid。详细获取步骤见配置指南
  3. 开始使用在任意输入框唤出 inktalk,选好模式后点大麦克风说话,再点一次结束上屏。需要改稿时点 ✦ 说出指令,预览确认后替换。
# 自行构建(需要 JDK 17+ 与 Android SDK,compileSdk 37 / minSdk 26) ./gradlew :app:assembleDebug # 产物:app/build/outputs/apk/debug/app-debug.apk
隐私与安全

凭据不出机,敏感场景自动回避

本机存储

API Key、App ID、Access Token 只存本机 SharedPreferences,应用不内置任何密钥;每日输入记录仅追加保存在本机数据库,整理结果单独保存、不覆盖原文。

敏感输入框保护

密码、PIN 等敏感输入框中禁用指令模式,也不会写入每日记录;宿主无法提供完整文本时,指令模式拒绝执行,不会把残缺上下文当作全文。

写入前校验

AI 与指令结果写入前会复核选区、光标与原文;任一发生变化即取消写入,避免误删。指令模式单次完整上下文上限 6,000 字符。

触觉反馈遵循系统

麦克风、模式切换与快捷键使用 Android 原生触觉反馈,自动遵循系统「触摸反馈」开关,不额外申请震动权限。

更新日志

inktalk 0.5.2

本版本集中优化折叠屏布局和手写输入稳定性。

0.5.2 · 内屏与手写体验优化

2026 年 8 月 21 日
  • 宽屏输入法改为左右分区,并支持交换输入内容区与控制区的位置。
  • 修复手写候选出现或消失时画板上下跳动的问题。
  • 中文和英文手写模型并行识别,候选自动合并,不再显示语言切换按钮。
  • 手写提示移入画板中央,语音按钮缩小到更紧凑的尺寸。
  • 首次直接在折叠屏内屏打开输入法时,使用真实窗口尺寸重新计算布局。
已知限制

使用前请了解

inktalk 图标

让说话的速度,成为打字的速度

inktalk 为个人项目,可自行构建 APK 安装使用。接入需自备火山引擎语音识别凭据;AI 功能支持任意 OpenAI 兼容服务。

灵感来源

缘起一条帖子

「好了,自己写了一个输入法。语音识别用的豆包模型。获取上下文来总结和拟定邮件回复。特意做窄一点方便胖折叠用。」
—— @taresky 的 X 帖子

inktalk 的开发正是受到这条帖子内容的启发:语音识别负责输入,AI 结合上下文完成总结与回复。 我们把这个想法做成了一款完整的输入法,并将开发结果免费提供给有类似需求的用户——凭据自备,代码自行构建即可使用。