7

I'm quite new to iOS distribution so I'm here to ask for the right direction, in particular because my objective is not a common publication.

I'd like to distribute to a few hundreds of selected users for at least half year. What provisioning profile do I need to use, developer or enterprise? What about the provisioning's expiry date? There are differences between them, aren't they? What distribution platform do we use for this purpose? Is TesFlight a suitable choice?

Krunal
  • 77,632
  • 48
  • 245
  • 261
user3290180
  • 4,260
  • 9
  • 42
  • 77
  • Yes you can use Test flight. Its suitable choice – Jignesh Mayani May 04 '17 at 10:21
  • 2
    With TestFlight, you will need to release a new build every 90 days, but it is probably the simplest way – Paulw11 May 04 '17 at 10:26
  • 1
    FYI, Build validity in TestFlight is only for 90 days. After 90 days it will be automatically deleted. – Imad Ali May 04 '17 at 10:29
  • TestFlight is for testing purposes only and limited to 90 days. To make a release available to a limited number of users you can use the Volume Purchase Program (VPP) where you can define which users can access the app on the app store. – Michael May 04 '17 at 10:31
  • Thanks, what is the most useful profile, developer or enterprise? Are there differences for the expiry date? – user3290180 May 04 '17 at 10:31
  • if you dont to live your application at all and want allow your limited users to access application then you should go with the enterprise developer programme. – vivek bhoraniya May 04 '17 at 10:35
  • 1
    With an Enterprise account you're not allowed to distribute the app outside your organisation, so that might not be an option. – James P May 04 '17 at 10:42

3 Answers3

4

Enterprise distribution could work for you, but it is officially allowed only to be used in-house, e.g. on devices that are owned by the same company that joined the enterprise developer program.

You could also use the B2B program (available through the normal developer program)

Andreas Oetjen
  • 9,889
  • 1
  • 24
  • 34
  • 2
    You can only use the B2B program if the users work for the same organisation and that organisation joints the volume purchase program – Paulw11 May 04 '17 at 10:44
  • Thanks, but actually the users don't work for the same organisation – user3290180 May 04 '17 at 10:49
  • @Paulw11 You're correct; every user would have to use his/her own VPP, but I think any other solution is eiter not quite "allowed" (like enterprise) or not usable for too long (like testflight stuff). – Andreas Oetjen May 04 '17 at 12:43
  • TestFlight is pretty straight-forward. A single update would be required after 90 days to get the six months the op is after. Chances are they will find bugs or want to push updates earlier than 90 days anyway – Paulw11 May 04 '17 at 12:53
2

Note: Type of certificate(provisioning profile) depends upon distribution of your app.
If you don't want to release app outside your organization, then use Enterprise provisioning
else, use Production/Distribution provisioning (Standard Development), so that your app can be made available for public use (outside your organization)

Follow these steps to distribute your app through TestFlight

Step 1: Enter your test information
Enter test information about your app, such as a description and feedback email. You will need this if you plan to distribute your build to external testers (persons outside your organization).

Step 2: Upload your build
Upload your build using either Xcode or Application Loader. Read Cryptography and U.S. Export Compliance to determine if you need to provide export compliance documentation for your app. After builds are uploaded, they are available for testing for 90 days.

Step 3: Invite internal and external testers
Add internal testers (up to 25 iTunes Connect users in your organization) so they have access to the builds you distribute. Then invite external testers (up to 2000 persons outside your organization) who you want to test your app. You can create groups of testers and assign specific builds to groups. If you invite external testers, the build needs to be approved by Beta App Review before testing can begin.

Tip: To test the variants that the App Store builds before you release your app, invite internal testers only and download the variants using TestFlight.

Step 4: Testers download TestFlight and accept your invitations
Testers install the free TestFlight app on their devices. Then testers use TestFlight to redeem invitations, install your app, send feedback, and get updates. Testers download and install thinned variants of your app.

Step 5: View tester and build information
Track your tester engagement and your app’s performance by viewing build status and metrics in iTunes Connect—such as numbers of sessions and crashes. You can also resend invitations to testers who have not yet accepted their invitation.

Tip: You can also view crash reports directly in Xcode for apps distributed using TestFlight.

Step 6: Collect feedback from testers
Read the feedback from testers, that is sent to the email address you specified in Step 1, continually during the testing period. Also, make improvements to your app and continue distributing builds until all issues are resolved before you submit your app to the App Store.

Step 7: Stop testing
When you are done testing, you can optionally expire a build to stop testing it, and then go to Overview of publishing an app for the process of submitting your app to the App Store. If you don’t expire your build and submit it to the App Store, testers that have received an invite to test will still be able to test your build even after it goes live on the App Store. Your build will become unavailable in TestFlight after 90 days.

See: TestFlight beta testing overview

Krunal
  • 77,632
  • 48
  • 245
  • 261
  • Thanks for the detailed answer. What about the most useful provisioning profile for this purpose, developer o enterprise? May I repeat another test after the 90 days period? – user3290180 May 04 '17 at 10:47
  • 1
    See Paulw11's comment on it: Use public mode Distribution (Development) provisioning, if you are developing general public use application – Krunal May 04 '17 at 10:48
  • 2
    @user3290180 you can even start a new test after few minutes of releasing your test ;-) You dont have to wait 90 days until you can release a new test version – Lepidopteron May 04 '17 at 11:01
  • @Lepidopteron - Agreed – Krunal May 04 '17 at 11:02
1

TestFlight beta testing lets you distribute beta builds of your app to testers and collect feedback. TestFlight beta testing is optional; you can submit your app for review without using it. However, it’s easy to do, free, and a valuable way to improve your app before releasing it on the App Store. You can enable TestFlight beta testing for up to 100 apps at one time in your iTunes Connect account.

Here are some guidelines & tutorial that helps your better:
TestFlight Tutorial: iOS Beta Testing
TestFlight - Apple Developer Forums

Krish
  • 59
  • 1
  • 9
  • Thanks, what provisioning license is required, developer or enterprise? The goal is a half year app used by a few hundreds users. The expiry date is very important to me. – user3290180 May 04 '17 at 10:38
  • 2
    You would want a standard developer membership. As I said above, you will need to release a new version for testing at least every 90 days. – Paulw11 May 04 '17 at 10:46