Vous devrez construire votre propre boîte de dialogue pour demander cette permission si vous voulez demander à chaque fois. Par défaut, les boîtes de dialogue déclenchées par Apple apparaissent une fois (ou deux fois dans iOS8) lorsque vous demandez l'accès aux API de localisation pour la première fois. Pour avoir iOS demander la permission que vous devez faire deux choses (en iOS8):
ajouter NSLocationAlwaysUsageDescription
ou requestWhenInUseAuthorization
à votre info.plist ces clés détiennent une chaîne qui utilise iOS i la boîte de dialogue, il présente lorsque vous préforme la étape suivante:
envoyez requestAlwaysAuthorization
ou requestWhenInUseAuthorization
à une instance de CLLocationManager. c'est-à-dire
CLLocationManager* myLocationManager = [[CLLocationManager alloc] init];
[myLocationManager requestAlwaysAuthorization];
À ce stade, iOS affichera les boîtes de dialogue qui vous sont familières. iOS8 affichera également une autre boîte de dialogue pour confirmer ceci quelque temps après la permission initiale (environ deux jours). Il ne demandera pas à plusieurs reprises.
si vous voulez construire votre propre boîte de dialogue, vous devriez faire ceci:
UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Use bluetooth"
message:@"is it ok for this app to use Bluetooth"
preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction* yesButton = [UIAlertAction actionWithTitle:@"Yes"
style:UIAlertActionStyleDefault
handler:^(UIAlertAction *action) {
// This code runs when the user presses YES.
// You should also add code to handle a NO button.
}];
[alert addAction:yesButton];
Vous devez ensuite afficher l'alerte. Utilisation probable presentViewController::
En fait, vous ne demandez à personne l'autorisation de l'utilisateur, c'est le code Apple qui demande l'autorisation. La seule façon de l'obtenir à plusieurs reprises est de savoir si l'utilisateur va dans les paramètres et l'éteint lui-même et même alors, je ne suis pas sûr de savoir si il va les demander à nouveau. – Popeye
Ce lien vous sera utile http://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/ – rptwsthi
@Popeye L'application demandera à nouveau si l'utilisateur a éteint le bluetooth des paramètres. Si l'utilisateur veut allumer le bluetooth ou non? – Arpit