L'ouverture de l'application des Paramètres à partir d'une autre application
Bon, je sais qu'il y a beaucoup de question à ce sujet, mais ils sont tous de nombreuses fois auparavant.
. Je sais que c'est possible parce que l'application Carte t-il.
Dans l'application Carte si je désactive la localisation de cette application, envoyez-moi un message, et si j'appuie sur ok, le "Paramètres" Application sera ouverte.
Et ma question est, comment est-ce possible?
Comment puis-je ouvrir le Paramètre "app" de ma propre application?
Essentiellement, j'ai besoin de faire la même chose, si l'utilisateur de désactiver la localisation pour mon application, puis je vais lui montrer un message disant quelque chose qui va ouvrir le "Réglage de l'app"
Vous pouvez ouvrir l'application paramètres par programme dans iOS8(mais pas dans les versions antérieures d'iOS).le code ci-dessous dans les réponses.
OriginalL'auteur FelipeDev.- | 2011-04-13
Vous devez vous connecter pour publier un commentaire.
Comme mentionné par Karan Dua c'est maintenant possible dans iOS8 à l'aide de
UIApplicationOpenSettingsURLString
voir La Documentation d'Apple.Exemple:
Swift 4.2
Dans Swift 3:
Dans Swift 2:
En Objective-C
Avant iOS 8:
Vous ne pouvez pas. Comme vous l'avez dit elle a été traitée de nombreuses fois et que pop-up vous demandant d'activer les services de localisation est fourni par Apple et non par l'Application elle-même. C'est pourquoi il est capable de les ouvrir l'application paramètres.
Voici quelques questions & articles:
est-il possible d'ouvrir l'Application Paramètres à l'aide de openURL?
Par programme ouverture des paramètres de l'app (iPhone)
Comment puis-je ouvrir les Paramètres de l'application lorsque l'utilisateur appuie sur un bouton?
iPhone: Demande d'Ouverture de Panneau de Préférences à Partir de l'App
Ouvrir UIPickerView en cliquant sur une entrée dans l'application de préférences - Comment?
Ouvrez l'application Paramètres?
iOS: Vous êtes en train de Faire les Réglages de Mal
Hors sujet, mais votre Cyanure & le Bonheur de l'icône de roches!
Pas possible c'est rarement vrai dans le domaine de la programmation.
C'est désormais possible dans iOS 8 à l'aide de [NSURL URLWithString:UIApplicationOpenSettingsURLString]
dans swift 3 - UIApplication.partagé.openURL(URL(string:UIApplicationOpenSettingsURLString)!)
OriginalL'auteur Joe
De @Yatheeshaless's réponse:
Vous pouvez ouvrir l'application paramètres par programme dans iOS8, mais pas dans les versions antérieures d'iOS.
Swift:
Swift 4:
Swift 4.2 (BÊTA):
Objective-C:
Petite correction..
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
La ligne ci-dessus est de se diriger vers application de paramètres privés. Est-il possible de direct de vie privée la section réglages de l'appareil? Merci de commenter si vous le savez. Cette redirection est possible, comme je l'ai trouvé dans l'app plans où il se consacre aux paramètres de localisation dans la section confidentialité.
Petite correction rapide: UIApplication.sharedApplication().openURL(NSURL(chaîne: UIApplicationOpenSettingsURLString)!)
Oui, mais les paramètres de l'application ont ce que vous avez besoin d'une autorisation, dans mon cas, j'ai besoin d'accéder aux contacts, qui apparaissent dans les paramètres de l'application avec le code ci-dessus.
OriginalL'auteur Karan Dua
OUI!! vous pouvez lancer les Paramètres de l'Appareil l'écran, j'ai testé sur iOS 9.2
L'étape 1. nous avons besoin d'ajouter des schémas d'URL
Allez à paramètres du Projet --> Info --> URL Types --> Ajouter de Nouveaux Schémas d'URL
L'étape 2. Les Paramètres de lancement par programmation Grâce à @davidcann
Aussi, nous pouvons lancer des sous-écrans comme la Musique, la Localisation, etc. ainsi en utilisant simplement le nom propre de
Voir cette liste nom complet ici partagé par Henri Normak
Mise à jour:
Selon les commentaires de tout le monde veut savoir ce qui se passe après ce changement à ma demande de statut?
Donc
YES!! I got successful update submission and application is available on store without any complain.
Juste pour confirmer,
Je Viens de télécharger ce matin et désactivé les services de Localisation, puis a commencé à l'application, qui m'a demandé pour l'emplacement de l'autorisation et puis mon alerte popup était là pour m'envoyer sur les paramètres -> services de localisation de la page --> Activé --> C'est elle!!
![AVIS:
Votre application peut être rejeté ... même si elle est approuvée, elle peut être rejetée dans une future version si vous utilisez cette méthode...]Quatre
iOS 9.3. A travaillé comme un charme. Je vois même le "Retour à l' [mon nom de l'application]" à l'intérieur de l'application des paramètres. Certainement, c'est pris en charge parce que je vois beaucoup d'autres applications qui font ce genre de chose!
Que privée de l'API.
Malheureusement cela ne fonctionne pas sous iOS 10
Sur iOS 10, la nouvelle url n'est pas "prefs:root=...." mais "App-Prefs:root=...".
OriginalL'auteur swiftBoy
Vous pouvez l'utiliser sur iOS 5.0 et versions ultérieures:Cela ne fonctionne plus.Vous pouvez obtenir dans les différents quartiers de paramètres en fonction de cet article. Par exemple cette URL, vous verrez les paramètres Bluetooth
prefs:root=General&path=Bluetooth
il ne fonctionne plus avec le sdk ios 5.1 🙁
Apple a déclaré que ce n'était pas une API publique, et n'est plus pris en charge. Il y a un bug déposé sur cette question, le nombre 11253669.
Je viens de voir que cela fonctionne dans Strava app. Désactiver le Bluetooth & puis activez-la dans l'app. Puis elle demande à être reçu à l'application paramètres & il va directement à l'écran des paramètres Bluetooth. C'est pour iOS5.1. Est-il un moyen de savoir quel régime ils utilisent?
OriginalL'auteur davidcann
iOS 10 mise à jour
Apple a changé la méthode pour ouvrir asynchrone sur le thread principal. Cependant, à partir de maintenant, il n'est possible d'ouvrir les paramètres de l'application native réglages.
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil];
iOS 9 mise à jour
Il est maintenant possible d'accéder directement au sous-menu paramètres. Toutefois, un schéma d'URL doit être créé. Il peut être fait à l'aide de deux façons:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>prefs</string>
</array>
</dict>
</array>
Le code:
Swift
UIApplication.sharedApplication().openURL(NSURL(string:"prefs:root=General&path=Keyboard")!)
Objective-c
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=General&path=Keyboard"]];
Il ne fonctionne que pour les paramètres d'application apparemment
avez-vous trouver un moyen encore? Il pourrait être d'une grande aide. Merci.
Non, je n'ai pas. Je ne sais toujours pas si c'est un iOS bug ou si Apple vient de retirer la fonctionnalité.
Je pense, qu'ils continuent à travailler avec les Extensions. Ex app est
Magic Launcher
dans l'Appstore.OriginalL'auteur guyromb
Dans Swift 3 /iOS 10+ cela ressemble maintenant à
Cette obtiendrez votre application rejeté. Ils l'ont mis sous utilisation privée de l'API.
J'ai rejeté mon application, à l'aide de cette "App-Prefs:root"
Simplement souligner ce que les autres mentionnés ici, n'utilisez pas cette méthode, vous obtiendrez votre application rejeté. Envoyant à plusieurs reprises app avec de tels obtiendrez votre compte de développeur fermé.
OriginalL'auteur Damo
Swift 3:
OriginalL'auteur Duy Doan
Dans Swift 3 tout ce que je besoin est présent (ici par exemple rediriger vers mon application notifications):
Source: phynet gist.
Cela a fonctionné avec moi que lorsque des paramètres est en arrière-plan. Il va vous rediriger vers votre application paramètres de notification, mais si les paramètres n'était pas en cours d'exécution en arrière-plan, il va juste vous rediriger vers des paramètres de notification en général.
OriginalL'auteur ynamao
UIApplicationOpenSettingsURLString
cela ne fonctionnera que si vous avez déjà autorisé pour toute autorisation. Par exemple l'Emplacement, de Photo, de Contact, de notification Push d'accès. Donc, si vous n'avez pas l'autorisation(s) de l'utilisateur:Si iOS 10 ou au-dessus de,
Il va ouvrir les Paramètres, mais puis crash. La raison, il n'y a rien dans les paramètres de votre application.
Code ci-dessous va s'ouvrir vos paramètres de l'application à l'intérieur de l'iOS Réglage.
En raison d'indisponibilité de l'appareil, je ne pouvais pas le vérifier sur iOS < 10.
Aussi, j'ai pu trouver ci-dessous le code de certains gist et il fonctionne très bien sur iOS 10. Mais je ne suis pas sûr si cela va approuver par Apple de l'équipe de révision ou pas.
https://gist.github.com/johnny77221/bcaa5384a242b64bfd0b8a715f48e69f
OriginalL'auteur Hemang
Vous pouvez utiliser le code ci-dessous.
OriginalL'auteur Som
SWIFT 4.0
OriginalL'auteur Harshil Kotecha
Swift 4
Je préfère ouvrir le cadre dans une manière plus sûre,
OriginalL'auteur Sazzad Hissain Khan
Swift
Vous pouvez utiliser la fonction suivante pour ouvrir l'Application Paramètres Bluetooth Page
Encore une fois ce serait de ne pas ouvrir les Paramètres de l'Application. Ce serait ouvrir les paramètres de l'application avec Bluetooth comme c'est du deep linking, de bluetooth.
OriginalL'auteur Alix
Testé avec iOS 10. Travail
Heureux De Codage 🙂
Est-ce si, Mais cette ligne de code vous mènera directement à l'endroit désiré
Oui, il va vous permettre d'y parvenir. Je ne dis pas que ça ne fonctionne pas, je signale simplement qu'il obtiendra rejetés lors de l'application de l'examen. "prefs:root" est un privé schéma d'url en fonction de ce que l'équipe d'examen nous a dit. (Vous pourriez avoir de la chance et ils n'ont pas d'avis pour un certain temps, nous avons eu la fonctionnalité pour un certain temps et passé plusieurs examens avant l'évaluateur a remarqué)
Merci pour l'information, je voudrais essayer quelque chose d'autre, Mais maintenant je suis coincé dans la connectivité VPN, Trouver une solution pour ce.
OriginalL'auteur Praveen Sharma
Ajouter à votre classe,
Appeler comme ça,
OriginalL'auteur Zaid Pathan