可以在iOS的应用启动时请求日历并推送通知访问吗?



我的应用程序,我需要日历和通知访问。我知道这不是要求用户接受该应用程序第一个启动的一系列请求的最佳方法,但是目前不可能重新考虑应用程序设计。因此,我在此阶段的问题是 - 如果我在应用程序启动时一一做这两个请求,App Store会批准我的应用吗?还是我会打破一些关键的苹果指南?

更新

找到https://developer.apple.com/ios/human-interface-guidelines/app-architecture/requesting-permission/

尚不清楚如果我在启动时提出2个请求,是否可以拒绝我的应用程序。

,所以不是一个很好的论坛,因为您不会从Apple的应用程序评论团队获得权威答案,即什么将/不会拒绝您 - 只有猜测和轶事来自其他开发人员的经验。就是说...

您链接的人类界面指南是如何制作一个"好"应用程序,该应用程序可以使您获得良好的评论,设计奖,同行的顾名度等。应用程序评论指南是如何 not> not 从商店拒绝的"坏"应用程序。未能使前者失败,并不一定会失败后者。

基本上有三种方法可以处理应用程序中的隐私/通知权限:

  1. 调用导致权限的系统API在应用程序启动过程中发挥了机会性提示。(要么有条件地在您的第一个启动上,要么普遍地依靠操作系统来确保它只要求一次。(

    这可能会让用户震惊 - 可能尚不清楚为什么应用程序要求对此请求许可,并且他们可能会在连续收到几个许可提示(如果应用程序需要摄像机,通知和联系人以及其他任何内容。(

  2. 仅根据需要调用与权限相关的API;例如如果您有一个社交媒体应用程序,用户在其中发布文本,有时使用相机发布图片/视频,请在用户首次尝试相机之前提示相机许可。(大多数许可 - 要求API为您提供两种处理方法:您可以明确检查/请求许可,或者您可以开始使用API,并且系统将自动显示权限警报。(

    (

    这使用户更清楚地确切需要许可,但仍会中断他们的工作流程。对于应用程序无需用户操作(例如通知(而对某些事情进行的许可的情况,这并不总是可行的。

  3. 如果您首次启动应用程序时有某种类型的登机介绍/旅行,请一次征求许可,一次一次步骤。例如,Learning应用程序的首次发布体验可能会使用户通过几个屏幕进行解释,其中之一是"您想要通知提醒您学习?",另一个是"您想使用相机来创建相机您自己的抽认卡?"。

    这有助于避免#1的"一堆意外提示"问题,但也可以使用户立即进入您的应用程序。

所有这些(以及您有时可能会看到的其他变体(都有权衡,因此请考虑用户的观点,并选择最适合您的应用程序的内容。

也许您可以找到一种聪明的方法来通过登机过程的首次启动来要求通知。

例如:https://github.com/juanpablofernandez/swiftyonboard

最新更新