Forum Xamarin Test Cloud (Read Only)
We are excited to announce that the Xamarin Forums are moving to the new Microsoft Q&A experience. Q&A is the home for technical questions and answers at across all products at Microsoft now including Xamarin!

We encourage you to head over to Microsoft Q&A for .NET for posting new questions and get involved today.

Codesign failed on xamarin test recorder iOS (physical device)

I would like to record a test from a iOS device using the xamarin test recorder on a mac(el capitan OSX). I select the device and the .ipa (already signed by developers with an enterprise cert.) but i receive the following error: Codesigning failed. No codesigning identity capable of signing the application found. I have on the machine a free apple developer account and i am able to deploy a blank project from xcode without any issue. Do i need a different account in order to re-sign the .ipa with test recorder or it should be also possible with the free account? Thanks in advance.

Answers

  • JohnMillerJohnMiller USForum Administrator, Xamarin Team Xamurai

    Hi @MarcoSaporita,

    You won't be able to resign a Distribution, Enterprise signed app with a free developer provision without a few modifications to your provision. You'll need to make sure that you are not using a "Wild Card" App ID in your provision. This means you need to make a provision specifically for an App ID that matches what the IPA has. There are ways to change the App ID too during a resign using other tools. However, that's outside the scope of what we support. You also need to make sure that your provision has all of the required Entitlements that the app is using (Push Notifications, iCloud, etc).

    Take a look at this technical article on the Apple developer site. You can use the commands there to check which Entitlements are required and also get the app bundle identifier (App ID).

    Check entitlements used in the app:
    codesign -d --entitlements :- "Payload/YourApp.app"

    Note* You can get the .app file by changing the .ipa to a .zip and then extract it normally.

    Check the entitlements used by the apps existing provision:
    security cms -D -i "Payload/YourApp.app/embedded.mobileprovision"

    Once you have this information, create a new App ID in your developer account to match the bundle identifier and then create a provision for this App ID. Next, make sure the check all the Entitlements to match what the app already had.

  • Hi @JohnMiller ,
    Thanks for the reply.
    I still have some issues with the last part.

    This is what i see with my free developer account on the apple developer site.
    How can i create the provision for that App ID?

  • JohnMillerJohnMiller USForum Administrator, Xamarin Team Xamurai

    @MarcoSaporita,

    Sorry for the confusion! You'll have to use Xcode to create the free provision. We have a guide in our docs on how to do this. Step 6 explains setting the Bundle ID.

  • MarcoSaporitaMarcoSaporita USMember
    edited January 2017

    @JohnMiller
    If i copy just the bundle id, without the team id, i receive an error on xcode: "failed to create provisioning profile. The app id cannot be registered to your development team. Change your bundle identifier to a unique string to try again."

  • MarcoSaporitaMarcoSaporita USMember
    edited January 2017

    How may i solve this issue? Tried also with the full appid but the Codesign even in this case fails

Sign In or Register to comment.