Reputation: 6480
I submitted an application for review and I notice that the build that I submitted has an issue associated with it saying that Build 168 does not contain the correct beta entitlement.
I wasn't able to find information on this error anywhere. What does it mean and will it inhibit the review process? My app was submitted today with Xcode 5.1.1 for iOS 7 (not the Xcode GM). Perhaps this relates to Testflight?
Upvotes: 78
Views: 69384
Reputation: 18922
In XCode, select the Target and go to the Capabilities tab. Look for any "Fix Issue" links. If you can't find any, try toggling a capability (say Wallet) on and off again to regenerate your entitlements file.
Upvotes: 0
Reputation: 2413
I got same issue. After regenerating provisioning profiles I again got same issue. Then I uploaded binary via Xcode and it solved the issue.
It seems like issue is with Application Loader. Use Xcode to upload the binary.
Upvotes: 0
Reputation: 797
There are two step here:
Some of the mistakes comes from exporting the archive using the AdHoc deployment.
I bet Apple might remove AdHoc deployment in the future since TestFlight Beta Testing using AppStore builds serves the purpose.
Hope this helps.
Upvotes: 4
Reputation: 11378
I use Jenkins to make both Ad Hoc and App Store builds. In this case simply regenerating the distribution provisioning profile didn't help, because the app still missed the "beta-reports-active" entitlement.
I tried adding that entry to the custom entitlements file, used for building the application. This fixed the problem for submitting the app in iTunes Connect, but made the Ad Hoc builds invalid - they failed to install on my devices.
After all I ended up with two custom entitlements files, one with "beta-reports-active" entry and one without it. Jenkins builds the app without beta reports entry and signs it with the Ad Hoc profile to produce an ipa file for in-house testing. Then it resigns the app with the other entitlements file for App Store distribution.
Upvotes: 0
Reputation: 1207
For all it's worth I was using the Application Loader to upload the app and I never managed to get it to work (Application loader version 3.0 (620)). Once I tried using xCode via the Archive method things worked great. You can also tell if the Beta entitlement is present before submission.
Upvotes: 2
Reputation: 1159
I have also faced the same issue and resolved it by below mentioned steps
1.Create the Appstore Provisioning Profile and use that profile for Generating the ipa so that beta entitlement for the ipa will be enabled.
For the rest of the profiles the beta entitlement will be false
Upvotes: 0
Reputation: 1543
Please regenerate your provisioning profile.
It will Fix this problem
it's because the missing entitlement is now there beta-reports-active = 1
After creating the new provisioning profile, make sure the entitlement is there.
Here is how it should look like when you click in Organizer "Export.." -> "Save for iOS App Store Deployment":
Upvotes: 52
Reputation: 5103
You need to recreate provisioning profile (as everyone suggested), however you also need to distribute the IPA with an "App Store" distribution profile. If you're used to the old TestFlight distribution methods, you're probably signing the package with an "Ad Hoc" profile instead.
Upvotes: 18
Reputation: 6181
Yes, you need to recreate provisioning profile and one more important thing is that you need to provision your app with App Store distribution provisioning profile.
Here is how it should look like when you click in Organizer "Export..." -> "Save for iOS App Store Deployment":
You can also convert .mobileprovision file to .xml with that command to see if there really is a beta-reports-active
key in your entitlements.
security cms -D -i YourProfile.mobileprovision > YourProfile.xml
Upvotes: 25
Reputation: 645
I was also facing same issue but suddenly the message in the itunesconnect got changed to "To use TestFlight Beta Testing, this build must contain the correct beta entitlement. For more information, see the(Link)" in the prerelease section.
With TestFlight Beta Testing, you can distribute your prerelease builds to testers to collect feedback and prepare your app for release in the App Store. TestFlight Beta Testing is optional; you can submit your app for review without using it.
Ref: here
Upvotes: 1
Reputation: 1223
Actually you can still choose the uploaded "error" build and submit for review. The status will be changed to "waiting for review".
Upvotes: 0
Reputation: 10869
Apple gave us a little surprise yesterday without telling us. There is a new entitlement that is added when you regenerate your distribution certificate. When you regenerate, as others said, it should fix your problem. It's not due to magic though, it's because the missing entitlement is now there beta-reports-active = 1
Once you download your new provisioning profile, make sure the entitlement is there, rebuild your IPA and this warning should finally go away. If you manage your own Entitlements.plist
be sure to include this new key.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>aps-environment</key>
<string>production</string>
<key>get-task-allow</key>
<false/>
<key>beta-reports-active</key>
<true/>
<key>application-identifer</key>
<string>bkahblahblah</string>
</dict>
</plist>
Upvotes: 45
Reputation: 21
I just tried submitting a new build of my app using Xcode 6. It complains about the invalid provisioning profiles that I have for the built app. So I regenerated the provisioning profiles at Apple Developer website and import them in Xcode 6. Uploaded the new built binary using the new provisioning profiles and submitted for review. The new provisioning profiles includes beta entitlements that I think iTunes Connect is complaining about. Hopefully it will not complain about the beta entitlements later.
Upvotes: 2