How to become familiar with code signing issues?

后端 未结 2 2052
梦如初夏
梦如初夏 2021-02-11 00:08

Every time when i deal with code signing and provisioning profiles strange things happens. Most times i get the error \"no code signing identity found\" and if not then somethin

2条回答
  •  遥遥无期
    2021-02-11 00:37

    From what I'm reading you have changed your provisioning profile in your target from "xxx.xxx" to "xxx.xxxTests" which is in fact a different bundle identifier making the error valid. You really have two courses of action:

    1. Change your bundle identifier back to just "xxx.xxx". This is the appropriate path of least resistance.

    2. Create a new bundle identifier in the portal as "xxx.xxxTests" as well as a new provisioning profile for "xxx.xxxTests" tied to the same certificate. With XCode closed drag the new provisioning profile onto your XCode app icon then open your project.

    You shouldn't have to change your bundle identifier to conduct testing. When you go to deploy you will only have to change which provisioning profile your target is compiling with (development vs distribution).

    EDIT: I have some more tips on provisioning profiles here: How to become familiar with code signing issues?

    The quick and dirty side of provisioning works like this:

    • When you are added to the Apple Provisioning Portal your cert is the keys to the castle. Any code you compile has to be associated with your cert or you won't be able to properly compile/export your code.
    • Your bundle identifier is essentially the way iOS identifies your application. Conceptually speaking if you want to install your app multiple times on the same device create multiple bundle identifiers.
    • Your provisioning profile ties all of the pieces together. The prov profile tells XCode that you plan on using your cert to compile your app identified by your bundle identifier. If it's a development build it will only the devices specifically assigned to the prov profile in the portal will be able to install your app.

    Within XCode you need to make sure your target bundle identifier matches what bundle identifier is in the provisioning profile. Likewise make sure your code signing identity matches the cert you setup in the portal and tied to the provisioning profile. Lastly select the appropriate provisioning profile from the drop down list below the code signing identity.

提交回复
热议问题