Firma y nueva firma de paquetes de iOS
Firma de comandos relacionados:
?$security find-identity -v -p codesigning -- Enumera los certificados que se pueden firmar en el llavero
?$ seguridad cms -D -i incrustado.mobileprovision - Ver archivo de descripción
?$codesign–fs nombre de archivo "cadena de certificado" - Forzar reemplazo de firma
Pasos para volver a firmar:< / p>
1. Eliminar complementos y paquetes .app con complementos (como Watch)
2. Volver a firmar las bibliotecas en Frameworks
3. Otorgue permisos de Archivo ejecutable +x (ejecutable)
4. Reemplace el archivo de descripción
5. Reemplace el BundleID
6. Vuelva a firmar la aplicación. el paquete del archivo de autorización (Entilements)
Operación real:
Obtener el paquete ipa roto
Obtener el paquete ipa de terceros
Compruebe si el paquete ipa está roto 》 Ninguno de los productos que no figuran en la lista está empaquetado, no es necesario prestar atención
Descomprima el paquete ipa, ingrese a la carpeta de carga de reproducción y busque el archivo MachO
Use el comando otool -l DingTalk | grep crypt en la terminal, 0 Si está descomprimido, si es mayor que 0, no está descomprimido (generalmente 1)
Verifique el certificado local válido en el terminal
$security find-identity -v -p coding
Elimina los archivos de complementos que no se pueden firmar
Elimina la carpeta Complementos y mira carpeta
Para la carpeta Frameworks en la carpeta .app Forzar la nueva firma para cada framework
Comando: $ codesign -fs "iPhone Developer: xxx " xxx.framework
Busque todos los .frameworks en la carpeta framework y utilice el comando anterior para su firma.
Se recomienda ejecutarlo mediante un comando de script:
Reemplazar el archivo de descripción a firmar con embeded.mobileprovision por embed.mobileprovision
Crear derechos. archivo plist
p>Vea el contenido del archivo de descripción, use el comando security cms -D -I embeded.mobileprovision, busque el nodo Entitlements, luego cree el archivo entitlements.plist, copie el contenido allí, y finalmente copie el archivo entitlements.plist a la carpeta playload (mismo nivel que xx.app).
!]( blogs.com/guohai-stronger/p/11781249.html
Explicación detallada del mecanismo de firma de la aplicación iOS