开发原生应用程序以在Android和iPhone上运行?

问题描述:

我是新手机开发人员,但我不知道是否有任何方法可以开发原生应用程序(基于HTML的应用程序是另一回事),可以在Android和iPhone上运行?我知道这两种操作系统都有可用的应用程序,所以我想知道它们是如何移植到两个目标上的?开发原生应用程序以在Android和iPhone上运行?

+0

[技术可同时编写iPhone,BlackBerry和Android手机?](http://support.microsoft.com/kb/821085/technology-to-write-iphone-blackberry-and-android-phone在同一时间) – 2010-09-20 16:49:11

+0

另请参见[在跨平台移动开发方面做了哪些工作?](http://*.com/questions/51988/what-work-has-been-done-on跨平台移动开发),[移动设备跨平台开发](http://*.com/questions/2380196/cross-platform-development-for-mobile-devices),[跨平台iPhone/Android代码共享](http://*.com/questions/2380258/crossplatform-iphone-android-code-sharing)和许多其他类似的问题。 – 2010-09-20 16:50:21

您可以简单地拥有两个不同的项目,具有相同的设计和图形,或者,您可以使用一些框架,如PhoneGapRhomobile

最好的方法是有两个不同版本的代码,所以你可以利用你正在使用的平台。

+0

我不会推荐Rhomobile,我认为Rhodes框架还不够成熟。由此产生的接口非常笨重,非常非本地的感觉。在做出决定之前,请查看他们在客户之下列出的应用程序,并注意*不再使用Rhodes。 – 2010-09-21 23:52:38

+0

当然,最好的方法是为每个平台使用不同的本地应用程序版本。 – bontoJR 2010-09-22 11:20:42

+0

好的,但这基本上意味着两次写同一个应用程序。没有办法重用代码(至少在某种程度上),同时仍然保持原生应用的优势?从头开始编写应用(仅共享资源)是否是一种常见做法? – akoprowski 2010-09-22 11:53:57

您可以通过利用MonoTouchMonoDroid优势股非UI逻辑和代码库的显著量。它们是本地框架,它提供围绕iPhone和Android本机API的C#绑定。它们具有能够在C#中开发的附加优势,其中IMHO比Obj-C和Java更好。