1# Keep classes and methods that have the @UsedForTesting annotation 2-keep @com.android.inputmethod.annotations.UsedForTesting class * 3-keepclassmembers class * { 4 @com.android.inputmethod.annotations.UsedForTesting *; 5} 6 7# Keep classes and methods that have the @ExternallyReferenced annotation 8-keep @com.android.inputmethod.annotations.ExternallyReferenced class * 9-keepclassmembers class * { 10 @com.android.inputmethod.annotations.ExternallyReferenced *; 11} 12 13# Keep native methods 14-keepclassmembers class * { 15 native <methods>; 16} 17 18# Keep classes that are used as a parameter type of methods that are also marked as keep 19# to preserve changing those methods' signature. 20-keep class com.android.inputmethod.latin.AssetFileAddress 21-keep class com.android.inputmethod.latin.Dictionary 22-keep class com.android.inputmethod.latin.NgramContext 23-keep class com.android.inputmethod.latin.makedict.ProbabilityInfo 24-keep class com.android.inputmethod.latin.utils.LanguageModelParam 25 26# TODO: remove once used in code. 27-keep class com.android.inputmethod.keyboard.KeyboardLayout { *; } 28 29