36氪 - 科技频道 10月27日 20:01
Swift 语言拓展新边界,支持 Android 应用开发
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Swift 编程语言正打破地域限制,从苹果生态迈向更广阔的平台。得益于 Swift SDK for Android 预览版的推出,开发者现在可以使用 Swift 开发 Android 应用程序,并能轻松实现 iOS 与 Android 间的代码共享。这一跨平台能力得益于 Swift 团队将编译器及其生态系统移植到 Windows 和 Linux,并由苹果工程师和开源贡献者组成的 Swift Android 工作组负责将 Swift 运行时和标准库移植到 Android 架构,确保与 Android NDK 和 Java 的互操作性。尽管面临字节码编译开销和 API 差异等挑战,Swift SDK for Android 预览版已支持核心功能,并有望在性能敏感场景下展现优势,为跨平台开发提供原生性能的有力选择。

🚀 **Swift 跨平台能力显著增强:** 继移植到 Windows 和 Linux 后,Swift SDK for Android 预览版的发布标志着 Swift 正式支持 Android 应用开发,允许开发者在 iOS 和 Android 之间共享代码,降低了跨平台开发的门槛,并有望统一多平台代码库。

🛠️ **Swift Android 工作组的贡献:** 该团队由苹果工程师和开源贡献者组成,致力于将 Swift 的运行时和标准库移植到 Android 架构,并确保与 Android NDK 和 Java 的互操作性,为 Swift 在 Android 上的运行奠定了基础。

💡 **性能与挑战并存:** Swift SDK for Android 预览版已支持并发处理和内存管理等核心功能,在某些性能敏感场景下可能优于 Kotlin。然而,Android 基于 Java 虚拟机,Swift 代码编译成字节码或本地二进制会带来开销,开发者还需处理 API 差异,如将 UIKit 替换为 Android 组件。

🔗 **便捷的开发支持与互操作:** 官方提供了详细的 SDK 下载、入门指南和示例,方便开发者上手。Swift Package Index 中超过 25% 的包已兼容 Android。此外,swift-java 开源项目旨在实现 Swift 与 Java 的无缝互通,进一步提升开发效率。

🎯 **苹果的战略考量与市场影响:** 苹果将 Swift 带到 Android,旨在抓住全球超过 70% 的 Android 用户市场,鼓励更多开发者采用 Swift,并保留其技能在跨平台上的价值,同时也为 Flutter、React Native 等跨平台框架带来竞争压力,尤其强调原生性能的吸引力。

曾几何时,提起 Swift 编程语言,很多人的第一反应都是它是属于苹果派系的语言,也仅能用于面向苹果系统的应用开发。

如今,一切发生了巨大的改变,继 Swift 团队将 Swift 编译器及其生态系统先后移植到了 Windows、Linux 之后,开发者现在也可以使用 Swift 开发 Android 应用程序了,还能轻松地在 iOS 和 Android 之间共享代码。

这一切皆是得益于工具包 Swift SDK for Android 预览版的推出。

Swift 跨平台的“野心”

自 2014 年面世以来,Swift 就在努力跳出 iOS 的小圈子。作为 Objective-C 的继任者,Swift 因安全性、性能和现代化语法受到欢迎。

现下加入 Android 支持后,开发者甚至可以用类似 SwiftUI 的思路进行界面开发,只需适配 Android 的 Material Design 风格。这降低了 iOS 开发者进入 Android 的门槛,同时让多平台开发的代码库更统一。

其实这次 SDK 的发布出自今年早些时候成立的 Swift Android 工作组之手。

据悉,这个团队由苹果工程师和开源贡献者组成,主要负责把 Swift 的运行时和标准库移植到 Android 架构,同时确保与 Android NDK 和 Java 的互操作性。

时下随着 Swift SDK for Android 预览版的到来,有早期尝鲜者表示,预览版已经支持核心功能如并发处理和内存管理,这在某些性能敏感场景下,甚至可能比 Kotlin 更有优势。

当然,挑战也不少。Android 基于 Java 虚拟机,Swift 代码必须编译成字节码或本地二进制,这会带来一定开销。开发者还需要处理 API 差异,例如把 UIKit 替换成 Android 对应组件,不过 SDK 也提供了工具来弥补这些差距。

据外媒 9to5Mac 分析,这一举措延续了 Swift 在服务器端和嵌入式应用中的可移植性思路。

SDK 获取与上手指南

对于有兴趣尝试的开发者,Swift 官方提供了详细的 SDK 下载与入门指南。

其中,Windows 用户可直接通过安装包获取(https://www.swift.org/install/windows/),Linux 与 macOS 用户也可单独下载。

官方还发布了《入门指南》(https://www.swift.org/documentation/articles/swift-sdk-for-android-getting-started.html)提供了在 Android 设备上运行原生 Swift 代码的方法,而 Swift for Android Examples 则演示了完整的应用开发流程。

借助 Swift SDK,开发者甚至可以将现有的 Swift 包迁移到 Android。据统计,Swift Package Index 中超过 25% 的包已经可以在 Android 上构建,社区展示区也标注了 Android 兼容性。

为进一步方便 Swift 与 Java 的互操作,Swift 工作组还推出了 swift‑java 开源项目(https://github.com/swiftlang/swift-java),它既是一个库,也可以作为代码生成器,自动生成安全高效的绑定,实现 Swift 与 Java 的无障碍互通。

苹果此举意在避免开发者流失

不难想象,苹果将跨平台语言 Swift 带到 Android,无疑是在向碎片化的移动市场提供一个选择。

毕竟 Android 在全球占比超过 70%,这一举措可能鼓励更多开发者采用 Swift,同时保留技能在跨平台上的价值。这也给 Flutter、React Native 等主打“写一次,到处运行”的跨平台框架带来压力。不过正如 Swift.org 博客所强调的,这套 SDK 更注重原生性能,而不是折中方案,这对讲究效率的开发者特别有吸引力。

对此,也有网友认为,“此举或对企业应用尤其有用,可以大幅节省重复开发的成本。但要广泛采用,还需要 SDK 更成熟,例如目前还没有与 Android Studio 完全整合,命令行构建是必备技能。”

也有开发者觉得,Swift 的 Android SDK 如果能与 Xcode 整合,实现跨平台调试,那对小团队和独立开发者才是更为有用的方向。

有批评声音担心,这会让 Swift 失去苹果特色,但支持者认为,这是语言的自然进化。

整体而言,相比过去那些非官方的 Swift-on-Android 项目,苹果官方背书无疑是游戏规则改变者。尽管 SDK 还处于预览阶段,但影响深远。其在 Android 探索,也很可能在未来几年改变应用开发格局。

参考:https://www.swift.org/blog/nightly-swift-sdk-for-android/

本文来自微信公众号“CSDN”,整理:屠敏,36氪经授权发布。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Swift Android 跨平台开发 Apple 编程语言 Swift SDK for Android Cross-platform development Programming language
相关文章