1
votes

Puis-je modifier le libellé et redéfinir les boutons lorsque je demande l'autorisation d'iOS?

Je suis un débutant sur iOS. Nous le développons actuellement avec swift. Ce que je veux, c'est changer le libellé de la demande d'autorisation. Cela ne me convient pas et j'aimerais pouvoir changer cela. Lorsque le bouton «Ne pas autoriser» est enfoncé dans la notification, appuyez à nouveau sur le bouton et ne demandez plus l'autorisation de la caméra. Comment puis-je en faire la demande?

ViewController.swift

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

            }
        }
    }

Écran de déclaration de notification actuel

fonction d'autorisation de la caméra entrez la description de l'image ici

ma liste d'informations

liste d'informations

 entrez la description de l'image here

Tout d'abord, je suis désolé de ne pas pouvoir voir l'image tout de suite car mon score est faible.

Merci d'avance.


10 commentaires

Je ne pense pas que vous puissiez modifier la notification système. Une solution de contournement consiste à afficher une alerte personnalisée avant l’alerte système, indiquant à l’utilisateur ce que vous voulez et à faire en sorte que les boutons fassent ce que vous voulez. L'un des boutons afficherait alors l'alerte système.


Salut @Sweeper Merci pour votre aide. Ensuite, pouvez-vous redéfinir le bouton? Pourquoi ne puis-je pas voir une notification de demande de caméra lorsque j'appuie à nouveau sur le bouton "Ne pas autoriser"? Comment puis-je lui donner un aspect?


Vous ne pouvez pas modifier le comportement des boutons d’alerte système. Vous pouvez afficher votre propre alerte qui a un comportement différent, puis afficher l'alerte système.


C'est le comportement standard de toutes les demandes de confidentialité - Vous avez une fois l'occasion de demander. Si l'utilisateur dit non, le système ne lui demandera plus - Vous pouvez afficher votre propre alerte, mais vous devez le diriger vers les paramètres pour fournir l'autorisation. Ceci pour empêcher les applications de bombarder l'utilisateur avec des demandes qui peuvent lui donner accès simplement pour faire taire l'application.


@ Paulw11 Pouvez-vous me donner l'exemple de code qui me permet d'accéder à la page d'alerte ou de configuration lorsque j'appuie à nouveau sur le bouton?


Vous devrez rechercher un statut refusé et afficher votre propre alerte


@Sweeper Si vous avez un exemple de code pour l'exécuter, pourriez-vous le fournir?


@ Paulw11 Comment accéder à la page Paramètres? Si vous appuyez sur le bouton Retour de la page Paramètres, allez-vous accéder à mon application?


stackoverflow.com/questions/46421646/...


@ Paulw11 Merci pour votre aide


3 Réponses :


1
votes

Malheureusement, vous ne pouvez pas personnaliser le texte des boutons ou le titre de l'alerte. La seule chose que vous pouvez spécifier est le message qui est affiché, vous pouvez le définir dans votre fichier Info.plist sous NSLocationAlwaysAndWhenInUseUsageDescription . Pour autant que je sache, vous devez fournir cette clé à partir d'iOS 11, pas seulement l'un ou l'autre (lorsqu'il est utilisé ou toujours)

Consultez également cette réponse pour savoir comment demander correctement l'autorisation.

Consultez la documentation Apple ici


2 commentaires

Alors, comment puis-je accéder à la page des paramètres lorsque j'ai déjà appuyé sur le bouton «Ne pas autoriser»? Pouvez-vous fournir un exemple de code?


Vous pouvez utiliser ce code pour ouvrir la page des paramètres de l'application: UIApplication.shared.open (URL (string: UIApplication.openSettingsURLString) !, options: [:], completionHandler: nil)



-1
votes

Bien sûr, vous pouvez modifier le message comme vous le souhaitez. ouvrez simplement votre Info.plist et modifiez le message:

 entrez la description de l'image ici


0 commentaires

0
votes

Vous ne pouvez pas, l'alerte système ne peut pas être personnalisable (sauf pour le message "Je veux accéder à la caméra") ce que vous pouvez faire est d'afficher une alerte à l'utilisateur avant ou après. Vous ne pouvez pas modifier le texte des boutons et l'alerte n'est affichée qu'une seule fois à l'utilisateur. Si l'utilisateur souhaite modifier son choix, il doit le faire dans l'application Paramètres.


0 commentaires