En mi caso, las cosas en mi perfil de aprovisionamiento:
security cms -D -i ~/Downloads/spolskyDevelop.mobileprovision
...
<key>application-identifier</key>
<string>P5GM95Q9VV.com.dca.spolsky</string>
<key>aps-environment</key>
<string>development</string>
Era diferente a las cosas de la aplicación que realmente se construyeron (puede averiguar dónde está construido mirando la pestaña Registros de Xcode)
codesign -d --entitlements - '/Users/drew/Library/Developer/Xcode/DerivedData/spolsky-bdbtdfjeeywhqzccpmmceqvnhgtm/Build/Products/Debug-iphoneos/spolsky-ios.app'
<dict>
<key>application-identifier</key>
<string>Y2X6Z7Z2GR.com.dca.spolsky-ios</string>
<key>get-task-allow</key>
<true/>
<key>keychain-access-groups</key>
<array>
<string>Y2X6Z7Z2GR.com.dca.spolsky-ios</string>
</array>
</dict>
Esto era cierto a pesar de que el texto de la sugerencia "Coincide actualmente" en Identidad de firma de código indicaba el perfil de aprovisionamiento correcto. Es extraño, ¿eh? Para hacer una historia extraña más extraña, el perfil de aprovisionamiento correcto se estaba instalando en el dispositivo cuando ejecuté, (Configuración-> General-> Perfiles) lo que me llevó a creer que el perfil de aprovisionamiento era correcto, pero estaba recurriendo a una ID comodín. cuando se lanzó la aplicación .
La pista fue la diferencia en la salida de estos dos comandos:
Y2X6Z7Z2GR .com.dca. spolsky-ios frente a P5GM95Q9VV .com.dca. spolsky
Cuando hice coincidir la parte en negrita, la parte en cursiva cambió para coincidir automáticamente. Además, el resultado de la seguridad y el código de firma coincidieron, y no más errores de autorización de aps.
Supongo que XCode estaba usando una coincidencia de estilo comodín en mi ID no comodín. ("spolsky" es, después de todo, casi "spolsky-ios"), y esto explica la salida "Actualmente coincide". Pero algo en la cadena de compilación es más estricto al respecto, por lo que recurre a un ID comodín real durante la compilación.