J'ai une petite application de preuve de concept, où j'essaie d'intégrer (et de signer) un cadre (Alamofire) à l'intérieur de mon cadre (AequumPOCFramework.framework), cependant, lorsque j'essaie de déployer sur mon appareil, il continue de donner moi l'erreur
.... non valide pour une utilisation dans le processus utilisant la validation de bibliothèque: le fichier mappé n'a pas de cdhash, complètement non signé? Le code doit être au moins signé de manière ad hoc.
Si j'essaie simplement de déployer mon propre framework, sans avoir Alamofire intégré, tout fonctionne bien.
L'erreur complète lors du déploiement sur mon iphone est:
dyld: Bibliothèque non chargée: @ rpath / Alamofire.framework / Alamofire Référencé depuis: /private/var/containers/Bundle/Application/EDB697EB-EA15-4301-B4B6-A8FE1F0212BE/PocIOS.app/Frameworks/AequumPOCFrameworkPF : aucune image appropriée trouvée. A trouvé: /private/var/containers/Bundle/Application/EDB697EB-EA15-4301-B4B6-A8FE1F0212BE/PocIOS.app/Frameworks/AequumPOCFramework.framework/Frameworks/Alamofire.framework/Alamofire: signature de code dans ( /containers/Bundle/Application/EDB697EB-EA15-4301-B4B6-A8FE1F0212BE/PocIOS.app/Frameworks/AequumPOCFramework.framework/Frameworks/Alamofire.framework/Alamofire) non valide pour une utilisation dans le processus à l'aide de la validation de bibliothèque: msh , complètement non signé? Le code doit être au moins signé de manière ad hoc.
Qu'est-ce que je fais mal?
Réponses:
Les frameworks imbriqués ne sont pas pris en charge sur iOS (voir les notes techniques ). La seule solution légitime pour le moment est de lier directement des frameworks "embarqués" à une application d'hébergement.
* XCFramework est principalement une agrégation de binaires spécifiques à la plate-forme et n'a malheureusement rien à voir avec les cadres d'intégration.
la source
Vous devez également intégrer Alamofire à votre projet.
Par exemple, vous utilisez Carthage et le Cartfile de votre framework contient la bibliothèque Alamofire. Vous devez également utiliser le même Carfile pour votre application principale. En outre, vous devez effectuer d'autres actions Carthage (liaison de bibliothèque, ajout d'un script d'exécution) pour l'application principale.
la source