发布iOS应用程序但不通过itunes

时间:2014-06-23 01:03:45

标签: ios itunesconnect ad-hoc-distribution

我被要求做一个招聘人员为公司招聘的应用程序,所以当然它是免费的。当我发布它时,它被拒绝是非常基本的。

现在,如果苹果不想接受它,客户想要通过他们的网站发布它。

我知道如何通过adhoc disribution创建.ipa文件,这是我用来复制和测试它的方法,将它放在测试网站上,以便他们可以在iphone上下载。

但这仅用于测试目的,只有在开发帐户中注册为设备的手机才能成功下载文件。

那么是否可以发布一个成功使用的应用程序,而无需将其提交给苹果?

4 个答案:

答案 0 :(得分:4)

一般情况下,是的,有可能:只要您的公司拥有必要的企业协议,您就可以在应用商店外发布企业应用。

然而,这是供内部使用,虽然我自己没有阅读协议,但我相信向公众发布可能会违反。 (编辑:正如扎普指出的那样,事实上这是明确禁止的。)

你所描述的情况不在此范围之内。


此外,从用户体验的角度来看,期望潜在员工从应用商店外部下载应用程序是不合理的。

对于很多人而言,这不仅在技术上很难,而且看起来非常不专业,这与您在招聘应用中所追求的相反。

答案 1 :(得分:4)

使用Enterprise account,您可以或多或少地托管您自己的私人应用商店,以获得无限量的设备,并在没有Apple的情况下在内部进行分发。 使用Developer帐户,您可以通过TestFlight或类似服务运行ad-hoc安装,最多可以运行100个设备。 在WWDC14上发布的新的iTunes TestFlight集成允许1000个设备。

唯一真正专业的解决方案是企业应用商店,它要求您拥有DUNS并获得Apple的批准,但通常会设置DUNS。这是299美元而不是99美元,但对于大多数拥有DUNS的公司而言,这并不是那么多钱。此外,您无法使用该帐户将应用发布到公共App Store。

答案 2 :(得分:1)

没有。 Apple将用户可用的应用仅限于App Store上的应用。

(实际上,不是100%正确 - 你可以在Cydia上发布应用程序,只针对越狱手机,但我怀疑这不是你的意思。)

或者,使用JavaScript / HTML / CSS制作Web应用程序。任何人都可以使用Web应用程序,它可以安装在启动器屏幕上,它不需要App Store,只需要某个Web服务器。如果您需要持久性,您可能还需要查看清单文件和脱机应用程序。特别是如果您的应用程序是基本的,您可以使用一个非常好的Web框架(如jQuery Touch)使其外观和感觉几乎作为本机应用程序。

但是,您可能只是将其保留为网页 - 为什么您只将您的招聘池限制为愿意安装您的应用的人?

tl; dr:你不能发布除AppStore之外的ObjC应用程序。

答案 3 :(得分:1)

这个问题已有多个答案,可能是因为它不够具体。 让我们收集所有必要的信息:

  1. 如果您想要公司的应用程序(假设您通过应用程序招募了人员,即使用该应用程序的人员将加入公司),您应该使用企业计划。
  2. 如果应用程序适用于普通大众(在这种情况下,您可能希望该应用程序作为品牌推广,为公司推广应用程序),则您无法使用企业帐户,因为它违反了Apple的规定条款。例如,请看这个有趣的案例:http://www.imore.com/how-gameboy-emulator-finding-its-way-non-jailbroken-devices
  3. AdHoc和TestFlight不应用于发布应用。 AdHoc仅用于测试目的。将非开发人员相关设备引入您的AdHoc配置文件将意味着终止您的开发帐户(例如,这种积极且有趣的案例:http://www.intomobile.com/2012/07/09/apple-goes-after-sites-selling-activations-ios-6-beta/)。
  4. 最后,有两个有趣的注释:

    • 企业计划应用程序中的设备数量没有限制。它不是1K,至少那里的信息反之亦然(例如 1 中链接的情况)。 1k设备限制适用于使用TestFlight的beta测试人员(根据http://www.neglectedpotential.com/2014/06/testflight/)。
    • 企业帐户无法在AppStore上向公众发布应用程序(请参阅此常见问题解答:https://developer.apple.com/support/ios/enterprise.html - 如果它不起作用,您可以从Google加载缓存版本等)。感谢Departamento B提供的这些信息,我不知道。