Что случилось с файлами `localizable.strings` на устройствах в недавних версиях iOS?IOS

Программируем под IOS
Ответить
Anonymous
 Что случилось с файлами `localizable.strings` на устройствах в недавних версиях iOS?

Сообщение Anonymous »

В предыдущих версиях iOS можно было получить доступ к локализации системных ресурсов на устройстве с помощью класса пакета. Используя следующий код: < /p>

Код: Выделить всё

let bundle = Bundle(url: Bundle(for: UINavigationController.self).url(forResource: "de", withExtension: "lproj")!)!
print("📁 \(bundle.bundleURL)")
for file in try! FileManager.default.contentsOfDirectory(at: bundle.bundleURL, includingPropertiesForKeys: []) {
print("  📄 \(file.lastPathComponent)")
}
let done = bundle.localizedString(forKey: "Done", value: "_fallback_", table: "Localizable")
print("Done in German: \(done)")
< /code>
он печатал следующее, как и ожидалось: < /p>
📁 file:///Applications/Xcode-14.3.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework/de.lproj/
📄 Localizable.strings
📄 Localizable.stringsdict
📄 UITableViewLocalizedSectionIndex.plist
Done in German: Fertig
< /code>
Обратите внимание, что этот метод все еще работает над симуляторами (например, iPhone 14 Pro, работающий в iOS 16.4), но не работает на реальных устройствах. < /p>
При запуске этого же кода на iPhone 11 под управлением iOS 16.5.1 я получаю следующий вывод: < /p>
📁 file:///System/Library/PrivateFrameworks/UIKitCore.framework/de.lproj/
📄 UITableViewLocalizedSectionIndex.plist
Done in German: _fallback_
Мы видим, что перевод не удается, потому что локализуемые. случилось с этими файлами в недавних выпусках iOS? Можем ли мы как -нибудь получить к ним доступ?


Подробнее здесь: https://stackoverflow.com/questions/768 ... versions-o
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»