Нотариальное заверение приложений Electron: «Сначала вы должны подписать соответствующие контракты онлайн. (1048) »ошибка

15

Я пытаюсь нотариально заверять электронное приложение, чтобы оно работало на macOS Catalina. Упаковка прошла успешно, но xcrun altoolкоманда выдает ошибку «Сначала нужно подписать соответствующие контракты онлайн. (1048)».

Электронное приложение 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,

Файл authorlements.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: электронно-нотариально заверенный пакет выдает ту же ошибку.

Ганеш Ратинавел
источник
войдя в свою учетную запись Apple Dev, вы сможете одобрить соглашения.
Ричард Барбер
@RichardBarber, что это за соглашения, где их найти?
Ганеш Ратинавел
перейдите на сайт developer.apple.com, щелкните членство, затем прокрутите вниз и нажмите кнопку соглашения. Там должно быть лицензионное соглашение и программное соглашение. Примите соглашения и ваша дата принятия будет отмечена под датой выдачи.
Ричард Барбер
1
В этой статье упоминается, что это был временный сбой для них. Davidebarranca.com/2019/04/… (Я также испытываю эту ошибку после того, как нотариальное завершение уже сработало, и я ничего не менял в своем коде)
Миша Рейзлин,
1
Итак, по моим данным, моя учетная запись в нашей организации разработчиков Apple не была «учетной записью администратора», поэтому я не мог видеть эти соглашения. Кроме того, они оказались на appstoreconnect.apple.com . Как только я получил члена команды, который имел доступ администратора, чтобы помочь мне, они перешли к appstoreconnect вещь и приняли ожидающее юридическое соглашение.
Миша Рейзлин

Ответы:

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/# ), даже если вы не разрабатываете платное приложение.
ГавиноГрифони
4
@ Миша Рейзлин Это была большая помощь. Все, что мне нужно было сделать, это заполнить и принять «Платные приложения» Соглашения в appstoreconnect.apple.com/agreements/#
Ганеш Ратинавел
4

Вы также можете перейти к https://developer.apple.com/account/#/overview/ {companyid}

В верхней части появится подсказка для согласования обновленного лицензионного соглашения. В случае, если у вас нет прав, будет кнопка, которая генерирует электронное письмо со ссылкой на тех, кто может.

MoxxiManagarm
источник