Netcatty Android 进展更新:SSH 保活、生物识别、端侧输入优化与新功能集成
大家好!
经过一段时间的紧张开发与迭代,Netcatty Android 项目在稳定性和功能性上都取得了显著的进步。本次更新主要聚焦于提升应用的核心体验,包括 SSH 连接的可靠性、用户数据的安全性,以及终端交互的便捷性。
一、SSH 连接稳定性:告别后台限制,拥抱 WakeLock
Android 14+ 对前台服务(Foreground Service)的类型和权限要求日益严格,特别是 FOREGROUND_SERVICE_CONNECTED_DEVICE 类型,导致之前使用的 SshConnectionService 启动失败。
为了解决这一问题,并提供更可靠的后台连接保活机制,我们引入了 PARTIAL_WAKE_LOCK。现在,当 SSH 会话活跃时,应用会获取 WakeLock,确保 CPU 在后台保持运行,从而在应用切到后台或设备休眠时也能稳定维持 SSH 连接。这一方案不仅解决了 Android 14+ 的兼容性问题,也简化了服务管理,避免了不必要的权限和通知。
二、安全升级:生物识别解锁与 Vault 锁定
生物识别解锁
现在,用户可以在设置中启用指纹或面部识别来解锁 Netcatty Vault,为敏感的 SSH 凭据提供了更高级别的安全保障。同时,我们也实现了安全恢复密码机制,确保在生物识别失败时仍能通过密码访问。
Vault 锁定功能
新增了 “Lock Vault” 选项。点击后,应用将清除内存中的加密密钥,确保在应用未运行时数据安全,并自动跳转回解锁页面。
三、终端输入体验革新:可见输入栏与稳定输入
我们彻底重构了终端的输入处理机制,解决了之前隐藏 TerminalInputView 导致 IME 输入不稳定的问题。
- 可见输入栏:终端底部现在有一个清晰可见的输入栏,每输入一个字符,都会立即发送到 SSH 会话,并同步清空输入框。这提供了直观的视觉反馈,并保证了输入的可靠性。
- 增强的特殊键:
SpecialKeysRow包含了 Home、End、Backspace 等常用特殊键,操作更便捷。 - 键盘切换按钮:状态栏新增了键盘切换按钮,用户可以方便地显示或隐藏软键盘。
四、Snippet 快捷命令集成:效率倍增
终端特殊键行新增 ⚡ 按钮,点击后弹出 Snippet 选择器(BottomSheet)。用户可以在其中浏览、搜索、添加、删除预设的命令片段,并一键执行,极大地提高了常用命令的操作效率。
五、端口转发 UI:可视化管理
新增了端口转发管理界面,支持 Local、Remote、Dynamic (SOCKS) 三种模式的规则添加和隧道启动/停止操作,并实时显示隧道的连接状态。
六、全局设置优化
- 暗色模式:用户可在设置中自由切换暗色/亮色主题。
- 终端字体大小:用户可以调整终端的字体大小,以适应个人阅读习惯。
七、当前状态与展望
Netcatty Android 项目正稳步推进,核心功能已基本完善。我们解决了 Android 14+ 的前台服务兼容性问题,提升了安全性,并显著优化了终端输入体验。
下一步计划:
- 完善 SFTP 传输进度显示与通知。
- 实现端口转发的后端逻辑(实际启动/停止)。
- 集成 AI Chat 功能,让服务器管理更智能。
- 进一步优化 UI/UX,提升整体流畅度。
- 增加自动化测试覆盖。
我们诚挚邀请广大用户体验 Netcatty Android,并期待您的宝贵反馈!
– Netcatty Android 团队
本文由博客助手大龙虾整理。