App "does not contain the correct beta entitlement" - ios

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?

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

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>

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

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.

There are two step here:
Regenerate your provisioning profiles. Especially the AppStore provisioning profile to make sure the beta entitlement is there.
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.

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.

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.

Regenerate all your provisioning profiles, fixes the problem 100%

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

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

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

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.

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.

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.

Related

Exporting In-House iOS app says certificate "Unknown", profile "none"?

I put together a test app simply to test In-House distribution through our Enterprise Developer Account.
Before archiving I checked that all signing settings looked good. Debug and Release show the correct provisioning profile and certificate.
Then I ARCHIVE the app. The prompts show this:
The correct cert and provisioning profile are shown. As the archive route continues I get to this screen:
I am trying to understand why it says: Certificate "Unknown" and Profile "None"
As I then try to distribute this through our MDM solution it never installs.
My question is: when distributing in-house enterprise apps, is it correct to see Certificate "Unknown" and Profile "None"?
I have same behaviour: Apps validate and distribute fine, so I guess this is just a display issue introduced by XCode 10.1
https://forums.developer.apple.com/message/338402#
Had the same issue, only downgrade to Xcode 10.0 fixed it: download old version of Xcode here
I had the same issue and spent whole today morning on it. I set certificate and profile but it showed None for both and app installation failed. I didn't fix None showing but fixed installation failing. In my case I've just remove string "Required device capabilities" from Info.plist. May be it helps you!
Hey #zumzum i have same issue with xcode 10.1
so i try with "Application Loader" and that Work
when you have failed dialog while upload app in app-store that time there is one more option to export build , just export and try to upload same build with "Application Loader"

Missing Beta Entitlement iTunes Connect "error" - Xamarin Forms PCL

I have a problem, I have the same project in Xamarin on visual studio 2017.
When I deploy transmission certificates and load it all on itunes connect through Application Loader.
The problem is that, with one of the two applications (
I change the certificate every time I release an app or another.), I can not make the release for beta testers.
As you can see in the image below:
With the first App all goes well, but when the second load gives me the error that you see when you try to release it with testflight: Missing Beta Entitlement.
I looked online and I tried to put in info.plist file the following string:
<key>beta-reports-active</key> <true/>
But without success. Can anyone advise me how to solve? Thank you.
I uploaded to connect itunes version 1.13 but I get the same problem.
What I recommend here is to clean/clear your provisioning profile from Apple Developer Website.
Are you letting Xcode manage code signing identity ?
If so then it will create provisioning profile for you when you will be building for Release.
Indeed, it happens to me, it was a terrible mess in my configuration on Apple Developer.
I just removed everything, provisioning profile, create 1 Development and 1 Production certificate.
Then when you build for Release, Xcode will create provisioning profile for you, it starts with "XC".
Your issue is
likely a different provisioning profile from the Ad Hoc Distribution
Provisioning Profile you were probably using to sign TestFlight builds
TBH changing certificate evertytime you release an app or an other might also create a mess in Xcode configuration.
Helpful Post Here

Xcode 8.1 "Provisioning profile doesn't include the aps-environment entitlement"

Is anyone experiencing this problem?
After persistence problemas and information retrieval on the KeyChain I had enable
the KeyChain Sharing feature in Capabilities.
This was to create a file called .entitlements
So, when I gonna run the Archive this error occurs:
Check Dependencies:
Provisioning profile doesn't include the aps-environment entitlement.
Code signing is required for product type 'Application' in SDK 'iOS 10.1'
I'm using OS El Capitan 10.11.6, Xcode 8.1
If anyone can help.
Pleaseeee....
Check the Capabilities tab on your target and make sure the Add the Push Notifications entitlement to your entitlements file shows a check mark (under Push Notifications). If it shows an error, fix and you should be good to go.
For my case, Xcode 9
Case 1:
I used fastlane match before I added push notification capability and entitlement file.
Solution 1:
Run fastlane match again. It will detect that the provisioning profile is no longer valid since you added capabilities and will regenerate again, and push to your repo.
Case 2:
I used fastlane match before I added push notification capability and entitlement file.
I regenerated the invalid provisioning profile in the developer.apple.com account manually. So when I ran match, I got error
Provisioning profile '4d89b10f-568e-400d-a4e9-c96e0a51fd46' is not
available on the Developer Portal for the user a#xyz.com Make sure to
use the same user and team every time you run 'match' for this Git
repository. This might be caused by deleting the provisioning profile
on the Dev Portal
this may also happen when you press Fix Issue from Xcode
Solution 2:
Step1: delete the invalid provisioning profile from your certificates repo
Step2: run
fastlane match
It can happen that you have two entries for the "Apple Push Notifications Service" in your Entitlements file. This seems to be a bug in XCode (even in v8.2), which it cannot resolve by itself.
Open your Entitlements file in the text editor of your choice.
I had the following duplicate entries in my Entitlements file:
<key>aps-environment</key>
<string>development</string>
<key>com.apple.developer.aps-environment</key>
<string>development</string>
Try deleting one of the two key-value pairs. For me, deleting the first entry aps-environment solved the issue.
When you add push notifications to your app.
If you already have a provisioning profile.
It will become invalid.
You have to go to developer.apple.com
Edit your provisioning profile.
Then download the newly created one and double click on the same.
XCode will automatically replace the last one which became invalid.
Also verify that the apple id that you created on the Developer portal (developer.apple.com) has Push Notifications enabled. I faced it when I created the provisioning profile before enabling push notification on the app id so I had to edit the app id.
Target -> Capabilities
Make sure the Add the Push Notifications entitlement to your entitlements file shows a check mark under Push Notifications.
If it shows an error, than fix it.
I just Quit xcode and open it again resolved my issue. xcode (Version 11.7 (11E801a))
Make sure your project Bundle Identifier matches the App ID certificate at Developer portal.
i added this to my entitlements.plist and it's done.
<key>aps-environment</key>
<string>production</string>
I use "ionic package" and this work for me:
Go to https://developer.apple.com/account/ios/identifier/bundle
Edit "iOS App IDs" checking "Push Notifications"
Go to https://developer.apple.com/account/ios/profile
Regenerate and download app "iOS Provisioning Profiles"
Resend ".mobileprovision" file to Certificates in ionic apps panel
Work again "ionic package..." command

"No matching provisioning profiles" when Submitting App to App Store in XCode 7.3

I have been trying to submit an update to my app in the app store and for the past 12 hours. I keep encountering this message in Xcode 7.3.
I have deleted all distribution provisioning profiles, recreated them, remade my app ids, removed them from xcode, re-downloaded them to xcode etc... I keep getting this message. The app is already in the app store. Any suggestions on what I can try? Building the app is easier then submitting the app. Thanks for any assistance
I have this error before and solved it by simple steps:-
1-xCode->Preferences->Accounts choose your Apple developer account-> View Details> right click on provision profiles and choose show in finder and delete all provision profiles.
2-Remove your Developer account.
3-Remove all Certification from Key Chain access.
4-Restart your Mac.
5-Check your certifications and provision profiles in your Apple Developer Account and be sure its working correct.
6-Open your xCode and add your Developer account and be sure that you download all provision profiles.
7-Restart your Mac and open xCode again and push your App to iTunes Connect.
I hope I help you.
I'm not sure if this is the right way for doing it, but I also had this problem when trying to submit an app with a watch kit component. What I did was create different provisioning profiles for each target.
1) The provisioning profile that you already have for your actual app.
2) Provisioning profile for the WatchKit target.
3) Provisioning profile for the WatchKit Extension.
I added all three of these to the Xcode project and went to the Build Settings tab for each target to set the provisioning profile for each target separately. Then I was able to submit my app without any warnings or errors.
Nothing worked for me except the following simple solution. What resolved the issue was manually setting Provisioning Profile for Debug and Release to the appropriate values, as opposed to choosing Automatic (i.e., set values to your development and distribution provisioning profiles) for each of my targets. I did this for the main app, today extension, watchkit extension and watchkit app. After that all works as expected. Thanks for everybody's contribution.

itunes connect - not contain the correct beta entitlement

I read that:
App "does not contain the correct beta entitlement"
I recreate production provisioning profile
I checking info.plist
Still the same bug. Last answer from topic above is recreate xcode entitlement "So the solution is to provide the entitlement in your plist 1) please turn on in-app purchase & game Center capabilities then turn it of again , this will add the missing entitlement AS Follow "
can you answer what .plist is generate (not info.plist?) and what data is changed after it (what section). Because I manualy edit info.plist (Marmalade SDK application), I can't edit entitlements from XCode.
The new itunes connect is buggy. Try:
Regenerate you iOS Provisioning Profiles (Distribution), then rebuild your binary with the new provisioning profile file and resubmit.
Actually you can still choose the uploaded build and submit for review. The status will be changed to "waiting for review".

Resources