IOS云打包修改权限提示语解决IOS提交审核相册等隐私描述语导致审核失败,提示“没有阐明相机在适用的用途字符串中的使用”的问题

  IOS提审又被拒了,惆怅。提示问题如下:

一、第一个问题:

Guideline 2.3.10 - Performance - Accurate Metadata


We noticed that your app or its metadata includes irrelevant third-party platform information.

Specifically, your app includes Android references in the 墨币账户.

Referencing third-party platforms in your app or its metadata is not permitted on the App Store unless there is specific interactive functionality.

Next Steps

To resolve this issue, please remove all instances of this information from your app and its metadata, including the app description, promotional text, What's New info, previews, and screenshots.

  说是墨币页面包含了安卓的元数据,这个问题解决,删除即可。

二、第二个问题

Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage

We noticed that your app requests the user’s consent to access the camera and photos, but doesn’t sufficiently explain the use of the camera and photos in the purpose string.

To help users make informed decisions about how their data is used, all permission request alerts need to specify how your app will use the requested information.

Next Steps

Please revise the relevant purpose string in your app’s Info.plist file to specify why your app needs access to the user's camera and photos. Make sure the purpose string includes an example of how the user's data will be used.

You can modify your app's Info.plist file using the property list editor in Xcode.
准则5.1.1 -法律-隐私-数据收集和存储

我们注意到,您的应用程序请求用户同意访问他们的相机,但没有阐明相机在适用的用途字符串中的使用。

下一个步骤

请修改您的应用程序信息中的相关目的字符串。指定应用程序为什么请求访问用户的相机。你可以修改你的应用程序的信息。使用Xcode中的属性列表编辑器的plist文件。

为了帮助用户理解为什么您的应用程序请求访问他们的个人数据,应用程序中的所有权限请求警报都应该指定应用程序将如何使用所请求的功能。

资源

有关请求权限的更多信息和说明,请查看iOS人机界面指南的请求权限部分和信息属性列表键引用。您可能还想查看技术问答QA1937:解析隐私敏感数据应用程序拒绝页面,了解关于如何为权限请求警报提供使用说明的详细信息。

  说的是:请修改应用程序中的相关目的字符串信息列表文件指定应用程序需要访问用户相机和照片的原因。确保目的字符串包含如何使用用户数据的示例。

  没看明白所以只能查资料了。

  原来默认的目的字符串描述只是比如“读取相册”,请求用户授权,并没有说读取相册用来干嘛;而矫情的IOS就是要你给用户写清楚你读取相册是用来干嘛的。

  解决方案就是要描述清楚。比如一个外卖应用,获取定位后需要展示附近的美食信息。那么,相应的定位权限描述,应当是类似“获取定位信息用于为用户提供附近的美食信息”这样的描述。而不应当是,“获取用户当前位置信息”这种没有明确描述定位用处的信息。

三、解决方案:IOS云打包修改权限提示语

  打包提交appstore如果用到了如下权限需要修改提示语,详细描述使用这个权限的原因,如不修改提示语appstore审核可能会被拒绝。

  Apple的原则是,如果一个app想要申请用户同意某个隐私信息访问许可,需要给用户明确的申请权限的原因,能给用户带来什么价值。

  所以要求开发者填写这个原因,并且在iOS向手机用户弹出是否允许app访问某隐私信息时,会同时展示开发者填写的这个描述,以帮助用户判断,是否有必要同意这个app访问隐私信息。

1、IOS上的隐私信息包括:

  • 通讯录 NSContactsUsageDescription
  • 麦克风 NSMicrophoneUsageDescription
  • 相机 NSCameraUsageDescription
  • 相册(访问) NSPhotoLibraryUsageDescription
  • 相册(保存图片到相册) NSPhotoLibraryAddUsageDescription
  • 定位(使用时获取地理位置) NSLocationWhenInUseUsageDescription
  • 定位(持续获取地理位置) NSLocationAlwaysUsageDescription

    新版本IOS 11.3上对定位权限进行了合并 使用定位需要增加一个新的声明

  • 定位(iOS11.3及以上版本) NSLocationAlwaysAndWhenInUseUsageDescription
  • 蓝牙 NSBluetoothPeripheralUsageDescription
  • 语音转文字 NSSpeechRecognitionUsageDescription
  • 日历 NSCalendarsUsageDescription

2、设置方法如下:

  使用视图方式打开manifest.json文件, 在plus->distribute->apple节点(uni-app项目为:app-plus -> distribute -> ios节点)下添加plistcmds,数据类型为Array,开发者可复制以下代码到manifest.json文件中并根据实际使用情况进行增减

"plus": {  
    "distribute": {  
      "apple": {  
        "plistcmds": [  
          "Set :NSContactsUsageDescription 说明读取用户通讯录的原因",  
          "Set :NSMicrophoneUsageDescription 说明使用麦克风的原因",  
          "Set :NSPhotoLibraryUsageDescription 说明读取用户相册的原因",  
          "Set :NSCameraUsageDescription 说明使用用户相机的原因",  
          "Set :NSPhotoLibraryAddUsageDescription 说明向用户相册添加图片的原因",  
          "Set :NSLocationAlwaysUsageDescription 说明持续获取用户地理位置的原因",  
          "Set :NSLocationWhenInUseUsageDescription 说明使用用户地理位置的原因",  
          "Set :NSLocationAlwaysAndWhenInUseUsageDescription 说明使用用户地理位置的原因"  
        ]  
      }  
    }  
  }
// uni-app, ios打包配置
"ios" : {
    "privacyDescription" : {
        "NSPhotoLibraryUsageDescription" : "获取用户手机相册用于提供相册图片素材",
        "NSPhotoLibraryAddUsageDescription" : "将图片保存至手机相册",
        "NSCameraUsageDescription" : "获取用户手机相册用于快捷拍照功能"
    }
},

3、更新:HBuilderX1.1起,在manifest可视化视图-模块权限配置里,可方便的输入提示语,不用再进代码视图操作

  注意:通过上面方法修改提示语后需要重新打包,调试基座的提示语不会变化。

posted @ 2021-02-01 14:31  古兰精  阅读(3937)  评论(0编辑  收藏  举报