Block a user
[P0] COS 预签名 URL q-sign-time 结束时间戳被截断,iOS 端文件下载全部 AccessDenied
[P1] ARM64 iOS 上 RustBuffer 结构体跨 FFI 传参 ABI 不兼容,需全部改为 out-pointer 方式
[P0] COS 预签名 URL q-sign-time 结束时间戳被截断,iOS 端文件下载全部 AccessDenied
DOC-302e XCFramework 重建 + Xcode 编译验证
验证通过 (2026-06-03)
Clean 重建
cargo clean→bash scripts/build-ios.sh全过程成功- 符号检查:17 个 C ABI 符号全部存在
- 补丁自动应用,Swift…
DOC-302b zx_document_ffi 函数迁移到 #[uniffi::export]
完成 (2026-06-03)
改动
- FFI crate 类型加 derive:
DocumentBlock→#[derive(uniffi::Enum)]DocumentError→#[derive(uniffi::Error)]
- 12 个 FFI…
DOC-302c 更新构建流程:library 模式 + Swift binding 重新生成
完成 (2026-06-03)
清理旧产物
- 删除
bindings/ios/generated/旧文件 - 删除
bindings/ios/ZxDocumentRuntime.xcframework - 删除
bindings/ios/device/和 `bindings/ios/simu…
DOC-302a zx_document_core 类型迁移到 proc-macro
完成 (2026-06-03)
改动
zx_document_core/Cargo.toml添加uniffi = "0.28"依赖 +build-dependencies- 新建
crates/zx_document_core/build.rs— 最小 scaffolding…
DOC-302f 增加 UniFFI 符号检查脚本
DOC-302 iOS XCFramework 链接失败:UniFFI 0.28 UDL模式下 extern"C" 分发函数缺失
补充约束(2026-06-03)
1. 明确禁止 UDL / proc-macro 混用
迁移完成后,zx_document_ffi 不允许同时存在 include_scaffolding!() 和 setup_scaffolding!()。
proc-…
DOC-302e XCFramework 重建 + Xcode 编译验证
DOC-302d 更新技术文档为 proc-macro 模式
DOC-302c 更新构建流程:library 模式 + Swift binding 重新生成
DOC-302b zx_document_ffi 函数迁移到 #[uniffi::export]
DOC-302a zx_document_core 类型迁移到 proc-macro
DOC-302 iOS XCFramework 链接失败:UniFFI 0.28 UDL模式下 extern"C" 分发函数缺失
决策:方案 A — 迁移到 proc-macro 模式
根因补充
文档(README / architecture / ios-integration)描述的纯 UDL 工作流在 UniFFI 0.27 及之前有效,但项目使…
DOC-302 iOS XCFramework 链接失败:UniFFI 0.28 UDL模式下 extern"C" 分发函数缺失
DOC-401 PDF 阅读方案评估
完成 (2026-06-02)
已编写 docs/pdf-strategy.md。
5 个核心决策
- iOS 继续用 PDFKit / QuickLook — 零依赖,系统内置,质量高
- **Rust 暂不接…
IOS-M3-08 清理 ReadingEventCollector 空 ObservableObject 协议