[Ios] 如何使用Windows开发机器为iPhone开发?


Answers

如果你有一个越狱的iPhone,你可以通过Cydia将iphone-gcc工具链安装到iPhone上,这样你就可以在iPhone上编写应用程序。 以这种方式开发的应用程序仍然可以提交给App Store。

虽然Valdez先生说这是一个灰色地带,但越狱非常简单,几乎没有风险。 是的,这会让你失去信心,但你只能做一次恢复,而且永远不会知道。

Question

有什么办法来修补Windows机器上的iPhone SDK? 是否有Windows版iPhone SDK版本的计划?

我能想到的唯一方法就是在运行在Windows上的VMWare服务器上运行Mac VM镜像,尽管我不太确定这是如何合法的。




大多数“没有Mac的iOS开发所谓的Windows解决方案”要求Mac在最后签署并发送到应用程序商店。 我检查了一些,但不是所有(谁有时间?)

最后,学习“他们的超级特别简单的方法来编程iOS没有Objective-C”太麻烦了,他们有很多的错误。 在我看来,他们所设定的目标是无法实现的。

还有很多时候,他们只是使用另一种语言来使用Objective-C等价语句。 他们看起来一样,但总是有细微的差别,你必须在obj-c之上学习。 这也使得更少的意义,因为现在,而不是学得更少,你必须学习更多。 那么收益在哪里? 而且他们花费很多,因为他们很难发展。

许多缺乏任何调试能力。

我诚实地认为,如果你是一个核心的iOS开发人员,那么肯定会购买最好的Mac,学习Objective-C。 这是昂贵的,需要时间,但如果这是你的道路,这是值得的。

对于偶尔使用,租用远程Mac服务(如XCodeClub.com)更容易




SDK仅在OS X上可用,强制您使用Mac。 如果您不想购买Mac,则可以在Windows的虚拟机上运行OS X,也可以在PC上安装OS X。

根据我的经验,虚拟机解决方案的速度太慢了(在使用2G RAM的core2 duo笔记本电脑上)。 如果你想尝试搜索洪流。 这可能是不值得的。

另一种选择是在您的电脑上安装OS X,通常称为hackintosh。 Hackintoshes工作得很好 - 我的朋友刚刚卖掉了他的Mac,因为他的戴尔四核hackintosh实际上比苹果硬件要快得多(成本约为1/3)。 你可以找到很多有关如何做到这一点的文章; 这里有一个关于如何安装戴尔Inspirion 1525笔记本电脑: hackbook专业教程

当然,这两种方案都可能与某些许可方案相悖,因此请自行承担风险。




你可以使用Tersus (免费,开源)。




一个开发工具,允许用Objective-C, C++开发iPhone应用程序,或者用Visual Studio开发C:

iOS build env上检查一下

您可以直接在Visual Studio(2008,2010,Express)中构建iPhone应用程序。

相当整洁,甚至在编译成功后为你的应用程序生成IPA文件。 该代码在越狱设备上运行,对于地球上的其他人来说,我相信最终编译和提交到App Store必须在Mac上完成。 但是,它仍然可以使您使用知名的IDE进行开发。




试试macincloud.com它允许你租用一个mac并通过RDP远程控制访问它。 然后,您可以使用您的PC访问Mac,然后开发您的应用程序。




如果你希望它是合法的,你有两个选择,基于云计算的Mac解决方案或跨平台开发工具。 如果你不关心合法的东西,你可以考虑hackintosh方法或虚拟机。 如果你有一个体面的PC,运行虚拟机将是最简单的方法。 你可能永远也不知道哪一个硬件会在hacksintosh上出现驱动问题。

我已经尝试了所有这些方法,他们都有优点和缺点,但对于第二组,我感到内疚。 我开发应用程序谋生,而我不想为其他人撕掉。

如果您正在制作一个小型项目,基于云的Mac可能会有用。 租一小段时间,开发你的项目,然后离开你。 不要去学习任何新东西。

但是,如果您的项目越来越大,跨平台框架似乎是唯一的选择。 关键的是你需要明智地选择。 有这么多的混合框架,但是他们做的事情可以用一句话来概括为“在应用程序包装中浸入网页”,而开发人员对混合框架的负面经历也会影响本地框架。

我尝试了三种(Titanium,Smartface和Xamarin),他们都声称产生“真正的本地产出”,我认为他们的说法是正确的。 你需要测试,看看它是不是很容易描述本地的感觉。 在之前的评论中,有人指出,学习这些平台需要一些努力,但是一旦了解了这些平台,就可以开发不仅仅是iOS应用程序,而且还可以开发Android应用程序,所有这些都具有通用的代码库。 当然,它们比云端Mac便宜得多。 有些甚至是免费的。 您只需要一台Mac用于商店提交。

如果您了解JavaScript,请尝试Titanium和Smartface,如果您了解C#,请尝试Xamarin。 请注意,对于设备仿真器,Titanium依赖于Mac,但是Smartface有一个用于Windows开发的模拟器应用程序,它比我预期的更好。 另一方面,Xamarin需要在您的网络中使用Mac。




如果你想创建iPhone应用程序,但没有Mac,那么你应该尝试http://www.pmbaty.com/iosbuildenv/

它使您可以轻松开发原生的iOS应用程序,例如XCode,可以在任何iPhone,iPod或iPad上进行部署(越狱或不使用)。

使用您最喜欢的IDE在Objective-C,C ++,C或ARM程序集中进行编码,就像在XCode中一样。 支持ARC和块。

在Visual Studio中直接编译你的iPhone应用程序

它适用于Windows所有版本(XP,7,8),FreeBSD和Linux

现在与iOS8的支持。




看看这个:

在视图

这是一个试图将各种源语言编写的程序交叉编译成各种目标语言的项目。 最初的测试案例之一是用Java编写程序,并在iPhone上运行它们。 在网站上观看视频是值得的。

就这样说,我没有尝试过。 该项目看起来相当不错,而且在SourceForge网站上没有太多活动。




您可以在WINDOWS PC上开发IPHONE应用程序。 我已经做到了,用复杂的应用程序。 它完美的作品。 您可以开发iPhone应用程序,而无需看到Mac或iPhone。

您可以使用Sencha或JQTouch或mobi1等工具在Windows上开发HTML(或更好:HTML5)应用程序。 (他们以前都是免费的)

然后你使用openSSL来签署应用程序。 和Adobe PhoneGAP Build服务搭建iPhone App。

但是你需要iPhone开发者许可证才能在iPhone上安装它。 但是在任何时候你都不需要Mac或者iPhone来编译,编译或者测试它 - 所有这一切都是在PC上完成的。

我已经完成了,它完美的工作。 (但是,Android类型的响应速度 - 不如本地iPhone应用程序快)

你也可以使用巴比伦时代(大约300年前)运行C和C ++的程序,称为蜻蜓。 如果你的应用程序有一个或两个屏幕交互性有限,而且有很多计算,那就去做吧。 它包括一个模拟器。 你按下按钮编译到iphone。 (不知道,但我想你确实需要开发者许可证)

然后是Xamarin。 您在C#中开发了对本地代码的特殊调用。 你必须学习环境。




另外两个选项

  1. Titanium Developer - 免费社区版 - 用HTML / JavaScript编写 - 用Xcode编译(需要Mac或VM)

  2. OpenPlus ELIPS Studio - 在Flex中编写,在Xcode上编译(需要Mac或VM),但是他们只是开始为他们的产品收费。

我认为可能有这些和其他一些提到的“工具链”选项,它们允许您在Windows上编译为二进制文件,而且我已经看到,您可以上传一个zip文件,并在线为您完成工具链样式编译,但是这违背了苹果的授权。

如果我没有弄错,像Titanium这样的输出/使用Xcode并且不使用任何第三方/替代/限制库的产品应该符合规范,因为您最终是在xcode中编译正常的Objective-C代码和库。




是的,你不需要学习Objective-C和购买苹果软件和硬件。

Adobe已经从ActionScript 3 创建了编译器来为iOS编程。 后来,苹果批准了这种应用程序创建方法。

这是在Windows或Linux / BSD(另一个用于MacOS-X)下创建Apple应用程序的最佳方式,




如果你想在Windows环境下开发一个应用程序,那么有一个选项,你可以在你的windows平台上安装MAC OS平台名称是:“Niresh'MAC OS”,你可以在Google上搜索那个文本

那么你可以下载整个MAC操作系统的源代码,并轻松地安装在您的Windows PC的MAC操作系统,Niresh是能够攻克整个操作系统。

希望这会帮助你。




正如很多人已经回答的那样,iPhone SDK仅适用于OS X,我相信苹果公司绝不会在Windows上发布它。 但有几个可供选择的环境/框架允许您开发iOS应用程序,甚至包装并使用Windows机器以及MAC提交给AppStore。 这里是最流行和相对更好的选择。

PhoneGap ,允许使用HTML / CSS / JavaScript创建基于Web的应用程序

Xamarin ,C#中的跨平台应用程序

Adobe AIR ,使用Flash / ActionScript的空中应用程序

Unity3D ,跨平台的游戏引擎

注意: Unity需要Xcode,因此需要OS X来构建iOS项目。




如果你有一个Mac的ssh访问,那么你可以使用一个VCN(如Vine VCN,它允许一次使用多个用户 - 瘦瘦的客户端)来控制XCode。

如果您想从笔记本电脑访问Mac Mini,或者您的Mac正在占用您的MacBook,这可能会很有用。