Web 技术无疑被苹果公司打入了冷宫

2019-12-26 14:16:46 浏览数 (1)

做 Web 技术的朋友,做梦都在想着把同一份代码,编译好了同时可在 Linux, Windows, Andriod, MacOs, iOS 上运行。

这不是每个程序员的渴求嘛!

但这不是苹果公司的愿景。它想要独树一帜,在 App Store 打上浓浓的苹果标识,即在其他设备上看不到类似的应用,完成硬件,软件的垄断。

最近苹果新出一项政策,在 App Store 提交的代码中,若含有 Web 技术代码,将延期审核时间。悄悄的,对采用热门技术 Electron 编制的程序,采取了拒审的姿态。 而 Electron 是典型的 Web 技术,它使得任何操作系统,App 都可以重复使用原有代码,帮助程序员完成一次编程,到处运行的理想。

比如,Slack, Spotify, Discord, WhatsApp 等.

在社区 Github 上,程序员讨论最多的问题,便是苹果对 Electron 的抵制,过去能提交的 App, 现在变得困难。苹果公司则指责这些 App 企图掩盖使用苹果内部开发 APIs 的行为(这些 API 据称用来保证苹果产品稳定和安全等,而不提供给第三方使用)。这些仅限苹果内部使用的 APIs 是被严格禁止使用的,因为它们随时会更改或者变化。

Electron 使用这些内部 APIs 好多年,也没有出现问题。举个例子,它提供的一项功能就是提高电池使用性能。但苹果公司认为,这会造成用户体验下降。但苹果对这些内部 APIs 并没有提供可替换方法。

由此看来,升级 Electron 框架变得是唯一可行的方案。

大家可能会觉得,通过 iOS 上的第三方网页浏览器发布产品,可以解决这类问题。但事实上,苹果从不允许第三方独立的浏览器出现在 iOS 上。即使你看到了 Chrome, Opera, 那也不过是一层壳,他们必须使用 Safari 来渲染网页。

类似在 iOS 被封杀的技术,还有 WebRTC, 允许仅使用网页便可视频通话;Progressive Web Apps(PWAs), 与 Electron 相似,都是用来开发跨平台的本地应用,但却遭到苹果的不作为,仅仅实现了个半吊子。

这些行为,完全可以被严谨的隐私,安全,稳定等措辞给掩盖。但只有开发者才最知道痛苦。一个完整的生态,需要平台和开发者都开放。

那么问题是,作为独立开发者,你会支持苹果吗,还是选择加入小米,华为,阿里,腾讯等阵营?

0 人点赞