iOS / Android跨平台开发

时间:2011-05-29 23:32:52

标签: android ios cross-platform

我一直在玩Java开发Android应用程序一段时间,并开始处理它。但是,如果我想在iOS版本上启动,我需要从头开始编写所有内容 - 这是不可取的。

我想知道可用的跨平台解决方案以及它们在实践中的运作情况。我一直在考虑使用Web应用程序 - 可能使用jQuery MobileTitanium或Adobe Flash / Flex / Air。我还没有Mac,我可能不得不投资。

所以我的问题:

  1. iOS / Android(和/或其他设备)有哪些跨平台开发环境?

  2. 您使用这些工具的经历是什么? (这是我真正想知道的)

9 个答案:

答案 0 :(得分:103)

答案 1 :(得分:15)

MonoTouch和MonoDroid但是现在任何人都会猜测Attachmate的这一部分会发生什么。当然,即使使用单声道解决方案,您仍然可以创建非跨平台视图,但其目的是重用业务逻辑。

密切关注http://www.xamarin.com/看看他们想出什么会很有趣。

答案 2 :(得分:11)

我在PhoneGap + jQuery Mobile中制作非常简单的经验很好。我能够快速为iOS做到这一点。但是,如果不进行一些更改,它在我的Android手机上无效。该项目是一个非常简单的应用程序,可以拍照并将它们发布到网站上。在一天结束时,与真正的原生应用程序相比,它感觉“笨拙”。

我不相信会有简单的跨平台开发。我认为浏览器尽可能接近。通过选择类似PhoneGap之类的东西,我认为你只是为一组不同的痛点交换一套痛点。

答案 3 :(得分:7)

如果您不想使用完整的框架进行跨平台开发,请查看C ++作为选项。 iOS完全支持通过Objective-C ++将C ++用于您的应用程序逻辑。我不知道Android通过NDK对C ++的支持是如何适合用C ++编写业务逻辑而不仅仅是一些性能关键的代码片段,但是如果用例得到很好的支持,你可以尝试一下。

这种方法当然只有在您的应用程序逻辑构成项目的最大部分时才有意义,因为必须为每个平台单独编写用户界面。

事实上,C ++是受支持最广泛的编程语言(C除外),因此是大多数大型跨平台应用程序的核心语言。

答案 4 :(得分:5)

虽然我刚刚开始研究这个开发领域,但我认为它归结为这个基本的区别:一些工具保留原始代码,一些端口保留原生代码......

例如,PhoneGap只保留您编写的HTML / CSS / JS代码,并将其包装在足够的iOS代码中以作为应用程序资格,而Appcelerator为您提供XCode项目...所以如果您不熟悉使用iOS,然后通过PhoneGap不会给你带来任何好处,但是如果你 DO 知道一点,这可能会让你在更大的编码后调整本机版本的能力更强一些努力。

我自己没有使用过appcelerator,但几周前我们的一个团队成员在一个项目中使用它制作了一个完整的iPad应用程序。

是的,要实际提交给苹果,你必须得到一台Mac,但如果这不是你的主要工作平台,你可以便宜。

答案 5 :(得分:3)

CappuccinoPhoneGap

有时虽然尝试找到快捷方式并不能节省您的时间或为您提供类似的最终产品。

答案 6 :(得分:3)

如果你曾经使用过LUA,你可以试试Corona SDK可以创建在IOS和Android上运行的应用程序

http://developer.anscamobile.com/

我已经下载并搞砸了一些,我发现LUA是一种非常容易学习的脚本语言,没有通常的脚本语言麻烦/限制....

答案 7 :(得分:3)

还有MoSync Mobile SDK

GPL和商业许可。他们的方法有很好的概述here

答案 8 :(得分:2)

还有我们过去18个月一直在使用的BatteryTech,并已经发布了几款游戏。 http://www.batterypoweredgames.com/batterytech

所有C ++,Android和iOS支持,所有用户都获得完整的源代码。新的v2包括lua绑定。