Repository navigation
AirSIM Apps v0.9.8.21 (Android 126 / iOS 162)
AirSIM Apps v0.9.8.21 — 小组件、TLS 公网配对与通话改进
日期:2026-11-03(Asia/Shanghai)。基于 VoBLE 分支。
Android Standalone/AVF Bridge 0.9.8.21 (126);iPhone/Watch/Widget 扩展 0.9.8 (162)。
新功能
- iPhone 新版开屏动画介绍 U30Air 客户端支持、小组件、TLS 公网配对与未读/未接提醒;减少动态效果和后台状态下停止演示动画。
- 桌面与锁屏小组件展示设备状态、有效电量、最近通话和短信内容摘要。支持的桌面尺寸可在后台切换设备/连接模式;不强制打开主 App。刷新仍由系统调度,选择模式不等于链路已就绪。
- 未读短信和未查看的未接来电在底部标签、小组件标题及对应记录中标记。
- 试验性自建域名 TLS 直连支持首次公网配对及为已有设备配置公网入口;App 内附教程。需自建可入站的 HTTPS/TCP TLS 网关、有效证书及音频端口转发,不自动穿透 NAT,也不新增后台推送。
- iPhone Duo/不同窗口尺寸布局适配;拨号页固定布局。Live Activity 到期不应被解释成设备离线,回前台恢复状态展示,独立于 PushKit/CallKit。
通话与兼容性修复
- 已绑定通话的终态不再依赖临时发现元数据;按 Agent、canonical ID 与 backend ID 校验,防止迟到事件误结束新通话。结束时释放计时、等待音、音频和页面占用;未接通呼出只响一次通用结束提示。
- 拨号被拒绝时,路由清理后仍向原请求返回错误并保留号码;只有明确的新手动请求才重拨。
- 同一次拨号意图保持 operation ID,结果不明时兼容设备可只读查询原请求,不自动再次拨号或改走云端重拨。
- iOS 接入受签名、通话身份和短期租约约束的早期媒体接收协议。接通前仅下行、不提前计时,真实 active 后才进入双向音频。
- Android 10 的 SIM 订阅监听回退到旧接口,修复后台 Service 启动时的 API 兼容性崩溃;不提高最低版本。
- Android 上报电量,Agent/Worker 转发有效采样供小组件使用;无采样或过期显示未知。
- 包含此前合入的 PR #21、#23、#25 及短信兼容修正:首次收件箱追平仅补转近 15 分钟短信,旧短信仅推进游标。
安装与边界
- Android APK 使用既有 AirSIM Release 证书。同包名同签名可保留数据覆盖升级;不要为绕过 Debug/第三方签名不一致而卸载。
- GitHub 的 full/sideload IPA 为 unsigned,需用自己的 Apple 开发者身份重新签名。小组件需要主 App 与扩展匹配的 App Group;full 保留 Watch,sideload 不含 Watch。
- TestFlight 使用独立 production APNs 归档;上传成功、Apple 处理、外测审核及测试者可更新是不同状态。
- 本次发布 AirSIM 客户端,不发布 U30Air R18 固件、独立 AVF Linux Agent,也不部署 Worker。U30Air 需要兼容的设备端;APK/IPA 不会替用户升级固件或服务端。
- U30Air 早期媒体不是正式开放功能。 临时候选与 iPhone 160 的单次实机试听已由用户确认:运营商语音可听、接通前不计时、结束后界面正常关闭;临时服务随后恢复普通模式。早期媒体转 active 后双向语音仍待验收,不保证所有运营商/拒接均有公告,R18 仍暂停发布。
- TLS 公网首次配对、双向音频、Watch、多设备切换及长时间网络切换仍需真机回归;纯本地跨端零 Relay 流量不能据此认定已完成端到端验收。
验证与发布状态
- Android Standalone 完整测试通过,包括 API 29/30/35 兼容、短信、音频桥、云端、纯本地及构建检查。正式 Standalone/AVF APK 均构建成功,版本 126,证书 SHA-256 为
cde660af4c3e053615a4967e5188ca29eee084e50958ead1fd5cc80837b0965b。 - Worker 77 项测试与语法检查通过;Module Agent
go test ./...通过。 - iOS 更新策略/生命周期 60 项检查、50 项通话策略断言、4 组拨号恢复 HTTP fixture(22 种情形)、unsigned full/sideload 打包检查通过。
- 首轮完整 iOS XCTest 共 463 项,1 项失败暴露拨号错误被清理吞掉的问题;已修复并增加明确手动重拨检查,最终完整 iOS XCTest 463 项全部通过、0 失败。测试仅证明自动化覆盖范围,不等于所有实机通话场景通过。
应用源码提交 f044496 已推送 VoBLE。两份正式 APK 的包名、版本 126、非 Debug 属性和原发布证书已核验。两份 IPA 来自独立 unsigned Release archive;主 App/Watch/Widget 均为 162,full 保留 Watch,sideload 不含 Watch,均不包含代码签名或描述文件。
App Store 分发导出已通过主 App/Watch 的 production APNs、主 App/Widget 的共享 App Group、get-task-allow=false 和深度签名校验。TestFlight 162 已于 2026-11-03 13:03(北京时间)上传成功,Apple 返回 Uploaded package is processing 与 Upload succeeded;尚未确认处理完成、外测审核或测试者可更新。GitHub 8 个发布附件已从远端重新下载,校验清单与本地一致,7 个有效载荷的 SHA-256 全部通过。App Store Connect 网页登录已过期,尚未核实后续处理完成与外测分组状态。
SHA-256
f1b812499b2174763eaff8aa6203713d198782312b4c71614943ae6fb4d146db AirSIM-Android-AVF-0.9.8.21-build126.apk
2c7dff44a660c4a1433a84bc11c4b7f9f548a69083bb1753a61fc6e52401e537 AirSIM-Android-Standalone-0.9.8.21-build126.apk
f3f3c60f2ccdc68c40f5a8c28bb02e07eb71f13e8ff7551b8680991da731baee AirSIM-iOS-0.9.8-build162-sideload-unsigned.ipa
b5b155c59c49c2d6bfa6a69c9e61dbb7fe8c6e2a1c851b396bb483c23d73985d AirSIM-iOS-0.9.8-build162-unsigned.ipa
c0ea4a896d2c8c394b29f9427589996db826cd501c512279ff0ed3ef48fabbe5 LICENSE
82bb82e0816c778a09b7ddc8cea0f9126847d6e489bf0aeb7fb1dff2dfc54454 NOTICE
98d05d78721e4e7c859b00c6e34611c4ee0524d6075e9dc641d9f35ecfa7b1dc THIRD_PARTY_NOTICES.md