截止到 2018 年 3 月 18 日 有哪些非 HTML5 的跨平台开发方法

2018-03-18 12:16:29 +08:00
 icedx
Kotlin 声称支持 iOS

https://blog.kotlin-academy.com/multiplatform-native-development-in-kotlin-now-with-ios-a8546f436eec

Swift 可以开发安卓应用
但是不知道同一份代码能否在不进行大幅度修改的前提下 运行在安卓和 iOS 上
2631 次点击
所在节点    问与答
14 条回复
zcmilan
2018-03-18 12:51:59 +08:00
Flutter
lizhuoli
2018-03-18 12:52:48 +08:00
React Native (JavaScript)
Qt for Mobile (C++)
Xamarin (C#)
RubyMotion (Ruby)
RoboVM (Java)
Multi-OS Engine (Java)

死的死,活的活。大部分框架,就是通过写了一个 Bridging(反正 UIKit 是用 OC 写的,也就是 C 的 ABI,基本所有语言都有 C 的调用方式),这样把所有 iOS 的 framework 换了个语言写了一个 wrapper,这样就能用另一个语言写,本质所有用法和思想和直接用 OC/Swift 写没什么屌区别。

上面都是做 App,你说游戏引擎的话好像就没有跨不了平台的吧(有 OpenGL 就能跑),而且也不用管什么 UIKit 这些玩意
MeteorCat
2018-03-18 12:53:00 +08:00
QT
icedx
2018-03-18 13:00:05 +08:00
@lizhuoli
据说 Xamarin 就是做了个翻译
以此开发还需要了解各个平台的 API
icedx
2018-03-18 13:00:26 +08:00
@MeteorCat #3 收费的
icedx
2018-03-18 13:00:34 +08:00
@zcmilan #1 表示关注
lizhuoli
2018-03-18 13:01:18 +08:00
@lizhuoli 还有一些框架,就是强侵入性的,也就是直接不依赖 UIKit,比如 Flutter (Dart),从 CoreGrahics,CoreAnimation 甚至 OpenGL 封装起来,自己实现一套渲染,布局引擎,然后通过 CALayer 桥接到 UIKit 上。事件响应也是自己处理。这类框架好处就是可以不需要太过理会 UIKit 领域方面的知识,也不用管 Android UI 和生命周期,只学框架那一套就行了。坏处就是可能不太好和原生 UI 开发的技术栈相融合
MeteorCat
2018-03-18 13:13:19 +08:00
@icedx 授权费?正常的,有说明了有问题有技术支持
icedx
2018-03-18 13:15:29 +08:00
@MeteorCat #8 我准备开发免费应用 而且准备上架商店的 没有收入的 所以能避开就避开
icedx
2018-03-18 13:16:14 +08:00
@lizhuoli #7 我还是倾向强侵入性的框架
MeteorCat
2018-03-18 16:06:41 +08:00
@icedx 我 QT 这方面不清楚,不过游戏引擎我们上国际商店的话是按照收入比例,同时还有到达一定额度才进行费用收取,实际上你可以咨询下客服,另外这些企业都有扶持策略,感觉还是比较人性化的
icedx
2018-03-18 18:46:28 +08:00
@MeteorCat #11
感谢解答
实际上我还是非常喜欢 QT 的
一会去看看
longaiwp
2018-03-18 22:11:36 +08:00
不用倾向啦,强侵入的你一样要碰原生的,既然都躲不开,我建议 Xamarin。为什么啊,因为支持最好啊,没其他说的
404neko
2018-11-26 02:47:12 +08:00
正需要这个

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/439087

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX