Alertes critiques dans Xamarin.iOS
Avec iOS 12, les applications peuvent envoyer des alertes critiques. Les alertes critiques diffusent un son, que l’option Ne pas déranger soit activée ou que le commutateur sonnerie soit désactivé. Ces notifications sont perturbatrices et ne doivent être utilisées que lorsque les utilisateurs doivent prendre des mesures immédiates.
Droit d’alerte critique personnalisé
Pour afficher des alertes critiques dans votre application, commencez par demander un droit personnalisé aux notifications d’alerte critique auprès d’Apple.
Après avoir reçu ce droit d’Apple et suivi les instructions associées sur la configuration de votre application pour l’utiliser, ajoutez le droit personnalisé aux fichiers Entitlements.plist de votre application. Ensuite, configurez vos options de signature de bundle iOS pour utiliser Entitlements.plist lors de la signature de l’application sur le simulateur et l’appareil.
Demander l’autorisation
La demande d’autorisation de notification d’une application invite l’utilisateur à autoriser ou à interdire les notifications d’une application. Si la demande d’autorisation de notification demande l’autorisation d’envoyer des alertes critiques, l’application donne également à l’utilisateur la possibilité d’accepter des alertes critiques.
Le code suivant demande l’autorisation d’envoyer à la fois des alertes critiques et des notifications et des sons standard en transmettant leUNAuthorizationOptions
valeurs à RequestAuthorization
:
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
{
UNUserNotificationCenter center = UNUserNotificationCenter.Current;
var options = UNAuthorizationOptions.Alert | UNAuthorizationOptions.Sound | UNAuthorizationOptions.CriticalAlert;
center.RequestAuthorization(options, (bool success, NSError error) => {
// ...
);
return true;
}
Alertes critiques locales
Pour envoyer une alerte critique locale, créez unUNMutableNotificationContent
et définissez sa Sound
propriété sur :
UNNotificationSound.DefaultCriticalSound
, qui utilise le son de notification critique par défaut.UNNotificationSound.GetCriticalSound
, qui vous permet de spécifier un son personnalisé qui est fourni avec votre application et un volume.
Ensuite, créez un UNNotificationRequest
à partir du contenu de notification et ajoutez-le au centre de notifications :
var content = new UNMutableNotificationContent()
{
Title = "Critical alert title",
Body = "Text of the critical alert",
CategoryIdentifier = "my-critical-alert-category",
// Sound = UNNotificationSound.DefaultCriticalSound
Sound = UNNotificationSound.GetCriticalSound("my_critical_sound.m4a", 1.0f)
};
var request = UNNotificationRequest.FromIdentifier(
Guid.NewGuid().ToString(),
content,
UNTimeIntervalNotificationTrigger.CreateTrigger(3, false)
);
var center = UNUserNotificationCenter.Current;
center.AddNotificationRequest(request, null);
Important
Les alertes critiques ne seront pas remises si elles ne sont pas activées pour votre application. En plus de l’invite qui apparaît la première fois qu’une application demande l’autorisation d’envoyer des alertes critiques, un utilisateur peut également activer ou désactiver les alertes critiques dans la section Notifications de votre application de l’application Paramètres iOS.
Alertes critiques à distance
Pour plus d’informations sur les alertes critiques à distance, consultez la session Nouveautés des notifications utilisateur de WWDC 2018 et le document Génération d’une notification à distance .