Changer le profil du clavier par programme
Est-il de toute façon que l'on peut passer installé claviers par programme (sans aller jusqu'à la section paramètres manuellement)?
Mon exigence est que l'utilisateur est présenté avec tous les claviers qui sont installés sur le téléphone et obtient un dialogue sélecteur pour passer à l'un des souhaits?
(fondamentalement, nous voulons couper l'étape de transfert de lui à la page de paramètres)
source d'informationauteur rajankz
Vous devez vous connecter pour publier un commentaire.
Ce bout de code va répondre à vos exigences:
Comme Commonsware le souligne dans sa réponse, il n'y a aucun moyen de le faire derrière le dos.
Si votre application dispose de système de privilèges, et a l'autorisation
vous pouvez par programmation activer le clavier et le définir comme le clavier en le rendant le clavier par défaut SANS la CONNAISSANCE OU de l'INTERVENTION!
Vous pouvez activer plusieurs claviers (tels que le clavier par défaut et les vôtres) en fournissant une liste de claviers à la
ENABLED_INPUT_METHODS
séparés par ':'. Voir docsVous pouvez vérifier votre clavier complet du package et le chemin d'accès ID en invoquant
ime list -a
paradb shell
Si vous avez ancré appareil, vous pouvez utiliser
/system/bin/ime
utilitaire.La liste de toutes les méthodes de saisie installées:
# ime list -a
Définir google clavier par défaut:
# ime set com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME
Sur Java côté utilisation Moment de l'exécution.getRuntime().exec(...).
Heureusement, non, pour des raisons de sécurité. Si une application pourrait dicter ce que l'éditeur de méthode d'entrée est utilisé, les logiciels malveillants de modifier l'éditeur de méthode d'entrée pour leur keylogger.
Ce code va demander à l'utilisateur de changer de clavier par défaut