Installing Keyboard Extension changes the iOS system language to Corsican based on bundle ID CFBundleIdentifier

67 Views Asked by At

I have built an iOS keyboard extension, before it is installed the system prefered language is "English" like so:

enter image description here

After installing the keyboard extension the system language is set to "Corsican", like so:

enter image description here

Corsican is being set because some of the bundle identifiers (CFBundleIdentifier) start with co.<redacted> which maps to the ISO 639-1 language code for Corsican co. I've verified that my PrimaryLanguage is en-US, see below a section of Info.Plist. I've verified the bundle ID is the root cause by changing the bundle ID to something not starting with co and this behaviour disappears.

<key>NSExtension</key>
    <dict>
        <key>NSExtensionAttributes</key>
        <dict>
            <key>IsASCIICapable</key>
            <false/>
            <key>PrefersRightToLeft</key>
            <false/>
            <key>PrimaryLanguage</key>
            <string>en-US</string>
            <key>RequestsOpenAccess</key>
            <false/>
        </dict>
        <key>NSExtensionPointIdentifier</key>
        <string>com.apple.keyboard-service</string>
        <key>NSExtensionPrincipalClass</key>
        <string>$(PRODUCT_MODULE_NAME).KeyboardViewController</string>
    </dict>

This seems like a bug in iOS. Any suggestions what to try?

0

There are 0 best solutions below