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

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


当前回答

查看nsbasic /App Studio。这是iPhone的Visual Basic。(当然你也可以用JavaScript编写代码)。它生产的WebApps无需通过App Store就可以发布。应用程序也可以运行在其他平台上,比如Android。 nsbasic /App Studio

其他回答

还有来自制作Ext JS的公司的Sencha Architect和Sencha Touch。

在Windows机器上开发当然是可能的,事实上,我的第一个应用程序是专门在我当时拥有的旧戴尔Precision上开发的:)

有三条路线;

Install OSx86 (aka iATKOS / Kalyway) on a second partition/disk and dual boot. Run Mac OS X Server under VMWare (Mac OS X 10.7 (Lion) onwards, read the update below). Use a framework and/or toolset, which allows developing on Windows, like Delphi XE4 with the mac-in-cloud service, which can build without MacOS device need. This is a commercial toolset, but the component and lib support is growing. Other honorable mentions are Flutter, Xamarin and similar; which may at end need actual MacOS device for final build (but you can test on Android till then, as they're cross-platform).

第一种方法需要修改(或使用预先修改过的)Leopard映像,该映像可以安装在普通PC上。这并不像你想象的那么难,尽管你的成功/努力比率将取决于你的PC硬件与Mac硬件的匹配程度——例如,如果你在英特尔主板上运行酷睿2双核,配NVidia显卡,你会笑。如果你运行的是一台没有SSE3的AMD机器,那么它就会变得复杂一些。

如果你购买了(或已经拥有)一个版本的Leopard,那么这是一个灰色区域,因为Leopard EULA规定你只能在“Apple标签”的机器上运行它。正如许多人指出的那样,如果你在你的电脑上贴上苹果贴纸,你可能就有保险了。

第二种选择成本更高。工作站版Leopard的EULA阻止它在模拟下运行,因此,VMWare中不支持这一点。然而,Leopard服务器可以在模拟下运行,并可用于桌面目的。然而,Leopard服务器和VMWare是昂贵的。

如果你对选项1感兴趣,我建议你从Insanelymac开始,阅读OSx86部分。

我确实认为你应该考虑你投入的时间是否值得你省下的钱。对我来说,这是因为我喜欢摆弄这类东西,我是在iPhone早期测试版的时候开始的,当时苹果应用商店还没有上线。

或者,你也可以从eBay上买一台低规格的Mac Mini。你不需要太多的马力来运行SDK,如果你决定停止开发或购买更好的Mac,你可以随时出售它。

更新:无法为OS X 10.6及更早版本创建Mac OS X客户端虚拟机。苹果不允许虚拟化这些客户端操作系统。随着Mac OS X 10.7 (Lion)的推出,苹果改变了虚拟化方面的许可协议。来源:VMWare知识库

(截至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版本,而且适用于未来的版本)。

你可以在PC上安装OSX,但体验不会很好,它需要大量的工作。另一种选择是使用一个框架/SDK代号:它基于JAVA,可用于WP8、Android、iOS和Windows (eclipse)上的所有广泛功能的编码

功能概述:

完整的Android环境与超快的Android模拟器 一个iPhone/iPad模拟器,可以在几分钟内轻松将iPhone应用程序转移到大屏幕iPad。 完全支持标准java调试,分析应用程序在任何平台。 简单的主题/样式-只需点击即可

更多关于使用Java开发Android, iOS iPhone, WP8应用程序 免责声明:这是我对产品的评论

使用跨平台工具在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和亚马逊等同样邪恶的公司运营的。

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