iOS和Android编程

3

我已经开发了几个Android应用程序,目前正在从头开始开发一个iOS应用程序。 是否有任何方法可以使我专注于开发iOS应用程序,以便我可以重用其中一些组件或功能来开发Android平台上的同一应用程序?


只是想补充一些内容。如果您坚持使用MVC模型,所有的“M”部分都可以用C++编写并直接共享。不要尝试共享视图或视图控制器代码,因为这两个环境实在是太不同了。 - borrrden
2个回答

3
有没有一种方法可以集中精力开发我的iOS应用程序,以便我可以重用其中的某些组件或功能来开发Android平台上的同一应用程序?如果您使用Web技术(HTML、CSS、Javascript),则可以。如果您构建基于Web的应用程序或混合应用程序,即在本地外壳内运行基于Web的内容的应用程序,则可以执行此操作。如果您有兴趣构建混合应用程序,请查看PhoneGap-它提供了一个快速入门的方法。还有一些跨平台框架,如Titanium,声称提供编写一次/在几个平台上运行的功能。如果您想在两个平台上完全使用本机构建应用程序,则无法重用应用程序逻辑。iOS和Android使用不同的框架,使用不同的语言在不同的硬件上运行,并且每个平台上的应用程序工作方式也略有不同。即便如此,您可以重复使用驱动应用程序的基础设施所做的任何工作。大多数应用程序都依赖于某种服务器基础架构来提供或收集数据,该服务器组件可以轻松为在任何平台上运行的应用程序提供服务。

1
谢谢您提供的信息 :)...我想了解更多...您能指导我吗?比如说,我想在某个Xcode软件或其他特定软件上开发iOS应用,然后再使用Java Eclipse在Android上开发相同的应用程序。任何iOS组件可以重复使用于Android应用程序开发中吗?虽然整个代码肯定不能重复使用,但是其他组件呢? - Unknown
如果是本地代码的话就不行了。Android应用程序是用Java编写的,并使用Android提供的组件和架构。iOS应用程序通常是用Objective-C编写的,并使用Cocoa Touch中的组件。正如我所提到的,有一些方法可以尝试使用基于Web的界面或跨平台技术(如Titanium或Adobe Air)进行跨平台开发。但是,如果您编写了一个本地的Android组件,它将无法在iOS上工作,反之亦然。 - Caleb
在这个领域里是否有任何试验和研究的空间? - Unknown

2
如果您正在开发相同的应用程序,则可以使用j2objc将您的Java(非UI或硬件/平台特定)代码转换为Objective-C。
从描述中可以看出:
J2ObjC是来自Google的开源命令行工具,可将Java代码转换为iOS(iPhone / iPad)平台的Objective-C。该工具使Java代码能够成为iOS应用程序构建的一部分,因为不需要编辑生成的文件。目标是在Java中编写应用程序的非UI代码(例如数据访问或应用程序逻辑),然后通过Web应用程序(使用GWT),Android应用程序和iOS应用程序共享该代码。

你能详细说明如何在iOS和Android之间进行重用吗? - Unknown
哦,抱歉,我误读了你的问题...我以为你想要相反的方式。 - Ahmad
但是,Objective-C 能否转换为 Java 以翻译算法? - Unknown
这个领域有研究的空间吗? - Unknown
所以iOS到Android的反向转换不可能吗?...可以尝试吗? - Unknown
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接