有没有办法在Windows机器上修改iPhone SDK ?有针对Windows的iPhone SDK版本的计划吗?

我能想到的另一种方法是在运行Windows的VMWare服务器上运行Mac虚拟机映像,尽管我不太确定这是否合法。


当前回答

使用跨平台工具在Windows上开发iOS应用

跨平台工具非常棒:你只需编写一次应用代码,就可以将其导出到iOS和Android平台。这可能会使你的应用开发时间和成本减半。有几种跨平台工具可以让你在Windows电脑上开发iOS应用,如果你的本地网络中有一台Mac电脑,也可以让你编译应用。

嗯,别这么快……

跨平台工具生态系统非常庞大。一方面,你有完整的集成开发环境(ide),如Xamarin,允许你用c#构建跨平台应用。

PhoneGap、Cordova、Ionic和Appcelerator等工具覆盖了中间地带,它们允许你使用HTML5组件构建原生应用。另一端包括React Native这样的小平台,允许你用JavaScript包装器编写本地应用程序。

对于所有跨平台工具来说,最突出的一点是:它们对初学者并不友好!与开始使用Xamarin相比,使用Mac、学习Swift并构建一个简单的应用程序要容易得多。

大多数跨平台工具都要求你对编程、编译选项以及iOS和Android生态系统有基本的了解。这是一个初学者所不具备的东西!

话虽如此,让我们来看看几个选择:

If you’re familiar with Windows-based development tools and IDEs, and if you already know how to code, it’s worthwhile to check out Xamarin. With Xamarin you code apps in C#, for multiple platforms, using the Mono and MonoTouch frameworks. If you’re familiar with web-based development, check out PhoneGap or Ionic. You’ll feel right at home with HTML 5, CSS and JavaScript. Don’t forget: a native app works different than a website… If you’re familiar with JavaScript, or if you’d rather learn to code JavaScript than Swift, check out React Native. With React Native you can code native apps for iOS and Android using a “wrapper”. Always deliberately choose for cross-platform tools because it’s a smart option, not because you think a native platform language is bad. The fact that one option isn’t right, doesn’t immediately make another option smarter!

如果你不想加入封闭的苹果世界,别忘了许多跨平台工具是由谷歌、Facebook、微软、Adobe和亚马逊等同样邪恶的公司运营的。

一个经常听到的反对跨平台工具的论点是,它们对智能手机硬件的访问和支持有限,而且不如原生工具“时髦”。请记住,任何跨平台工具都要求您在某一时刻编写特定于平台的代码,特别是如果您想编写自定义功能时。

其他回答

你可以使用WinChain

引用项目页面:

这是在Windows XP/Vista计算机上构建iPhone工具链的最简单方法,反过来,它可以获取你使用UIKit头文件(包含在winChain中)编写的Objective-C源代码,并将其编译成你可以在iPhone上使用的应用程序。

(截至2014年底准确)

要访问本地工具(Xcode等),有两个主要选项:

1. 虚拟机

看看mavericks (10.9) vmware映像,它与修改后的vmware工作站/播放器一起工作。一旦机器能够启动,它就可以更新到10.9.5,没有明显的问题。

优点:相对较低的学习曲线(如果你对虚拟机比较熟悉的话)

缺点:由于虚拟化环境降低了性能,没有3d加速(QE/CL)

2. Hackintosh

这是一个明智的选择,如果你计划采购新的硬件(或至少部分),而不是改造现有的设备(但你可能很幸运,有一个常见的OEM模型(如戴尔),已经编写了食谱)

好处是:硬件性能不会受到影响,甚至可能超过真正的mac。如果你对多引导开放,同样的硬件也可以用于其他操作系统

坏处:更高的学习曲线,更多的硬件限制(某些英特尔wifi没有驱动程序等),如果你原本不打算购买新硬件,这可能会转化为更高的投资

不用说,上述两种选择都不受水果公司的欢迎,因此许可合规不在讨论范围之内。

3.一台真正的mac(2016年添加)

这个选项非常适合那些已经有一台mac并通过Bootcamp等将其用作Windows开发机器的人。这也有最少的支持问题(除了多重引导可能导致的并发症),所以建议那些寻求长期解决方案的人使用(硬件不仅适用于当前的OSX版本,而且适用于未来的版本)。

现在我们可以使用Xamarin Live Player在Windows机器上开发iPhone应用程序。

使用Xamarin实时播放器开发/部署/调试周期现在可以在没有苹果系统的情况下完成。

但要签署并发布应用程序,苹果系统是必须的。

在这里找到参考资料

我查了资料,没有什么可疑的

另外两个选择

Titanium Developer -免费社区版-使用HTML/JavaScript编写-使用Xcode编译(需要Mac或VM) OpenPlus ELIPS Studio -用Flex编写,在Xcode上编译(需要Mac或VM) -他们刚刚开始对他们的产品收费。

我认为可能会有“工具链”选项,这些选项允许你在Windows上编译成二进制文件,我看到你可以上传一个zip文件,并在网上完成工具链风格的编译,但这违反了苹果的授权。

如果我没有错的话,像Titanium这样输出/使用Xcode并且不使用任何第三方/替代/受限库的产品应该是合规的,因为你最终是在Xcode中编译的——普通的Objective-C代码和库。

Visual Studio + Xamarin将做这项工作。

不过,我还是建议你买台Mac电脑,用Xcode开发iOS应用。

在罗马,要像罗马人一样生活。