Xamarin iOS app “does not contain the correct beta right”, even though the beta right flag is part of the provisioning profile

Since the initial TestFlight app will retire in a month, I'm trying to deal with iTunes Connect Beta, which looks like a major improvement. As stated, I updated the provisioning profiles and restarted them on my build server.

Then I completed the assembly with the "AppStore | Release" profile, and I saw this message in the log:

codesign -v -f -s "XXXXXX" "--resource-rules = / ... / MyApp.app/ResourceRules.plist" --entitlements "/../iSnagMobileiOS.xcent" "/../iSnagMobileiOS.app "

The file specified in the entitlements parameter contains the active beta reporting 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>get-task-allow</key> <false/> <key>application-identifier</key> <string>XXXXXXX.com.mycompany.myapp</string> <key>com.apple.developer.team-identifier</key> <string>XXXXXXXX</string> <key>beta-reports-active</key> <true/> <key>keychain-access-groups</key> <array> <string>XXXXX.com.mycompany.myapp</string> </array> </dict> </plist> 

Then I received a generated IPA that was signed with my distribution certificate. To verify that the correct right was applied, I ran this command to check the provisioning profile:

unzip -p MyApp.ipa Payload /MyApp.app/embedded.mobileprovision | security cms -D

Inside the XML fragment, I saw a rights dictionary that contained the flag, as expected:

 <key>Entitlements</key> <dict> <key>keychain-access-groups</key> <array> <string>XXXXXXXX.*</string> </array> <key>get-task-allow</key> <false/> <key>application-identifier</key> <string>XXXXXXXX.com.mycompany.myapp</string> <key>com.apple.developer.team-identifier</key> <string>XXXXXXXXX</string> <key>beta-reports-active</key> <true/> </dict> 

IPA also does not have an additional Entitlements.plist file that can drop this.

I downloaded IPA using Application Loader 3.0, but then received this error message:

WARNING: ITMS-90191: "No beta rights. The application does not include beta reports-active rights. If you plan to distribute this assembly through TestFlight for beta testing, please recreate this application using the new provisioning profile."

I found numerous hits while searching for this post, but none of them described the problem described above; all of these users found that restoring the profile and downloading it again was all that was required.

I was wondering if I might be experiencing a problem caused by an older version of Xcode or MonoTouch, but after I updated both options, I still had the same problem. I am going to assume that this problem is not caused by Xamarin, but is possibly caused by an installation that I missed in my build configuration, but I could be wrong there.

+7
ios xamarin
source share
1 answer

ITunes Connect currently does not work as developers do. You can switch to Fabric.io (Crashlytics), which is integrated after 15 minutes and is almost as perfect as before. And no - I'm not a commercial droid from Fabric.io :)

And a big advantage: you get a message with a symbolic stack trace if your application crashes.

0
source share

All Articles