【问题标题】:Can I change the wording and redefine the buttons when I request permission from iOS?当我向 iOS 请求许可时,我可以更改措辞并重新定义按钮吗?
【发布时间】:2020-01-06 02:44:43
【问题描述】:

我是 iOS 的初学者。我们目前正在快速开发它。我想要的是更改许可请求的措辞。它不适合我,我希望我能改变这一点。当通知中的“不允许”按钮被按下时,再次按下该按钮并且不再请求摄像头权限。如何申请?

ViewController.swift

  @IBAction func Onclick(_ sender: Any) {
        AVCaptureDevice.requestAccess(for: AVMediaType.video) { response in
            if response {
                //access granted
            } else {

            }
        }
    }

当前通知声明屏幕

相机权限功能

我的 Info.list

信息列表

首先,很抱歉,因为我的分数很低,所以我不能马上看到图片。

提前谢谢你。

【问题讨论】:

  • 我认为您无法更改系统通知。一种解决方法是在系统警报之前显示自定义警报,告诉用户您喜欢的任何内容,并使按钮执行您喜欢的任何操作。然后其中一个按钮将显示系统警报。
  • 嗨@Sweeper 谢谢你的帮助。那你能重新定义按钮吗?为什么当我再次按下“不允许”按钮时看不到摄像头请求通知?我怎样才能让它看起来?
  • 不能更改系统警报按钮的行为。您可以显示您自己的具有不同行为的警报,然后显示系统警报。
  • 这是所有隐私请求的标准行为 - 您有一次机会提问。如果用户说不,那么系统不会再次询问他们 - 您可以显示自己的警报,但您需要将他们引导到设置以提供权限。这是为了防止应用程序向用户发出请求轰炸用户,这些请求可能使他们提供访问权限以使应用程序静音。
  • @Paulw11 你能告诉我当我再次按下按钮时让我进入警报或设置页面的示例代码吗?

标签: ios swift button permissions


【解决方案1】:

您不能,系统警报无法自定义(“我想访问相机”消息除外)您可以做的是在之前或之后向用户显示警报。 您无法更改按钮的文本,并且警报仅向用户显示一次。如果用户想要更改他的选择,他需要在“设置”应用中进行。

【讨论】:

    【解决方案2】:

    当然,您可以随意更改消息。 只需打开您的 Info.plist 并更改消息:

    【讨论】:

      【解决方案3】:

      很遗憾,您无法自定义按钮的文本或警报的标题。您唯一可以指定的是显示的消息,您可以在NSLocationAlwaysAndWhenInUseUsageDescription 下的Info.plist 文件中设置它。据我所知,您实际上必须从 iOS 11 开始提供此密钥,而不仅仅是一个或另一个(在使用时或始终)

      另外,请参阅this answer,了解如何正确请求授权。

      请参阅 Apple 的文档 here

      【讨论】:

      • 那么当我已经按下“不允许”按钮时,如何进入设置页面?能否提供示例代码?
      • 您可以使用此代码打开应用的设置页面:UIApplication.shared.open(URL(string: UIApplication.openSettingsURLString)!, options: [:], completionHandler: nil)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-03
      • 2015-02-24
      • 2019-12-06
      • 2023-03-08
      • 2013-05-25
      • 2022-12-04
      • 1970-01-01
      相关资源
      最近更新 更多