I have an iOS keyboard app extension which exists in the app store. Recently, while testing the effects of upgrading the app from version 1.0 to 1.1, I noticed that when I press and hold the globe icon on the standard iOS keyboard, my app's name is displayed as (null)
. Has anyone else experienced this? This tends to happen if I do not try to open the companion app before opening the keyboard after upgrade. If I open the companion app, this tends to go away. I've attached an image below.
Update: Using iOS Console, I noted the log entry below:
Oct 5 16:16:40 Sarangan-Balasubramaniams-iPad SpringBoard[48] <Warning>: Installed apps did change.
Added: {(
)}
Removed: {(
)}
Modified: {(
"com.vijay.SuperKeyz"
)}
Oct 5 16:16:41 Sarangan-Balasubramaniams-iPad pkd[116] <Warning>: INSTALLED:com.vijay.SuperKeyz.keykeykeyboard com.vijay.SuperKeyz.keykeykeyboard(1.1) <__NSConcreteUUID 0x17d93870> AF3C211B-0871-49F1-89EF-433510FE85C4 /private/var/mobile/Containers/Bundle/Application/24643C20-B44F-47A4-ADB5-57EA10FF9CF0/SuperKeyz.app/PlugIns/keykeykeyboard.appex
Oct 5 16:16:46 Sarangan-Balasubramaniams-iPad pkd[116] <Warning>: assigning plug-in com.vijay.SuperKeyz.keykeykeyboard(1.0) to keyboard sandbox
Oct 5 16:16:46 Sarangan-Balasubramaniams-iPad pkd[116] <Warning>: enabling pid=1662 for plug-in com.vijay.SuperKeyz.keykeykeyboard(1.0) 4DAC067D-4E00-48A0-86CB-7519AC750C8A /private/var/mobile/Containers/Bundle/Application/8CA610CD-672B-40ED-A564-08EB2D90FD11/SuperKeyz.app/PlugIns/keykeykeyboard.appex
Oct 5 16:16:46 Sarangan-Balasubramaniams-iPad MobileSMS[1662] <Warning>: Communications error: <OS_xpc_dictionary: <dictionary: 0x158928a0> { count = 2, contents =
"errorcode" => <uint64: 0x158b7ae0>: 4
"error" => <string: 0x1588ca30> { length = 114, contents = "cannot obtain executable path for plug-in com.vijay.SuperKeyz.keykeykeyboard(4DAC067D-4E00-48A0-86CB-7519AC750C8A)" }
}>
I apologize for the hard-to-read output, but what you can see is that iOS is searching for my plugin at the wrong path. It's looking for my old install path, instead of the new one. My simple guess is that the iOS keyboard is caching the list of other keyboards someplace, and doesn't update it until some other trigger.