attachment_engine_ios 0.0.1-dev.0 copy "attachment_engine_ios: ^0.0.1-dev.0" to clipboard
attachment_engine_ios: ^0.0.1-dev.0 copied to clipboard

The iOS implementation of attachment_engine. Provides Pigeon-generated HostApi transport for PDF, audio/video control, share, open-externally, office preview, paths, and download start/resume/cancel ( [...]

attachment_engine_ios #

The iOS implementation of attachment_engine.

This package is endorsed by attachment_engine and you should not need to depend on it directly — add attachment_engine to your pubspec.yaml and this package is pulled in automatically for iOS builds.

Every request/response native call (PDF, audio/video control, share, open-externally, office preview, paths, download start/resume/cancel) is dispatched through pigeon-generated HostApi protocols — see attachment_engine_platform_interface/pigeons/messages.dart for the schema. The audio/video/download event streams remain hand-written FlutterEventChannels (per-playerId dynamic channel names don't fit Pigeon's event-channel model).

Office document preview (QuickLook) #

Office documents (doc/docx/xls/xlsx/ppt/pptx/rtf/...) get a genuine in-app preview on iOS via QLPreviewController from Apple's QuickLook framework — a system framework, so this adds zero third-party dependency. OfficePreviewChannel (ios/attachment_engine/Sources/attachment_engine/OfficePreviewChannel.swift) presents it modally from the root Flutter view controller, mirroring the modal-presentation pattern already used by ShareChannel (UIActivityViewController) and OpenChannel (UIDocumentInteractionController).

QuickLook requires a local file URL — it cannot preview a remote URL or in-memory bytes directly. AttachmentResolver in the app-facing package guarantees a local path is available before OfficeAttachmentRenderer invokes this channel, so this is not a caller-visible constraint.

This is intentionally asymmetric with Android, which has no equivalent in-app Office viewer and falls back to external-open (Intent.ACTION_VIEW + FileProvider) — see packages/attachment_engine/README.md for the full rationale.

0
likes
0
points
159
downloads

Publisher

unverified uploader

Weekly Downloads

The iOS implementation of attachment_engine. Provides Pigeon-generated HostApi transport for PDF, audio/video control, share, open-externally, office preview, paths, and download start/resume/cancel (plus hand-written EventChannel transport for audio/video/download event streams) over the native Swift code backing them on iOS.

Repository (GitHub)
View/report issues

Topics

#attachment #ios

License

unknown (license)

Dependencies

attachment_engine_platform_interface, flutter

More

Packages that depend on attachment_engine_ios

Packages that implement attachment_engine_ios