您的应用程序包签名中的权利与您的配置文件中包含的权利不匹配

Ash*_*ams 3 entitlements ios provisioning-profile expo app-store-connect

我遇到了一个奇怪的问题,我没有更改 expo app.json 中的任何 expo 设置,突然 Apple 拒绝存档,原因如下:

错误 ITMS-90164:“无效的代码签名权利。应用程序包签名中的权利与配置文件中包含的权利不匹配。根据配置文件,包包含不允许的键值:'[ ]' 用于“Payload/ExpoKitApp.app/com.company.appname”中的密钥“com.apple.security.application-groups”。

我的世博会配置如下所示:

{
  "expo": {
    "name": "App Name",
    "slug": "app-name-slug",
    "version": "1.1.1",
    "orientation": "portrait",
    "icon": "./src/assets/icon.png",
    "splash": {
      "image": "./src/assets/splash.png",
      "resizeMode": "cover",
      "backgroundColor": "#000000"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ],
    "ios": {
      "supportsTablet": false,
      "bundleIdentifier": "com.company.appname",
      "buildNumber": "1.1.1",
      "infoPlist": {
        "NSCameraUsageDescription": "App Name uses your camera to allow you to upload a profile picture.",
        "NSPhotoLibraryUsageDescription": "App Name uses your photos to allow you to upload a profile picture."
      }
    },
    "android": {
      "package": "com.company.appname",
      "versionCode": 13,
      "permissions": []
    },
    "web": {
      "favicon": "./src/assets/favicon.png"
    },
    "androidStatusBar": {
      "barStyle": "light-content",
      "backgroundColor": "#042f3d"
    },
    "androidNavigationBar": {
      "barStyle": "dark-content",
      "backgroundColor": "#042f3d"
    },
    "description": ""
  }
}
Run Code Online (Sandbox Code Playgroud)

诚然,这是我在 Apple Review 系统(这是第一个应用程序)中遇到的第一个问题,所以我不知道去哪里找。任何帮助,将不胜感激。

编辑:我在 Windows 上使用 expo,并且我有 App Store Connect。

Mik*_*rdy 7

我当然愿意纠正这个答案,但正如上面的评论中提到的:

猜测根本原因:(Apple App Store 是一个封闭的系统,我们可能只是猜测)

我相信 Apple 后端从今天起已经发生了变化,并且已经开始对采用数组值的授权键应用更严格的规则。

我相信 Apple 后端过去常常接受使用数组值的权利键的空数组,但现在要求权利键要么根本不存在,要么包含实际值。

支持这一说法的证据:

  • 我有一个权利文件,其中包含一个“应用内消息”权利的密钥,其中包含一个空数组,如下所示:
        <key>com.apple.developer.in-app-payments</key>
        <array/>
Run Code Online (Sandbox Code Playgroud)
  • 直到昨天这一切都很好(我成功提交了一个构建,并且已经提交了这样的构建一年多。

  • 现在它不再正常,并且您的错误中有类似的空数组消息。

修复:

打开 .xcworkspace(Xcode 项目)文件并导航到我的项目的签名和权利,并删除有问题的权利密钥

无论如何,密钥是空的,所以除了现在权利文件完全删除了我上面引用的行之外,应该不会产生任何影响

应用商店提交成功。