Skip 是一款通过 Swift/SwiftUI 代码库创建 iOS 和 Android 应用程序的解决方案,经过三年的开发,Skip 团队宣布他们决定将该产品完全开源,以促进采用和社区贡献。
在此之前,Skip 是一个付费解决方案,需要订阅和许可密钥才能创建应用,除非你是独立开发者或开发免费应用。Skip 解释说,这种模式有助于在没有外部投资的情况下启动产品,但“事实是,开发者希望免费获得他们的工具”。随着最近决定转向开源,Skip 现在与 iOS 和 Android 的主要开发工具保持一致,包括 Xcode、Android Studio、流行框架和其他基本工具,这些工具都是免费的。
但 Skip 表示,促使他们做出这一决定的不仅仅是成本问题。
除了价格,还有一个更深层的担忧是持久性。开发者对于在小公司的付费闭源工具上构建整个应用策略持谨慎态度是可以理解的。如果公司倒闭了怎么办?被收购然后关闭了怎么办?他们的应用程序怎么办?
简而言之,这就是 Skip 决定开源的原因:即使当前的开发团队消失了,解决方案也会继续存在,保护开发者在其中所做的投资。
根据 Skip 团队的说法,Android 和 iOS 上 UI 框架的快速发展,包括 Material Expressive 和 Liquid Glass,造成了使用传统跨平台 UI 框架可能导致“过时的界面、较弱的用户体验和真正的竞争劣势”的局面。相比之下,Skip 能够在两个平台上实现完全原生的用户体验。
事实上,Skip 框架通过将 SwiftUI 桥接到 Jetpack Compose 上,将其引入 Android。这种方法允许 iOS 开发者在相同的代码库中编写应用程序的业务逻辑和 UI,而无需额外的努力。
当 Skip 还是一个封闭源码的付费产品时,它的一些早期使用者在 Reddit 上分享了他们的经验。Reddit 用户 jestecs指出:“总的来说,使用起来相当愉快,虽然偶尔会遇到一些问题,但总体上令人惊讶地愉快”。此外,JEHonYakuSha进一步阐述:
有些问题是因为某些弃用的构造函数不受支持,因此你可能习惯于用较旧的方式来定义视图修饰符或组件,但一旦你习惯了稍微发挥创意并确认什么是受支持的,它就非常好。
JEHonYakuSha 还指出,你可以使用 //SKIP INSERT 将 Kotlin 代码片段混合到 Swift 代码库中,并且 iOS 端只支持 Swift 包管理器,这可能会使管理内部依赖关系变得有些棘手。
Skip 的文档中有一个重要的警告,即该框架最适合外部依赖较少的新项目或应用程序:
将现有的应用程序迁移到 Skip 并不简单。大多数应用都包含许多仅针对 iOS 的依赖,这使得移植到 Android 平台变得非常困难。
Skip 三年前开始作为 swift 到 kotlin 的转译器,后来增加了对 Android 上最广泛使用的 SwiftUI API 的支持。在此期间,他们成立了 Swift Android 工作组,发布了Swift Android SDK,实现了在 Android 上原生编译 Swift 代码。今天,Skip 支持许多流行的集成框架,与数千个跨平台 Swift 包互操作,并提供全面的 SwiftUI 实现。
SwiftCrossUI是一个开源的替代方案,它为跨 macOS、Linux、Windows 的 UI 提供了类似 SwiftUI 的 API,并对 Android 提供了一些新生支持。
Skip 可以在GitHub上克隆,而所有文档、博客和案例研究都转移到了skip.dev上。
原文链接:





