【问题标题】:How to resolve "Missing Info.plist key ... NSPhotoLibraryUsageDescription"如何解决“缺少 Info.plist 键 ... NSPhotoLibraryUsageDescription”
【发布时间】:2017-05-27 11:45:42
【问题描述】:

我完全使用应用程序加载器上传了我的 .ipa 文件,但我没有找到基于 Itunes Connect 构建的文件,我还收到了来自苹果支持的这条消息:“我们发现您最近交付的“更新 HF”存在一个或多个问题. 要处理您的交货,必须更正以下问题: 缺少 Info.plist 键 - 此应用程序尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSPhotoLibraryUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。 "

我将以下代码添加到 config.xml 文件,但我仍然有同样的错误:

【问题讨论】:

  • 请向我们展示您所做的编辑 - 您的问题中目前未显示任何内容。
  • 我不确定您对config.xml 的含义,但没有 Xcode 或 iTunesConnect 可以查看的此类文件。请查看@Rahul 的回答,将其添加到您的info.plistAppName-Info.plist
  • 人们认为您在谈论 xcode,而不是 Cordova。我现在也在寻找答案。你最终解决了这个问题吗?

标签: ios cordova


【解决方案1】:

在我的情况下,App Store Connect 一直说密钥丢失,即使它确实存在。在多次查看 Info.plist 之后,我终于注意到 NSPhotoLibraryUsageDescription 键在键的末尾有一个额外的空间,这显然会阻止上传过程看到该键。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题。尝试在 config.xml 中使用以下代码

    <gap:config-file platform="ios" parent="NSPhotoLibraryUsageDescription">
    

    这对你来说可能是迟到的回应,但希望这对未来的人有用。

    【讨论】:

      【解决方案3】:

      我正在使用 VS TACO,这就是我最终解决此问题的方法。编辑 \plugins\fetch.json 文件,使“cordova-plugin-camera”添加“变量”部分:

      "cordova-plugin-camera": {
          "source": {
              "type": "registry",
              "id": "cordova-plugin-camera@~2.4.1"
          },
          "is_top_level": true,
          "variables": {
              "CAMERA_USAGE_DESCRIPTION": "your description text here",
              "PHOTOLIBRARY_USAGE_DESCRIPTION": "your description text here"
          }
      }
      

      【讨论】:

        【解决方案4】:

        编辑: 所有核心插件都已更新为不再使用变量。 要设置使用说明,您必须在 config.xml 中使用 edit-config 标签,如下所示:

        <edit-config target="NSCameraUsageDescription" file="*-Info.plist" mode="merge">
            <string>need camera access to take pictures</string>
        </edit-config>
        

        参见iOS Quirks 部分

        旧答案: 首先用cordova plugin rm cordova-plugin-camera移除cordova-plugin-camera

        然后再次安装:

        cordova plugin add cordova-plugin-camera --variable PHOTOLIBRARY_USAGE_DESCRIPTION="your usage message"
        

        【讨论】:

        • @Irvin,这个答案是对的。我会在相机插件的文档中添加这个 URL github.com/apache/cordova-plugin-camera#ios-quirks,它还有另一个参数 CAMERA_USAGE_DESCRIPTION。
        • 这适用于我的 pohnegap 7.0.1 项目,不适用于其他解决方案
        【解决方案5】:

        您可以在您的 plist 中添加以下行。

        <key>NSCameraUsageDescription</key>
        <string>$(PRODUCT_NAME) uses photos</string>
        <key>NSPhotoLibraryUsageDescription</key>
        <string>$(PRODUCT_NAME) uses photos</string>
        

        【讨论】:

        • 也许我很愚蠢,但你只是放了一些东西的截图,但没有解释在哪里可以找到你正在截图的东西。你在编辑什么文件?我在哪里可以找到它?
        • @KaeVerens 此数据在 INFO 选项卡中
        • 请注意,这样的通用描述将不再让您获得应用商店的批准。您必须实际描述应用访问相机或照片的原因(例如,选择您的用户个人资料图片)
        猜你喜欢
        • 2022-06-30
        • 2017-11-28
        • 1970-01-01
        • 2018-10-13
        • 2021-09-24
        • 2017-01-26
        • 2018-03-19
        • 1970-01-01
        相关资源
        最近更新 更多