将iPhone应用移植到Android平台

3

我正在尝试将我的iPhone应用程序移植到Android平台上。我想知道是否有任何方法可以直接将我的iPhone应用程序或代码移植到Android上?我是否需要从头开始为Android平台编写整个应用程序,还是有什么方法可以减少我的工作量?谢谢。


duplicate...https://dev59.com/5HE85IYBdhLWcg3wvGKm - himanshu
2个回答

6
据我所知,目前没有办法在不同平台之间移植应用程序,并且您无论何时都不会想这样做。Android和iPhone是两个截然不同的平台,拥有各自独特的界面、API层、设计指南等。例如,在iPhone上,您可以使用导航栏并将标志/标题置于中心位置,左侧有返回按钮,右侧有其他按钮。而在Android中,您会使用操作栏,将标志/标题放在左侧,操作按钮放在右侧,可能还包括额外按钮的下拉列表。

显然,有一些概念是“共享”的,例如选项卡浏览(虽然这在Android中被仪表板概念和其他导航方式取代),但是您永远不应该在这两个平台之间进行移植。您应该始终从头开始。

跨平台框架也是一样的...这两个平台有太多不同和独特的地方,您需要编写大量特定于平台的代码,这样维护一个代码库就毫无意义。


感谢Thomas的精彩解释。 - Paresh Masani
一个非常有见地的答案,涉及到为什么移动应用程序正在逐渐毁掉开放的互联网,正如这篇文章所描述的: http://www.tnl.net/blog/2012/03/03/i-killed-the-internet/ 幸运的是,一些主要的内容提供商已经意识到了这一点,并开始转向“轻量级”应用程序,实际上只是呈现从某个服务器获取的HTML5 GUI。 - Jolta
文章简述:tldr。然而,回应您的评论,本地应用程序始终比HTML5渲染的应用程序提供更好的用户体验。我习惯以本地方式使用我的Android手机,不想为了迎合那些想创建跨平台应用程序的人而不得不“学习”新事物。此外,将外部HTML加载到Webview中是很繁琐的。如果我遇到这样的应用程序(这种应用程序很少见,有很好的原因),我通常会卸载它们。我宁愿在必要时访问网站。 - Thomas Clayson

-1

我相信没有一个程序可以为你移植。

Android是用Java编写的,但他们也开发了一个基于C++的NDK。 因此,如果您已经为iPhone编写了应用程序,则使用C++(NDK)将其移植到Android可能比使用Java编写更容易。

您可以使用第三方工具创建适用于两者的应用程序。这就是Titanium和PhoneGap的目标。随着SDK协议的新变化,它们似乎并不真正“合法”,或者至少违反了协议。

但是我不是100%确定。


我猜你是指C++而不是C#。 - Thomas Clayson

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