I am trying to localize the CFBundleDisplayName and OSBundleUsageDescription of a driver that is part of an app.
I am able to use InfoPlist.strings files to localize the Bundle display name for the app, but when I try to use the same file as part of the driver, the name displayed in settings for the app does not change correctly.
So, the basic localization process is the same for all bundles, so in theory, this should "just work". However, one thing that might be useful for testing/experimentation purposes is that the KEXT system is currently using NSBundle.localizedInfoDictionary, not localizing specific strings (which is somewhat different). I'd use that API to validate (and fix if necessary) your configuration, then worry about setting after that data is "right".
One other small testing suggestion I have here is to not use actual localized data, but instead use unique strings that unambiguously identify their "source", avoiding the "where did that string come from??" confusion.
Finally, if you haven't already, please file a bug on this that includes a copy of the DEXT you're trying to localize, then post the bug number back here.
In fact, it seems to follow the default language set in the Xcode project.
Yes. CFBundleDevelopmentRegion is the "fallback" localization that's used if/when the system can't match the localization of the system itself.
If the default language is not included in the suite of InfoPlist.strings files, it seems to take the string from the info.plist file.
Yes. That's the final string it will use if localization fails entirely.
Sometimes it just seems to take the English version regardless of the default language or tablet language.
I don't think the system will specifically choose English; however, the localization system is a sorted list of preferred languages, so it could have fallen back to it.
__
Kevin Elliott
DTS Engineer, CoreOS/Hardware