Je souhaite valider mon application et tout en notarisant, j'ai reçu le statut de package invalide pour ce "message": "L'exécutable n'a pas le runtime renforcé activé.",
Je construis l'application en highsierra et Xcode 9.4.
J'ai essayé d'ajouter --options = runtime lors de la signature du code, mais je n'ai pas aidé à résoudre l'erreur.
3 Réponses :
Si le message dit "n'a pas le runtime renforcé activé.", alors il en est ainsi. L'option que vous avez ajoutée n'a pris effet pour aucune raison.
Essayez d'exécuter codesign en ligne de commande.
Essayez également avec l'option --deep .
Le message devrait vous indiquer quel exécutable n'a pas le runtime renforcé activé. Signez cet exécutable spécifique séparément avant de signer l'ensemble de l'application et vérifiez si cette erreur disparaît.
Utilisez codesign . Il a un indicateur --options = runtime .
le runtime de l'option codesign signifie "rendre la signature compatible avec un binaire construit avec un runtime renforcé". Mais votre message d'erreur signifie que le binaire a été construit sans que le runtime renforcé soit activé. Construire le code et le signer sont deux choses différentes - vous ne pouvez pas créer rétroactivement lors de la signature.
Vous devez soit utiliser le bouton + à gauche de l'onglet Signature & Capabilities pour ajouter l'option Hardened Runtime, soit si vous faites tout manuellement, allez dans les paramètres de construction et définissez ENABLE_HARDENED_RUNTIME sur OUI .
Lorsque vous vérifiez la signature de votre application, en utilisant:
codesign --display --verbose <path-to-app>
Recherchez la ligne commençant par "codedirectory" et assurez-vous que l'un des indicateurs répertoriés est "runtime".
p >
Où avez-vous ajouté
--options = runtime? Selon Apple, «l'exécution renforcée est disponible dans le volet Capacités de Xcode 10 ou version ultérieure, mais vous pouvez activer la fonctionnalité manuellement à l'aide de versions antérieures de Xcode, à condition que vous soyez sous macOS 10.13.6 ou version ultérieure. Pour ce faire, ajoutez l'indicateur suivant au paramètre de construction OTHER_CODE_SIGN_FLAGS: "Cela peut vous être utile, stackoverflow.com/questions/53112078/...assurez-vous de ne pas modifier le bundle après l'avoir signé par code. sinon la signature devient invalide.