首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误ITMS-90283:无效的供应配置文件。包中包含的供应配置文件无效[缺少代码签名证书]

错误ITMS-90283:无效的供应配置文件。包中包含的供应配置文件无效[缺少代码签名证书]
EN

Stack Overflow用户
提问于 2019-11-28 04:59:41
回答 2查看 866关注 0票数 9

版本

  • 电子: 5.0.1
  • 电子生成器: 21.2.0
  • 电子公证: 0.1.1
  • 电子-webpack: 2.7.4
  • 制作: MacOS Catalina 10.15

dmg文件工作得很好。但是当我试图通过传输验证时,我得到了以下错误。

误差

构建配置

代码语言:javascript
复制
"build": {
    "appId": "<APP_ID>",
    "productName": "<PRODUCT_NAME",
    "copyright": "<COMPANY_NAME>",
    "afterSign": "scripts/notarize.js",
    "directories": {
      "buildResources": "resources",
      "output": "release"
    },
    "mac": {
      "hardenedRuntime": true,
      "gatekeeperAssess": false,
      "category": "public.app-category.developer-tools",
      "target": ["mas"],
      "icon": "resources/icon.icns",
      "identity": "<IDENTITY>",
      "provisioningProfile": "build/mac.provisionprofile",
      "type": "distribution",
      "electronLanguages": ["en"],
      "entitlements": "build/mac.plist",
      "entitlementsInherit": "build/mac.plist"
    },
    "mas": {
      "hardenedRuntime": false,
      "provisioningProfile": "build/mas.provisionprofile",
      "type": "distribution",
      "electronLanguages": ["en"],
      "entitlements": "build/entitlements.mas.plist",
      "entitlementsInherit": "build/entitlements.mas.inherit.plist"
    },
    "dmg": {
      "sign": false,
      "contents": [
        {
          "x": 130,
          "y": 220
        },
        {
          "x": 410,
          "y": 220,
          "type": "link",
          "path": "/Applications"
        }
      ]
    },
    "files": [
      "dist/",
      "node_modules/",
      "app_prod.html",
      "main.prod.js",
      "main.prod.js.map",
      "package.json",
      "assets/"
    ],
    "win": {
      "target": ["nsis"]
    },
    "linux": {
      "target": ["deb", "AppImage"],
      "category": "Development"
    }
},

notarize.js

代码语言:javascript
复制
require('dotenv').config();
const { notarize } = require('electron-notarize');

exports.default = async function notarizing(context) {
  const { electronPlatformName, appOutDir } = context;
  if (electronPlatformName !== 'darwin') {
    return;
  }

  const appName = context.packager.appInfo.productFilename;

  return await notarize({
    appBundleId: process.env.BUNDLE_ID,
    appPath: `${appOutDir}/${appName}.app`,
    appleId: process.env.APPLE_ID,
    appleIdPassword: process.env.APPLE_ID_PASS,
  });
};

mac.plist

代码语言:javascript
复制
<?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.security.cs.allow-unsigned-executable-memory</key>
    <true/>
    <key>com.apple.security.network.client</key>
    <true/>
    <key>com.apple.security.files.user-selected.read-write</key>
    <true/>
    <key>com.apple.security.cs.allow-jit</key>
    <true/>
    <key>com.apple.security.cs.allow-dyld-environment-variables</key>
    <true/>
    <key>com.apple.security.cs.disable-library-validation</key>
    <true/>
  </dict>
</plist>

entitlements.mas.plist

代码语言:javascript
复制
<?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.security.app-sandbox</key>
    <true/>
    <key>com.apple.application-identifier</key>
    <string>APPLICATION_ID</string>
    <key>com.apple.developer.team-identifier</key>
    <string>TEAM_ID</string>
    <key>com.apple.security.application-groups</key>
    <array>
      <string>BUNDLE_ID</string>
    </array>
    <key>com.apple.security.network.client</key>
    <true/>

    <key>com.apple.security.files.user-selected.read-only</key>
    <true/>

    <key>com.apple.security.files.downloads.read-write</key>
    <true/>

    <key>com.apple.security.files.user-selected.read-write</key>
    <true/>

    <key>com.apple.security.files.all</key>
    <true/>
    <key>com.apple.security.application-groups</key>
    <string>security</string>
  </dict>
</plist>

entitlements.mas.inherit.plist

代码语言:javascript
复制
<?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.security.app-sandbox</key>
    <true/>
    <key>com.apple.security.inherit</key>
    <true/>
  </dict>
</plist>

My certficates

构建文件夹

供应概况

此外,还传递了公证步骤。我在这里有遗漏什么吗?

EN

回答 2

Stack Overflow用户

发布于 2020-10-06 19:27:43

我有与更新版本的电子一样的错误消息。实际上,对我来说,问题在于我有多个x.provisionprofile,而不是embedded.provisionprofile (正如电子构建器文档中所说的那样),其他的一个被使用,从而导致了这个错误。您可以在这里检查完整的源代码和构建安装程序:https://github.com/johannesjo/super-productivity

票数 2
EN

Stack Overflow用户

发布于 2021-08-28 05:03:24

@hugo der hungrige -谢谢你的提示.对于遇到同样问题的其他人..。根据外面的许多指示,你有以下2:

  • embedded.provisionprofile
  • embedded.mas.provisionprofile

..。设置您的配置,以便-- "mac“和"mas”--使用相同的

代码语言:javascript
复制
{
    "productName": "alooper",
    "appId": "com.gieson.alooper",
    "directories": {
        "buildResources": "buildResources",
        "output": "release"
    },
    "afterSign": "./buildResources/notarize.js",
    "mac": {
        "hardenedRuntime": false,
        "gatekeeperAssess": false,
        "type": "development",
        "target": [
            "mas"
        ],
        "artifactName": "${productName}-${version}-${os}.${ext}",
        "category": "public.app-category.music",
        "provisioningProfile": "./embedded.mas.provisionprofile",
        "entitlements": "./entitlements.plist",
        "icon": "./app/assets/icon/alooper.icns"
    },
    "mas": {
        "hardenedRuntime": true,
        "type": "distribution",
        "target": [
            "pkg"
        ],
        "artifactName": "${productName}-${version}-${os}.${ext}",
        "category": "public.app-category.music",
        "provisioningProfile": "./embedded.mas.provisionprofile",
        "entitlements": "./entitlements.mas.plist",
        "entitlementsInherit": "./entitlements.mas.inherit.plist",
        "icon": "./app/assets/icon/alooper.icns"
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59082000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档