tele-ios-ffi
UniFFI bridge for the future native iOS app.
Current scope:
- Exposes a fake-backed
SessionHandlefor Swift integration tests and app shell work. - Mirrors the
tele-core::sessionDTO/event model with UniFFI-compatible records and enums. - Keeps real TDLib session creation out of this crate until iOS simulator/device linking is validated.
Generate Swift bindings and headers:
scripts/generate-ios-ffi-bindings.sh
The script builds target/release/libtele_ios_ffi.a and writes Swift sources,
headers, a Swift typecheck-friendly tele_ios_ffiFFI module map, and an
XCFramework-compatible module map under build/ios-ffi/.
Known blocker:
- Xcode is installed at
/Applications/Xcode.app, andDEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer xcodebuild -versionreports Xcode 26.5. xcrun simctlcurrently fails because the Xcode license has not been accepted:You have not agreed to the Xcode license agreements. Please run 'sudo xcodebuild -license' from within a Terminal window to review and agree to the Xcode and Apple SDKs license.- Real TDLib iOS simulator/device linking therefore is not validated yet.