Detectar si se ha instalado un keyboard personalizado.

He leído la documentation y parece que no puedo encontrar ningún método de cómo puedo detectar si se ha instalado un keyboard personalizado en la configuration> general> keyboards.

¿Alguien sabe de alguna?

Esto es posible con NSUserDefaults . Solo recupere el object standardUserDefaults que contiene una matriz de todos los keyboards que el usuario ha instalado para la key "AppleKeyboards". Luego, compruebe si la matriz contiene el identificador de package para su extensión de keyboard.

 NSArray *keyboards = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleKeyboards"]; NSLog(@"keyboards: %@", keyboards); // check for your keyboard NSUInteger index = [keyboards indexOfObject:@"com.example.productname.keyboard-extension"]; if (index != NSNotFound) { NSLog(@"found keyboard"); }