remote/viewer-core
郑博文 174a3f8ac0 feat(viewer-core,android-ffi): 主控端文本上行与 JNI 入口
Session::send_text 收 &[u16] 而不是 &str:整条链(Java 字符串 → JNI → 线格式 →
Windows 注入)的原生表示都是 UTF-16,任何一次 UTF-8 往返都有损,故中间层不做转换。
空输入与超限在本层拦掉,超限走 clamp_text_units 并打日志。

nativeSendText 的参数用 char[](JObject 收再转 JCharArray),经 GetCharArrayRegion
按 u16 直接拷贝。不用 JString + get_string:jni 0.21 那条路走 Modified-UTF-8,
IME 提交边界的落单代理项会在往返里丢。JNI 取数失败必须 eprintln,不能静默——
用户对着远端打字最坏的情况是「看起来发送了」。
2026-10-30 11:41:53 +08:00
..
examples test(viewer-core): headless_check 增加 --host,可指定被控端地址 2026-10-29 19:18:11 +08:00
src feat(viewer-core,android-ffi): 主控端文本上行与 JNI 入口 2026-10-30 11:41:53 +08:00
Cargo.toml feat(viewer-core): 新增安卓主控的连接/协议/收帧层(阶段 1 桌面验证通过) 2026-10-29 18:14:27 +08:00