Notarisation des applications Electron - «Vous devez d'abord signer les contrats pertinents en ligne. (1048) "erreur

15

J'essaie de légaliser une application d'électrons pour la faire fonctionner sur macOS Catalina. L'emballage a réussi, mais la xcrun altoolcommande génère l'erreur «Vous devez d'abord signer les contrats pertinents en ligne. (1048)».

Contenu de l'application Electron package.json:

"mac": {
      "entitlements": "./build/entitlements.mac.inherit.plist",
      "hardenedRuntime": true,
      "type": "distribution",
      "category": "public.app-category.productivity",
      "icon": "build/icon.icns",
      "target": [
        "dmg",
        "zip"
      ]
    },
   "dmg": {
      "sign": false,

Fichier droits.ac.inherit.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>com.apple.application-identifier</key>
    <string><app.bundle.name></string>
    <key>com.apple.developer.team-identifier</key>
    <string><TEAMID></string>
    <key>com.apple.security.app-sandbox</key>
    <true/>
    <key>com.apple.security.application-groups</key>
    <array>
      <string><app.bundle.name></string>
    </array>
    <key>com.apple.security.network.client</key>
    <true/>
    <key>com.apple.security.cs.allow-unsigned-executable-memory</key>
    <true/>
    <key>com.apple.security.inherit</key>
    <true/>
  </dict>
</plist>

J'ai exécuté la commande comme mentionné dans https://stackoverflow.com/a/53121755

xcrun altool --notarize-app -f App.dmg --primary-bundle-id app.bundle.name -u <username> -p <app-specific-password>

C'est jeter Vous devez d'abord signer les contrats pertinents en ligne. (1048) erreur. Je ne parviens pas à procéder à la signature de l'application. Aidez-moi!

ps: le paquet electron-notarize génère la même erreur.

Ganesh Rathinavel
la source
En vous connectant à votre compte Apple Dev, vous devriez être en mesure d'approuver les accords.
Richard Barber
@RichardBarber quels sont ces accords, où les trouver?
Ganesh Rathinavel
accédez à developer.apple.com, cliquez sur adhésion, puis faites défiler vers le bas et cliquez sur accords. Il devrait y avoir un accord de licence et un accord de programme. Acceptez les accords et votre date d'acceptation sera notée sous la date d'émission.
Richard Barber
1
Cet article mentionne que cela a été un problème temporaire pour eux davidebarranca.com/2019/04/… (Je rencontre également cette erreur après avoir notarié déjà travaillé et je n'ai rien changé dans mon code)
Misha Reyzlin
1
Donc, une mise à jour de ma part, mon compte sur notre organisation de développeurs Apple n'était pas un "compte administrateur", donc je n'ai pas pu voir ces accords. En outre, ils se sont avérés être sur appstoreconnect.apple.com . Une fois que j'ai eu un membre de l'équipe qui avait un accès administrateur pour m'aider, ils ont navigué vers appstoreconnect et ont accepté l'accord juridique en attente.
Misha Reyzlin

Réponses:

21

TLDR: vérifiez que votre compte developer.apple.com dispose des autorisations d'administrateur pour votre organisation et accédez à https://appstoreconnect.apple.com/ pour accepter les documents juridiques.

J'ai également reçu l'erreur "Erreur: vous devez d'abord signer les contrats pertinents en ligne. (1048)".

La navigation vers les abonnements developer.apple.com ou toute autre chose n'a pas révélé d'invite. Il s'est avéré que mon compte de développeur Apple n'avait aucun droit "d'administrateur" au sein de notre organisation et je ne pouvais pas voir les invites légales, mais rien n'indiquait cela.

Après qu'un membre de l'équipe avec un accès administrateur a accédé à https://appstoreconnect.apple.com/ , un accord en attente devait être accepté et l'erreur a disparu.

UPD . Les commentaires suggèrent que les accords pourraient également être directement examinés sur https://appstoreconnect.apple.com/agreements/#

Misha Reyzlin
la source
Après avoir fait cela, j'ai reçu une autre invite disant que "l'utilisateur avec le rôle Légal (Titulaire du compte) doit examiner et accepter le calendrier des applications payantes". Le titulaire du compte doit donc également signer l'accord sur les applications payantes ( appstoreconnect.apple.com/agreements/# ), même si vous ne développez pas d'application payante.
GavinoGrifoni
4
@Misha Reyzlin Ce fut une grande aide. Tout ce que je devais faire était de remplir et d'accepter les accords "Paid Apps" dans appstoreconnect.apple.com/agreements/#
Ganesh Rathinavel
4

Vous pouvez également accéder à https://developer.apple.com/account/#/overview/ {companyid}

En haut, vous serez invité à accepter le contrat de licence mis à jour. Dans le cas où vous ne disposez pas des droits, il y aura un bouton qui génère un e-mail contenant le lien vers ceux qui le peuvent.

MoxxiManagarm
la source