有没有办法在Windows机器上修改iPhone SDK ?有针对Windows的iPhone SDK版本的计划吗?
我能想到的另一种方法是在运行Windows的VMWare服务器上运行Mac虚拟机映像,尽管我不太确定这是否合法。
有没有办法在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和亚马逊等同样邪恶的公司运营的。
一个经常听到的反对跨平台工具的论点是,它们对智能手机硬件的访问和支持有限,而且不如原生工具“时髦”。请记住,任何跨平台工具都要求您在某一时刻编写特定于平台的代码,特别是如果您想编写自定义功能时。
其他回答
你可以使用Sentenza为iPhone和Windows制作应用程序。 测试成功了。 这不是一个解决方案,而是一个很好的选择!
你可以使用WinChain
引用项目页面:
这是在Windows XP/Vista计算机上构建iPhone工具链的最简单方法,反过来,它可以获取你使用UIKit头文件(包含在winChain中)编写的Objective-C源代码,并将其编译成你可以在iPhone上使用的应用程序。
Xamarin是一个可靠的选择。它被微软收购,现在被直接构建到Visual Studio中。你用c#编程。通过他们所添加的所有更新和功能,你可以做任何事情,除了从Windows上提交到App Store,甚至可以编译、构建和部署到iOS设备上。
对于游戏来说,Unity 3D是一个很好的选择。该编辑器可免费用于开发,甚至用于发行(如果你的年收入低于10万美元)。Unity支持iOS、Android和大多数其他平台。也许可以使用Unity的“Cloud Build”功能来避免使用Mac进行部署,尽管默认情况下Unity在为iOS构建时实际上会吐出一个Xcode项目。
其他选项:
PhoneGap (html/javascript)也可以。它对于游戏来说不太好,但是对于常规的GUI应用程序来说已经相当不错了。
Flutter (dart)是来自谷歌的免费跨平台移动应用程序开发框架。用Dart编写代码。
React Native (javascript)是Facebook创建的另一个流行的跨平台框架。
注意:对于所有这些选项,所有或大部分的开发都可以在Windows上完成,但MacOS设备仍然需要构建二进制文件提交给App Store。一种选择是买一台便宜的MAC Mini来完成你的最终构建。
如果您有一个越狱的iPhone,您可以通过Cydia将iPhone -gcc工具链安装到iPhone上,这样您就可以在iPhone上编译应用程序。通过这种方式开发的应用程序仍然可以提交到App Store。
尽管瓦尔迪兹先生说这是一个灰色地带(事实确实如此),但越狱非常容易,而且几乎没有风险。是的,它使你的保修失效,但你可以做一个恢复,他们永远不会知道。
使用跨平台工具在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和亚马逊等同样邪恶的公司运营的。
一个经常听到的反对跨平台工具的论点是,它们对智能手机硬件的访问和支持有限,而且不如原生工具“时髦”。请记住,任何跨平台工具都要求您在某一时刻编写特定于平台的代码,特别是如果您想编写自定义功能时。