移动端开发跨平台方案汇总

1:web app

移动端浏览器访问网站,显示相对统一的样式,需对各类移动端浏览器做兼容。

优点:开发周期相对native-app短,因为只用处理相应网页的移动端显示方式即可。Web前端即可完成开发。
缺点:用户必须在浏览器内打开相应的网址,不能使用移动端所提供的硬件和服务

2:Hybrid App

是指介于web-app、native-app这两者之间的app,兼具“Native App良好用户交互体验的优势”和“Web App跨平台开发的优势”。
通常分为三种类型:多View混合型,单View混合型,Web主体型。

这里我们主要说的是web主体型的开发模式

现在有比较多的框架支持跨平台的web主体型的开发,主要是以html5 css3 js语言为主的开发,所能实现的功能以该框架所提供的兼容方案为主,对移动设备底层的提供的硬件或服务只能根据该框架所提供的兼容解决方案。
优点:开发周期相对native-app短,web前端熟悉相应框架后即可完成开发。
缺点:所能达到的效果主要看html5的发展,设备的硬件和服务的提供看框架的后期维护。

3:native-app

这里主要指的是native-app的跨平台解决方案,主要是以C++为主的解决方案,java的解决方案也有。
目前游戏开发相对的解决方案比较完善,因为游戏开发基本不涉及系统提供的UI,框架只需解决硬件,服务,存储等方面的兼容方案。
就应用开发而言,该类框架也存在一些,对UI的兼容的方案应框架而异。
优点:c++工程师即可完成多平台的开发。
缺点:UI的使用看框架的后期维护。

4:j2objc

J2ObjC 是一个来自 Google 的开源命令行工具,用于将 Java 代码转成 iOS 平台上的 Objective-C 代码。该工具使得 Java 代码可作为 iOS 应用构建的一部分,而且无需对生成的文件进行编辑。其目标是为了编写非 UI 应用的代码,包括数据访问和应用逻辑。

感觉比较鸡肋,因为除此以外的其他内容还是得专门人员去处理,所能转换的部分的效果目前不得而知,转换后需要修改的程度有多少,能不能达到100%转换也是个问题。

总结:在这里没有对web-app和native-app区别做说明,主要是对跨平台开发的方案做说明。

Categories: 移动开发