只使用PhoneGap Build而无需Mac硬件,如何构建完整功能的iOS应用程序?

5
由于支付99美元购买苹果开发者计划对我来说是一个有点困难的决定(特别是如果这将是浪费的钱),那么问题就很简单:我能否仅使用PhoneGap Build构建全功能iOS应用程序,并将其提交(当然还要获得接受!)到App Store,而不需要任何类型的Mac硬件或使用像Macincloud这样的付费服务?
我没有任何类型的Mac。我所拥有的唯一物品是未越狱的3年老iPad Mini。因此,我可以在真实的基于iOS的设备上测试我的iOS应用程序(如果这在应用程序提交过程中是必需的),但我无法使用任何开发工具、SDK等来实际构建它。
我之所以问,是因为我完全感到困惑。我大约两年前接触过这个话题,然后我问了this question。我得到了一份步骤和教程列表的回复,但同时也得到了明确的信息,即我可以创建和部署iOS应用程序,而不需要任何苹果硬件
我把这个主题搁置了两年。当我回到它时,我发现一个支持问题, 一篇博客文章, Stack Overflow问题一篇文章,它们都或多或少肯定地表示,拥有真正的Mac机器或类似Macincloud服务的访问权限是创建iOS应用程序的必要条件
例如,在提到的支持问题的第三个答案中,Petra V.说:

是的,如果你想上传到AppStore,除非使用像Macincloud这样的付费服务,否则需要Mac(不需要xCode,只需ApplicationLoader)

现在,我完全迷失了,因为这个陈述与Amir两年前说的完全相反。因此,有人能给我一个可验证的关于这个问题的当前状态的信息吗?

我能够仅使用HTML5、浏览器和PhoneGap Build构建一个经过正确签名并被AppStore接受的操作系统应用程序吗?无需Mac硬件或额外的服务?

这不是this question的重复,因为它唯一的答案已经超过一年了(而且这个领域变化很快),并且有:

我认为要发布到应用商店,仍然需要带有Xcode的Mac

有人的信仰可能是准确的,也可能是错误的。这并不是我愿意用99美元打赌的事情。这就是为什么我要求一个可验证最新的答案。


我认为这是一个两部分的问题。首先,是否有可能制作一个可接受的iOS应用(完全功能是不准确的,因为有太多功能有时在第三方库中可用,有时又不可用)。比如说如果是游戏,那就完全是另外一回事了。而第二部分是,是否有可能免费提交到应用商店,这是绝对不可能的!你需要支付费用才能将你的应用放在苹果应用商店上,并且每年都要这样做才能保留它。所以重点是第一部分,看看你有兴趣做哪种类型的应用。 - Maziyar
我完全崩溃了!你从哪里得出这些结论的?没有人要求不付费就提交。很明显,我需要在一切之前支付标准的苹果开发者费用。我想知道 -- 在注册ADF和所有适当的证书、签名密钥等之后 -- 我是否需要Mac硬件或类似于Mac云租赁的服务。我的问题与金钱无关! - trejder
2个回答

2
构建应用程序并将其提交到Apple的步骤如下:
  1. 编译应用程序。
  2. 通过Application Uploader上传应用程序。
要实现第一步,您需要一台Mac电脑。您需要的iOS SDK包含在Xcode中。Xcode是一款让您构建iOS应用程序的Mac应用程序,仅适用于Mac。
还有其他方法可以编译应用程序,但基本上您将做的是“租用”他们的Mac电脑或服务器(例如Adobe Cordova Build)。
要实现第二步,您也需要一台Mac电脑。
是否有绕过使用Mac的方法?如果您有一台PC,可以尝试HackIntosh,这是一种针对Mac OSX的黑客方式,理想情况下,它可以让您在PC上运行Mac OS。不过,我不建议您选择这条路。即使您拥有与Mac硬件高度兼容的硬件,它仍然是一种黑客方式,任何应用程序的更新、操作系统小更新等都可能破坏您的HackIntosh。

你的回答似乎部分有误。你确实可以编译iOS应用程序(第一点)而不必拥有Mac,可以使用MacinCloud或Phonegap Build。你可以在你的PC上本地构建,使用本地安装的Phonegap。据我所知,只有在第二点(提交应用到应用商店)时才需要Mac。 - trejder
有趣。据我所知,你不能在本地PC上使用phonegap构建并将你的构建运行到真实的iOS设备上。如果有任何链接可以向我展示如何从PC编译iOS应用程序,我会非常感兴趣。 - lnjuanj

1

虽然two other个答案已经回答了这个问题,但是我想添加一些更多的细节,这是我从其他来源获得的,并总结了这个问题。

你无法仅使用PhoneGap Build向App Store提交iOS应用程序,没有任何类型的Mac硬件或不需要使用像MacinCloud这样的付费服务。阿门。

现状

两年前(根据Amir在问题中引用的答案),将iOS应用程序提交到App Store是可能的,但现在不再可能,正如此Phonegap Build支持答案所述:

在技术领域,两年是很长时间。是的,苹果引入了一种新的上传应用程序的方法,强制使用实际的Mac。随着应用程序的增长,通过浏览器上传变得有问题,因此构建了一个自定义应用程序来管理提交过程的那一部分。

我可以补充一点,苹果的商业模式似乎也很明显,强迫人们购买甚至是微小的、旧的Mac电脑,只为了将应用程序提交到应用商店。
你可以编译你的应用程序(在注册苹果开发者计划、获取所有必需的证书和签名密钥并将它们上传到Phonegap Build之后),直到获得最终的.ipa文件,但你仍然需要一些“与Mac相关”的东西来运行ApplicationUploader并将你的应用程序上传到商店。
这个理论得到了这个Phonegap Build支持答案的证实:
那个说法仍然有效。事实上,我有两个新的应用程序要发布,除了.ipa上传部分(这是在Windows机器上使用iTunesConnect过程中的一步)之外,我将使用我的Windows机器进行所有操作。文件上传在我的旧Mac上使用ApplicationLoader完成。
最近,我们在论坛中看到开发人员报告了通过ApplicationLoader上传时遇到困难的情况。结果发现,当他们更新了xCode安装后,一切都恢复正常了,尽管他们从未使用过xCode。也许ApplicationLoader在同一台Mac上使用xCode模块...
“与Mac相关”意味着:
购买自己或借用他人的硬件Macintosh,几乎任何类型,
在任何PC上安装OS X系统(Hackintosh),
利用付费服务,如MacinCloud
第一种选择似乎是最佳的,因为它给你最大的灵活性。如果你在使用Phonegap Build构建应用程序时甚至没有碰到xCode和其他开发工具(在这个问题的上下文中),那么即使使用二手Mac mini也很好,你可以购买价格约为200-300美元左右的设备。
第二种选择既非法("在非苹果硬件上运行OS X虚拟机化,违反了软件的最终用户许可协议"),又不推荐("任何应用程序的更新、操作系统小版本的更新等都可能破坏你的HackIntosh系统"),所以应该被视为最后的选择。
第三种选择应该由提交多个iOS应用程序(以及更新)的开发者考虑,支付月费或年费的MacinCloud计划比对旧Mac进行一次性投资更合理。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接