Let\'s assume that we can change in runtime Localizable.strings, that is placed in NSBundle At the current moment, even if we change it\'s contents, NSLocalizedString
You can use the uncache solution.
use Localizable.nocache.strings
in your lproj
folders.
e.g. example.bundle/Resources/de.lproj/Localizable.nocache.strings
loading localized strings after getting url
via FileManager.
func localizedString(key: String) -> String {
let bundle = Bundle(url: bundleUrl)
return bundle.localizedString(forKey: key, value: nil, table: "Localizable.nocache")
}