介绍

除了Flutter和RN,还有尝试使用SwiftUI开发跨平台

开发环境 最低版本
Xcode 15
Android Studio 2023
Homebrew 4.1.0
iOS 16
Android 29

工作流程

image.png

  • 使用swift和swiftUI进行编码
  • 使用skip转译成Kotlin

运行操作完成后,SwiftUI App 将在所选的 iOS 模拟器中打开,同时转译的 App 将在当前运行的 Android 模拟器中启动

image.png|500

跨平台方案比较

Skip Flutter React Native Xamarin KMP Compose Ionic/Cordova
Development Language Swift Dart JavaScript C# Kotlin JavaScript
UI Framework SwiftUI Flutter HTML/JSX+CSS XAML/MAUI Compose HTML+CSS
Package Manager SwiftPM Pub/CocoaPods NPM NuGet/CocoaPods Gradle/CocoaPods Varies
IDE Xcode Android Studio VSCode Visual Studio IntelliJ IDEA VSCode
iOS UX Native Mimicked Native Native Mimicked HTML
Android UX Native Mimicked Native Native Native HTML
Rendering Canvas Native Impeller/Skia Flexbox Native Skia WebView
Code Execution Compiled Compiled Interpreted Compiled Compiled Interpreted
Call Platform API Direct Bridged Bridged Bridged Mixed Bridged
Added VM/Runtime None Flutter Engine Hermes Mono Kotlin/Native Varies
Added Garbage Collector None Yes Yes Yes Yes Yes
Minimum iOS App Size 100 KB 13 MB 8 MB 8 MB 16 MB Varies
Minimum Android App Size 5 MB 17 MB 9 MB 8 MB 5 MB Varies

优势

  • 真正做到原生开发
  • 可以随时停止使用 Skip 并自行维护 Swift 和 Kotlin 代码库

不足

  • skip是2023刚创建的新框架,社区讨论度比较低
  • 闭源项目需要付费获取许可证使用转译插件

skip文档

Skip