TestFlight and iTunes Connect Woes

dbrooks Uncategorized 7 Comments

TestFlight-Homepage

Acquisition And Announcement

When Apple bought TestFlight back in February 2014 I didn’t think much of it. Then, of course, they killed their Android beta service and that got me thinking that Apple may actually be doing something with it. Then at WWDC 2014 Apple debuted what I  think was one of the best features as a developer, TestFlight in iTunes Connect.  Finally Apple was going to allow beta testing within their walled garden. They were going to allow internal testers and external testers all without the pain of AdHOC provisioning profiles, device UUIDS, and a hassle setup. All you needed was an Apple ID and an invite.

Beta Launch

About a week ago before the launch of the iPhone 6 Apple finally turned on iOS beta testing with TestFlight in iTunes Connect with the “real” TestFlight Application. This was great news, so naturally we started testing it within DABSquared. It was incredibly easy. All we had to do was:

  1. Add user’s Apple ID as an iTunes Connect User
  2. Wait for them to accept and join
  3. Flip the switch on the User for internal tester
  4. Add them as an internal tester on your app.

This was a lot easier than before:

  1. Invite user to TestFlight
  2. Wait for them to accept
    1. Walk through with them how to add their UUID to TestFlight
  3. Download an export file with all the latest UUID’s
  4. Import the UUID’s into Apples Developer Portal (Hope you still have space for devices)
  5. Go to each AdHoc profile you have and enable the new devices
  6. Regenerate and download each AdHoc Profile
  7. Open the new profiles with Xcode to add them to your KeyChain
  8. Generate a new build and upload to TestFlight OR Attach the New Provisioning Profile (Note: This way adds more steps to the end user I won’t get into)

It is also better because once your testers approve a build all you have to do is submit it to the store. No more having to then go to a separate build using a the AppStore Provisioning Profile. Everything is done with the original build you upload to iTunes Connect. So you can be absolutely sure that the build your testers used and approved is the one that gets submitted to the AppStore. No developers messing up builds or uploading the wrong file after testing. This adds a ton of safety for owners of companies. I can not tell you how many times I have had something build with my AdHoc profile and then days later after testing realized the AppStore build does not work, requiring changes with development.

Problems

As with all new products and services there are always issues. This one however, is a real drawback for us at DABSquared. Here at DABSquared, we have many clients all with their own iTunes Connect accounts. The issue though is that iTunes Connect only allows an Apple ID to be associated with one iTunes Connect account. This proves a major problem for companies with a lot of clients because you can not be an Internal Tester for all of them. So the question is why did Apple design it this way? Of course this is the way that iTunes Connect has always worked. If you look at Apple’s old documentation, before the new iTunes Connect debuted, it has never allowed an Apple ID to be associated with multiple iTunes Connect accounts. Apple has always allowed an Apple ID to be associated on multiple developer accounts and provides a sector for it when you login.

Apple’s Solution

After encountering these issues we filed a bug report with Apple stating:

Currently an apple id can only be associated with one iTunes Connect at a time. This causes an issue with the new TestFlight ability with internal testers (I assume the same for external as well). As a developer I have multiple clients and I need to be an internal tester on all of them.

Apple support said I would need to make multiple apple ids and then log out and in on the TestFlight app on my phone. HOWEVER, upon further investigation I do not even see the ability to logout and switch apple id accounts within the TestFlight application.

THIS IS A MAJOR ISSUE FOR DEVELOPERS. This makes it so that I cannot start using the TestFlight feature on many of my clients applications.

A few days later we received this response:

Engineering has determined that this issue behaves as intended based on the following:

If you're not a part of the company, sounds like you need to be using external testing where any email address can be invited to beta test a version.  The testflight account used on device is the same one that's logged into the iTunes store. It can be changed from settings --> iTunes & App Store

Please update your bug report to let us know if this is still an issue for you.

This posed a few issues for us at DABSquared, because:

  1. External Testing actually isn’t available yet (Why would apple suggest something we don’t even have the ability to try yet?)
  2. External Testing is supposed to go through an Apple review process making the build turn arounds much slower than internal testing
  3. Signing out and in of iTunes can get cumbersome and the device will most likely stop receiving push notifications for new builds.

This is actually all quite surprising because this goes away from the core way TestFlight used to operate. With the old TestFlight we could have multiple accounts for our separate clients all linked together without having to sign in and out on the devices.

So whether or not this is intentional, poor planning, or a bug we hope that everyone will comment on our OpenRadar and submit the same bug to Apple to help escalate it.  Here’s to hoping we can get iTunes Connect with TestFlight to work how we, the developers with clients, use it every day. Not just how Apple uses it.

Comments 7

  1. RP

    Dear DABSquared Friends – Love the way you guys explained the differences and the current problems. And totally agree that the distribution process should be simplified.
    Question I have at this time is – What’s the latest word on the external testing ? Did you guys hear a date when this is being made available.

  2. Daniel Brooks

    RP, I have yet to hear anything back. Since I posted this article there has been no change to my bug report and I have not heard anything about the external testing.

  3. Brian

    Are you guys concerned at all about giving all your testers an iTunes Connect role? I don’t really want all mine to have the kind of access that comes with all the roles. for example, Technical contacts can submit apps! What did you do for that?

  4. Daniel Brooks

    Yea a bit. But Internal Testers should be ok because they are already part of your business. The external testing will be key though with how they implement it.

  5. Brian

    That’s also how I was justifying it. Thanks for the post, it’s helpful to see other people struggling with this. I do hope external testing comes very soon. I haven’t found a realistic ETA for it. Apple said it would be “soon after iOS 8 is released” – but that has come and gone. (Perhaps depending on how you define “soon.”)

Leave a Reply

Your email address will not be published. Required fields are marked *

fourteen − 3 =