App “does not contain the correct beta entitlement”

匿名 (未验证) 提交于 2019-12-03 02:11:02

问题:

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?

回答1:

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":



回答2:

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>


回答3:

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



回答4:

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.



回答5:

There are two step here:

  1. Regenerate your provisioning profiles. Especially the AppStore provisioning profile to make sure the beta entitlement is there.
  2. Archive and export your build by selecting the option "Save for iOS App Store Deployment"

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.



回答6:

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.



回答7:

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.



回答8:

Regenerate all your provisioning profiles, fixes the problem 100%



回答9:

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



回答10:

Actually you can still choose the uploaded "error" build and submit for review. The status will be changed to "waiting for review".



回答11:

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



回答12:

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.



回答13:

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.



回答14:

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.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!