Native Platform Views for mobile and beyond
summary
Builds a native camera preview embedded in Flutter using SwiftUI via UIHostingController on iOS and macOS and a Kotlin native view using the camera-view library (Camera2) on Android, controlled over method channels to take pictures and switch lenses. Renders natively at full device frame rate, outperforming the stock Flutter camera plugin. Uses Android composition modes (virtual display, hybrid, texture layer hybrid composition) and notes Flutter 3.3 bugs; macOS works from the master channel but has missing gesture pass-through, resize threading bugs and platform-view-overlays and scrolling with many views causes performance and ad-attribution issues.
AI-written summary · about
chapters (21)
- 0:00Introduction and speaker
- 1:52Why use platform views
- 4:42Platform views theory 101
- 6:46iOS platform view flow
- 7:51Android platform view flow
- 8:54Android rendering modes
- 12:23Camera implementation goal
- 13:25iOS code implementation
- 14:47Swift UI integration
- 16:52Android virtual display
- 17:13Android hybrid composition
- 20:47Embedding full camera app
- 21:54Debugging Flutter plugins
- 23:58Camera preview demo
- 24:41Android camera implementation
- 27:55Desktop platform views
- 31:04Mac platform view issues
- 33:13Windows platform views
- 33:34Scrolling with platform views
- 35:20Future of platform views
- 36:24Resources and Q&A
related talks
36mNative Platform Views for mobile and beyond
26mAndroid Platform Views Past, Present, Future
22mIntroduction to Flutter
35mThe Flutter Journey of Building a Live Streaming App
24mKeynote: Flutter
49mFirst Flutter, then Fly: Build Reactive & Performant Cross-Platform Apps
58mBuilding cross-platform mobile apps with Flutter.io
18mCross-Platform Development as a Native Mobile Developer
