Bug 5371 - Cannot install to device
Summary: Cannot install to device
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: iOS add-in ()
Version: 3.0.x
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: ---
Assignee: Jeffrey Stedfast
Depends on:
Reported: 2012-05-28 10:50 UTC by Dean Cleaver
Modified: 2012-05-29 17:43 UTC (History)
3 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Dean Cleaver 2012-05-28 10:50:01 UTC
After upgrade to MonoDevelop 3.0 (or 3.0.2) any Ad-Hoc uploads fail:

/Developer/MonoTouch/usr/bin/mtouch -sdkroot "/Applications/Xcode.app/Contents/Developer" -installdev "/xsl-home/kleverlogic/FlashValet/Mobile/iPhone/Valet/bin/iPhone/AdHoc/KleverLogicFlashValetiPhoneValet.app"
Please ensure your device is connected...
Connected to: Dean Cleaver's 3GS
Initializing file service...
Uploading application
Finalizing file service...
Installing application
Installation failed: Your code signing/provisioning profiles are not correctly configured (error: 0xe8008016)
The application was terminated by a signal: SIGHUP

A prior solution suggested that the entitlements.plist was incorrectly being added to release versions, but I need an entitlements.plist because I use Apple Push Notifications.

It seems though that removing the entitlements.plist from the "Custom Entitlements" section of the Project Options dialog (iPhone Bundle Signing section) and enabling Entitlements in the info.plist editor does work.

Can anyone confirm that this is the issue? I need to be sure that the Apple Push Service still works as expected, so am a little nervous about removing the Custom Entitlements section.
Comment 1 Jeffrey Stedfast 2012-05-29 13:21:37 UTC
3.0.2 should no longer auto-add Entitlements.plist to all build configurations like it did in 3.0.1

AFAIK, this was the issue that caused the "Your code signing/provisioning profiles are not correctly
configured" error that you got above.

Basically, if you didn't manually put Entitlements.plist into the "Custom Entitlements" section of the Project Options in a pre-3.0.x version of MonoDevelop, then it is safe to remove.

Hope that helps
Comment 2 Dean Cleaver 2012-05-29 13:24:42 UTC
But that's the problem - I needed it for the "aps-environment" key, and this causes it to fail to install - it used to work.

Removing it from the Custom Entitlements but ticking the "Enable Entitlements" in the ifo.plist editor seems to have made it work, but again if I put it in the custom entitlements where it used to be, it fails.

If that's the case, shouldn't the Custom Entitlements section be removed in favour of ticking the option in the info.plist?
Comment 3 Jeffrey Stedfast 2012-05-29 14:15:49 UTC
Enabling the "Enable Entitlements" checkbox in the Info.plist editor simply adds "Entitlements.plist" to the "Custom Entitlements" option in all of the build configurations that aren't already set to something else.

One thing to keep in mind is that the Custom Entitlements option is a file chooser (which only shows the base file name, not the full path - which might be a source of confusion), so typing "Entitlements.plist" isn't going to work, you'll need to give a full path (or use the chooser button thingy).

If this is the source of confusion, I'll bring it up with the other MonoDevelop guys and see if we can make it a priority to figure out a way to make it more obvious.
Comment 4 Dean Cleaver 2012-05-29 17:43:08 UTC
No - that's not confusing. But if I pick something, it will FAIL TO INSTALL. This is the problem. In my mind, it should not fail! It never did before.

Basically, you have to wipe out that selection, and tick the "Enable Entitlements" in the info.plist editor. Ticking this does *NOT* put the Custom Entitlements back, but allows it to work.

If you like we can do a webex or something so I can show you because we seem to be saying completely different things should occur.