Windows Phone的本机iOS/android应用程序

Windows Phone的本机iOS/android应用程序,android,ios,iphone,windows-phone-8,Android,Ios,Iphone,Windows Phone 8,我有一个iPhone应用程序(与android对应),用Xcode开发,用Objective-C编写。它是一个经典的原生iOS应用程序,已经在应用商店中运行并上传。类似地,android版本是用Java构建的,并与android SDK链接。它被上传到市场上 我被要求将应用程序移植到Windows Phone。这在不修改代码的情况下是可能的吗? 我不熟悉Windows Phone开发,但是看起来这是一个完全的问题 开发应用程序的独立生态系统(不同的编程语言、不同的IDE、不同的应用商店等) 我可

我有一个iPhone应用程序(与android对应),用Xcode开发,用Objective-C编写。它是一个经典的原生iOS应用程序,已经在应用商店中运行并上传。类似地,android版本是用Java构建的,并与android SDK链接。它被上传到市场上

我被要求将应用程序移植到Windows Phone。这在不修改代码的情况下是可能的吗? 我不熟悉Windows Phone开发,但是看起来这是一个完全的问题 开发应用程序的独立生态系统(不同的编程语言、不同的IDE、不同的应用商店等)

我可以从Android转到Windows Phone还是从iOS转到Windows Phone


PhoneGap或类似的平台不是选项,因为代码已经用Objective-C和Java编写

在我看来,没有办法将iphone应用程序直接移植到windows phone应用程序。您需要使用所需的环境(如Visual Studio、windows phone sdk和windows操作系统)开发windows phone应用程序


如果phonegap符合您的要求,您也可以使用phonegap等跨平台应用程序。

不,您不能,WP应用程序是使用c#或.net和visual studio IDE构建的。没有一种自动的方法可以将以前用Objective-c或java构建的编码为ios或android的本机应用程序移植到WP

与iOS和Android一样,Windows Phone是一个完全不同的操作系统,目前需要一个完全不同的开发平台

无法获取现有代码并使其在Windows Phone上运行

  • iOS通常使用Objective-C进行应用程序开发。即使有办法将Objective-C编译到Windows Phone上,它也与平台功能和UI控件有着内在的联系。虽然你可以在C++中编写一些代码并与之共享,但你仍然需要。李>
  • Android应用程序通常使用Java。Java不适用于Windows Phone平台。所以,语言已经过时了。此外,与iOS一样,平台功能不一定共享,UI控件和行为也不同。Android应用程序可以使用C++(如果你碰巧使用它),但它也可以使用它,你可能会把代码捆绑到Android平台上。有些代码可能是可移植的
  • Windows Phone应用程序通常用C#/C++和XAML或DirectX编写。虽然语言(Java和C#)有一些相似之处,但您将遇到更多的平台差异,这些差异可能需要进行大量转换。从发出网络请求的方式到处理线程的方式将有所不同(还有更多)。Objto-C与C++有很大的不同。李>

除非你使用一个通用的平台(C.A./.NET)来编写和编写底层的业务逻辑,否则你需要考虑一个端口到Windows Phone的新的开始。p> 仅仅重用所有已编写的代码是不可能的。通过仔细的努力,您可以共享一些通用代码(如果它是用C++编写的),但是由于共享代码不会直接与UI(和其他平台功能)一起工作,因此您仍然需要在每个平台上执行UI,绕过限制,并可能自定义每个平台的用户体验


微软提供了一些关于移植的指导,并提供了一些API等价表的链接

看起来您有一个适用于iOS的现有Obj-C代码库和一个适用于Android的Java代码库。无论您如何裁剪,您都在考虑[重新]编写代码,以便在WP8上获得一些东西

我不知道你的应用程序有多“UI重”;一般来说,UI代码是最特定于平台的(除非你愿意忍受可能没有好的UX的“跨平台”的东西)

<>你可以考虑将非UI代码主要保持为纯C++,并使用Obj-C等,只用于那些必须与框架对话的部分。用C++支持多个平台更容易。
我在一个正在开发的应用程序中采用了这种方法;它的目标是iOS,但它大约是80% C++(包括开放GL)。如果我决定移植到Android,我只需要处理20%的用户界面代码。

是的,您可以使用Microsoft的Windows bridge for iOS将iOS应用程序代码转换为Windows mobile平台代码

为此,您需要使用Microsoft提供的WinObjC SDK


请按此了解更多详细信息

实际上,主要的问题是,是否有可能在没有代码的情况下直接将iphone应用程序(或android)移植到windows phonemodify@Avanz,有很多多平台技术,比如phonegap、xamarin、codename one、qt。但是,如果你一开始没有使用其他平台构建应用程序,它们中的任何一个都允许你将应用程序移植到其他平台。在问题中,OP说“PhoneGap或类似平台不是选项,因为代码已经用objective c和java编写。”所以不要评论QT是否可行,因为如果他有本机代码,本机代码不会在其他平台上工作整个iOS应用程序都是用objective-c构建的,整个Android应用程序是用java构建的,我不知道他从哪里得到C++,因为我还没有从CATEOF读过。因此,没有简单或即时的端口。即使您使用codename one,即使用java进行开发,现有的android java代码也无法工作。我们可以清楚地看到,C++可以用于跨平台开发,但这不是问题。