简体   繁体   English

如何通过App Store(使用标准程序)和企业分发(使用企业程序)分发iOS应用程序?

[英]How to distribute an iOS app both through the App Store (with the Standard Program) and via Enterprise Distribution (with the Enterprise Program)?

I have an iOS app that anyone should be able to download via the App Store. 我有一个iOS应用程序,任何人都可以通过App Store下载。 Moreover, I need to distribute this exact same app to people that have iPhones owned by my company. 此外,我需要将这个完全相同的应用程序分发给拥有我公司所有iPhone的人。 Links to download the .ipa would be sent to those devices. 下载.ipa的链接将被发送到这些设备。

It's OK to use the iOS Developer Standard Program until you reach the limit of 100 devices. 在您达到100个设备的限制之前,可以使用iOS开发人员标准程序。 But what if you need to distribute this app to hundreds devices? 但是,如果您需要将此应用程序分发到数百台设备呢? As far as I understood, you can have both the iOS Developer Standard Program and the iOS Developer Enterprise Program (which allows you to install AdHoc apps on an unlimited number of devices). 据我所知,您可以同时拥有iOS Developer Standard Program和iOS Developer Enterprise Program (允许您在无限数量的设备上安装AdHoc应用程序)。

The former would be used to submit the app to the App Store and the latter would be used to sign production apps that can be distributed to an unlimited number of devices owned by my company. 前者将用于将应用程序提交到App Store,后者将用于签署生产应用程序,这些应用程序可以分发给我公司拥有的无限数量的设备。

Here are the points: 以下是要点:

  1. Can I have a single App ID or do I need to distinguish these two apps? 我可以拥有一个应用程序ID,还是需要区分这两个应用程序?
  2. I need to send push notifications to devices using this app, can I use the same APNS certificate for sending notifications to apps downloaded via the App Store and to Ad Hoc apps? 我需要使用此应用程序向设备发送推送通知,我是否可以使用相同的APNS证书向通过App Store下载的应用程序和Ad Hoc应用程序发送通知? I guess no, but is there a way to properly handle that situation? 我想不,但有没有办法妥善处理这种情况?

More generally, how to manage that situation properly? 更一般地说,如何妥善管理这种情况?

Thanks in advance. 提前致谢。

After some research, I finally figured out the two different options. 经过一番研究,我终于想出了两个不同的选择。

1. MDM to push App Store applications 1. MDM推送App Store应用程序

I made my tests with the AirWatch MDM solution. 我使用AirWatch MDM解决方案进行了测试。 You can actually push iOS applications to a fleet of devices with Apple accounts connected on them. 实际上,您可以将iOS应用程序推送到连接有Apple帐户的设备群。 The Apple accounts connected on your devices can either be manually configured by the users, or you can provide these devices with Apple accounts already signed in. 您设备上连接的Apple帐户可以由用户手动配置,也可以为这些设备提供已登录的Apple帐户。

In the latter case, you need to create the accounts on behalf of your users. 在后一种情况下,您需要代表您的用户创建帐户。 You can even prevent them from modifying the connected Apple account. 您甚至可以阻止他们修改连接的Apple帐户。 However, I advise against using the same shared account across multiple devices as it's against guidelines. 但是,我建议不要在多个设备上使用相同的共享帐户,因为它违反了指南。 If the account is blocked because of incorrect usage, application updates will be impossible on all devices using this account. 如果帐户因使用不当而被阻止,则使用此帐户的所有设备都无法进行应用程序更新。

2. Using an Enterprise Program in addition to the Standard Program 2.除标准程序外,还使用企业程序

In such a case, you can push your in-house applications through MDM not requiring your devices to have a connected Apple account, which is a strong advantage in my opinion. 在这种情况下,您可以通过MDM推送内部应用程序,而不要求您的设备拥有连接的Apple帐户,这在我看来是一个很大的优势。 However, if you still want your application to be distributed through the App Store, you will have to maintain two different builds of your applications, with two sets of signing certificates, provisioning profiles, APNS certificates, etc. 但是,如果您仍希望通过App Store分发应用程序,则必须维护两个不同的应用程序版本,包括两组签名证书,配置文件,APNS证书等。

I believe you can just have the iOS Developer Enterprise program and use that one to publish to the app store and to distribute the app internally. 我相信您可以拥有iOS Developer Enterprise程序并使用该程序发布到应用程序商店并在内部分发应用程序。 The archive will be the same, but it will be signed with different provisioning profiles, producing different binaries for the App Store and for Ad Hoc. 存档将是相同的,但它将使用不同的配置文件进行签名,为App Store和Ad Hoc生成不同的二进制文件。

In the developer portal you should have one profile for the App Store and another for Ad Hoc distribution. 在开发人员门户中,您应该拥有App Store的一个配置文件和Ad Hoc分配的另一个配置文件。

  1. If using only one developer program (Enterprise), you should use the same App ID for both profiles. 如果仅使用一个开发人员程序(Enterprise),则应对两个配置文件使用相同的App ID。

  2. Yes, APNS certificates differentiate between development and production. 是的,APNS证书区分了开发和生产。 Ad Hoc and App Store are both considered production and use the same certificate. Ad Hoc和App Store都被视为生产并使用相同的证书。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 通过iTunes上的现有应用程序分发企业应用程序(常规程序) - Distribute Enterprise app through existing App on iTunes (regular program) 使用iOS企业版程序开发的应用程序可以与其他iOS标准程序一起分发到应用商店中吗? - Can a app developed in iOS Enterprise program be distributed in app store with a different iOS Standard Program? 如何分发企业iOS应用程序? - How to distribute an enterprise iOS app? 是否可以在没有企业版程序的情况下“内部”分发iOS应用? - Is it possible to distribute iOS app “in house” without Enterprise program? iOS Developer Enterprise Program Distribution无法覆盖我的应用 - iOS Developer Enterprise Program Distribution not overwriting my app 如何在 2020 年分发使用来自本地服务器的数据而没有 iOS Enterprise 程序的 iOS App? - How to distribute iOS App that use data from local server without iOS Enterprise program in 2020? 如何不通过应用商店向我的欧洲企业客户分发 ios 应用 - How to distribute ios app to my European enterprise customers NOT through appstore 适用于iOS 6的Distribution Enterprise应用程序 - Distribution Enterprise app for iOS 6 通过URL的Xcode 6 iOS应用企业分发 - Xcode 6 iOS app enterprise distribution via URL iOS开发者企业计划发行 - iOS Developer Enterprise Program Distribution
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM