diff --git a/services/java/com/android/server/InputMethodManagerService.java b/services/java/com/android/server/InputMethodManagerService.java index 07da0fa25fd36..20e8bbe4fdd81 100644 --- a/services/java/com/android/server/InputMethodManagerService.java +++ b/services/java/com/android/server/InputMethodManagerService.java @@ -1881,11 +1881,10 @@ public class InputMethodManagerService extends IInputMethodManager.Stub String id = pair.first; ArrayList subtypes = pair.second; builder.append(id); - if (subtypes.size() > 0) { - builder.append(subtypes.get(0)); - for (int i = 1; i < subtypes.size(); ++i) { - builder.append(INPUT_METHOD_SUBTYPE_SEPARATER).append(subtypes.get(i)); - } + // Inputmethod and subtypes are saved in the settings as follows: + // ime0;subtype0;subtype1:ime1;subtype0:ime2:ime3;subtype0;subtype1 + for (String subtypeId: subtypes) { + builder.append(INPUT_METHOD_SUBTYPE_SEPARATER).append(subtypeId); } }