Electronアプリの公証はスロー-「まず、関連する契約をオンラインで署名する必要があります。(1048)」エラー


15

電子アプリを公証してmacOSカタリナで実行できるようにしています。パッケージ化は成功しましたが、xcrun altoolコマンドは「最初に関連する契約にオンラインで署名する必要があります。(1048)」エラーをスローします。

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,

entitlements.mac.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>

https://stackoverflow.com/a/53121755に記載されているようにコマンドを実行しました

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

それは投げていますあなたはまずオンラインで関連する契約に署名しなければなりません。(1048)エラー。アプリの署名を続行できません。助けて!

ps:electron-notarizeパッケージが同じエラーをスローします。


Apple開発アカウントにログインすると、契約を承認できるはずです。
Richard Barber

@RichardBarberどのような契約がありますか、どこで見つけられますか?
Ganesh Rathinavel

developer.apple.comにアクセスして[メンバーシップ]をクリックし、下にスクロールして契約をクリックします。ライセンス契約とプログラム契約があるはずです。契約に同意すると、受理日が発行日の下に表示されます。
Richard Barber、

1
この記事では、davidebarranca.com / 2019/04 /…が一時的な不具合であると述べています(公証がすでに機能し、コードに変更を加えていないため、このエラーも発生しています)
Misha Reyzlin

1
だから、私からの更新によると、私たちのApple開発者組織の私のアカウントは「管理者アカウント」ではなかったので、これらの契約を見ることができませんでした。また、それらはappstoreconnect.apple.comにあることがわかりました。私を支援する管理者アクセス権を持つチームメンバーを取得すると、彼らはappstoreconnectに移動し、保留中の法的合意に同意しました。
Misha Reyzlin、

回答:


21

TLDR:developer.apple.comアカウントに組織の管理者権限があることを確認し、https://appstoreconnect.apple.com/にアクセスして、法的文書に同意してください

「エラー:最初に関連する契約にオンラインで署名する必要があります。(1048)」というエラーも発生しました。

developer.apple.comメンバーシップなどに移動しても、プロンプトは表示されませんでした。結局のところ、私のApple開発者アカウントには私たちの組織内の「管理者」権限がなく、法的プロンプトを表示できませんでしたが、これを示すものはありませんでした。

管理者アクセス権を持つチームメンバーがhttps://appstoreconnect.apple.com/に移動した後、保留中の契約が承認されなければならず、エラーは解消しました。

UPD。コメントは、契約がhttps://appstoreconnect.apple.com/agreements/#でも直接見直されることができることを示唆しました


これを実行した後、「法的役割を持つユーザー(アカウント所有者)は有料アプリケーションのスケジュールを確認して受け入れる必要があります」という別のプロンプトが表示されました。そのため、アカウント所有者は、有料アプリを開発していない場合でも、有料アプリ契約(appstoreconnect.apple.com/agreements/#)にも署名する必要があります。
GavinoGrifoni

4
@Misha Reyzlinとても助かりました。私がしなければならなかったすべてはappstoreconnect.apple.com/agreements/#の「有料アプリ」契約に記入して受け入れること
でした

4

https://developer.apple.com/account/#/overview/ {companyid}に移動することもできます

上部には、更新されたライセンス契約に同意するよう求めるプロンプトが表示されます。あなたが権利を持っていない場合には、できる人へのリンクを含むメールを生成するボタンがあります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.