0

Ich benutze den Pod Localize, der ein Sprachwechsel-Tool ist.So lokalisierst du iOS-Benachrichtigungen nach App-Sprache

Meine App verfügt über ein Einstellungsmenü, in dem Benutzer die App-Sprache aus der Liste ändern können.

Wenn Benutzer die Sprache ändert auch ich bin Einstellung der AppleLanguages Schlüssel in UserDefaults

Localize.setCurrentLanguage("nl") 
UserDefaults.standard.set(["nl"], forKey: "AppleLanguages") 
UserDefaults.standard.synchronize() 

Dies ist richtig für meine Anwendung arbeiten, ist alles gut, außer Benachrichtigung Lokalisierung.

Ich habe the apple documentation about the localization local and remote notifications gelesen.

Ich speichere lokalisierten Inhalt in meiner App und sende eine Benachrichtigung mit loc-key und loc-args.

Aber Benachrichtigungen werden immer in preferredlanguage des Benutzers empfangen, die durch iphone Präferenzen eingestellt wird und möglicherweise mit meiner App-Sprache unterschiedlich ist.

Wie kann ich dieses Problem lösen und Benachrichtigungen nach App-spezifischer Sprache lokalisieren?

Antwort

1

Ja, der Benutzer erhält die Benachrichtigung immer in der bevorzugten Sprache des Benutzers, die durch die iPhone-Voreinstellungen festgelegt wird, da Apple nie empfiehlt, die Sprache von der App selbst zu ändern. Wenn Sie dies tun, müssen Sie den Benachrichtigungsinhalt auf Ihrem Server lokalisieren. Bevor Sie Push an einen beliebigen Benutzer senden, müssen Sie die Sprache Ihrer App überprüfen, in der sich der Benutzer befindet. Anschließend senden Sie die Benachrichtigung in der ausgewählten Sprache . Es spielt keine Rolle, welche Sprache in den Geräteeinstellungen ausgewählt ist.

Ich hoffe, es hilft. Wenn Sie irgendwelche Verwirrung haben, zögern Sie nicht zu kommentieren.

+0

Sie haben Recht. Ich habe ein paar Apps überprüft, Facebook war einer von ihnen. Selbst wenn ich die Sprache ändere, erhalte ich die Benachrichtigungen in meiner iPhone-Sprache. – ocanal

Verwandte Themen