1# keep names that are used by reflection. 2-keep class com.android.emailcommon.provider.Account 3 4-keepclasseswithmembers class * { 5 public static void actionEditIncomingSettings(android.app.Activity, int, com.android.emailcommon.provider.Account); 6} 7 8-keepclasseswithmembers class * { 9 public static void actionEditOutgoingSettings(android.app.Activity, int, com.android.emailcommon.provider.Account); 10} 11 12-keepclasseswithmembers class * { 13 public *** newInstance(com.android.emailcommon.provider.Account, android.content.Context); 14} 15 16-keepclasseswithmembers class * { 17 public *** newInstance(com.android.emailcommon.provider.Account, android.content.Context); 18} 19 20-keepclasseswithmembers class android.content.SharedPreferences$Editor { 21 *** apply(); 22} 23 24-keepclasseswithmembers class com.android.emailcommon.utility.Utility$CloseTraceCursorWrapper { 25 *** getTraceIfAvailable(android.database.Cursor); 26 *** log(android.database.Cursor); 27} 28 29-keep class * extends org.apache.james.mime4j.util.TempStorage 30 31# Keep names that are used only by unit tests or by animators 32-keep class ** { 33 *** *ForTest(...); 34 *** *Anim(...); 35} 36 37-keepclasseswithmembers class com.android.email.activity.RecentMailboxManager { 38 *** touch(long); 39 *** getInstance(android.content.Context); 40 *** getMostRecent(long, boolean); 41} 42 43-keepclasseswithmembers class com.android.email.activity.setup.AccountSetupAccountType { 44 *** checkAccountInstanceLimit(com.android.email.mail.Store$StoreInfo); 45} 46 47-keepclasseswithmembers class com.android.email.GroupMessagingListener { 48 *** removeListener(com.android.email.MessagingListener); 49} 50 51-keepclasseswithmembers class com.android.email.Controller { 52 *** setProviderContext(android.content.Context); 53} 54 55-keepclasseswithmembers class com.android.emailcommon.internet.Rfc822Output { 56 *** getHtmlBody(java.lang.String); 57 *** buildBodyText(android.content.Context, com.android.emailcommon.provider.EmailContent$Message, boolean); 58} 59 60-keepclasseswithmembers class com.android.emailcommon.mail.Address { 61 <init>(java.lang.String); 62 <init>(java.lang.String,java.lang.String); 63 *** parseAndPack(java.lang.String); 64} 65 66-keepclasseswithmembers class com.android.email.SecurityPolicy { 67 *** setContext(android.content.Context); 68} 69 70-keepclasseswithmembers class com.android.email.MessagingController { 71 *** injectMockController(com.android.email.MessagingController); 72} 73 74-keepclasseswithmembers class com.android.emailcommon.utility.Utility { 75 *** dumpCursor(android.database.Cursor); 76 *** fromUtf8(byte[]); 77 *** isFirstUtf8Byte(byte); 78 *** replaceBareLfWithCrlf(java.lang.String); 79} 80-keepclasseswithmembers class com.android.emailcommon.utility.Utility$CloseTraceCursorWrapper { 81 *** getTraceIfAvailable(android.database.Cursor); 82 *** log(android.database.Cursor); 83} 84 85-keepclasseswithmembers class com.android.email.provider.EmailProvider { 86 *** getReadableDatabase(android.content.Context); 87} 88 89-keepclasseswithmembers class com.android.emailcommon.provider.EmailContent$Attachment { 90 *** createUniqueFile(java.lang.String); 91} 92 93-keepclasseswithmembers class com.android.email.service.AttachmentDownloadService { 94 *** addServiceClass(long, java.lang.Class); 95} 96 97-keepclasseswithmembers class com.android.email.service.AttachmentDownloadService$AccountManagerStub { 98 *** setNumberOfAccounts(int); 99} 100 101-keepclasseswithmembers class com.android.email.Preferences { 102 *** getAccountByContentUri(android.net.Uri); 103} 104 105-keep class com.android.emailcommon.mail.Message$RecipientType 106 107-keepclasseswithmembers class com.android.emailcommon.mail.Message { 108 *** setRecipient(com.android.emailcommon.mail.Message$RecipientType, com.android.emailcommon.mail.Address); 109} 110 111-keepclasseswithmembers class com.android.emailcommon.internet.MimeHeader { 112 *** writeToString(); 113} 114 115-keepclasseswithmembers class com.android.emailcommon.internet.MimeMessage { 116 <init>(); 117 <init>(java.io.InputStream); 118 *** getExtendedHeader(java.lang.String); 119 *** setExtendedHeader(java.lang.String, java.lang.String); 120 *** getExtendedHeaders(); 121 *** setExtendedHeaders(java.lang.String); 122} 123 124-keepclasseswithmembers class com.android.emailcommon.internet.MimeUtility { 125 *** foldAndEncode(java.lang.String); 126 *** findPartByContentId(com.android.emailcommon.mail.Part, java.lang.String); 127 *** findFirstPartByMimeType(com.android.emailcommon.mail.Part, java.lang.String); 128} 129 130-keepclasseswithmembers class com.android.email.mail.transport.SmtpSender { 131 *** setTransport(com.android.email.mail.Transport); 132} 133 134-keepclasseswithmembers class com.android.email.mail.Store { 135 *** requireStructurePrefetch(); 136} 137 138-keepclasseswithmembers class com.android.email.mail.store.ImapStore { 139 *** setTransport(com.android.email.mail.Transport); 140} 141 142-keepclasseswithmembers class com.android.email.mail.store.ImapFolder { 143 *** getMessages(int, int, com.android.emailcommon.mail.Folder$MessageRetrievalListener); 144 *** getMessages(com.android.emailcommon.mail.Folder$MessageRetrievalListener); 145 *** getMessages(java.lang.String[], com.android.emailcommon.mail.Folder$MessageRetrievalListener); 146 *** getUnreadMessageCount(); 147} 148 149-keepclasseswithmembers class com.android.email.mail.store.Pop3Store { 150 *** setTransport(com.android.email.mail.Transport); 151} 152 153-keepclasseswithmembers class com.android.email.mail.store.Pop3Store$Pop3Folder { 154 *** getMessages(int, int, com.android.emailcommon.mail.Folder$MessageRetrievalListener); 155 *** getMessages(com.android.emailcommon.mail.Folder$MessageRetrievalListener); 156 *** getMessages(java.lang.String[], com.android.emailcommon.mail.Folder$MessageRetrievalListener); 157 *** getUnreadMessageCount(); 158 *** isOpen(); 159} 160 161-keep class com.android.emailcommon.mail.Flag 162 163-keepclasseswithmembers class com.android.emailcommon.mail.Folder { 164 *** getUnreadMessageCount(); 165 *** delete(boolean); 166 *** getRole(); 167} 168 169-keep class com.android.emailcommon.mail.Folder$FolderRole 170 171-keepclasseswithmembers class com.android.emailcommon.mail.PackedString$Builder { 172 <init>(); 173 <init>(java.lang.String); 174 *** get(java.lang.String); 175 *** put(java.lang.String, java.lang.String); 176} 177 178-keepclasseswithmembers class com.android.email.provider.ContentCache$CounterMap { 179 *** getCount(...); 180 *** size(); 181} 182 183-keepclasseswithmembers class com.android.emailcommon.provider.Account { 184 *** getShortcutSafeUri(); 185 *** refresh(android.content.Context); 186} 187 188-keepclasseswithmembers class com.android.emailcommon.provider.Policy { 189 *** setAttachmentFlagsForNewPolicy(android.content.Context, 190 com.android.emailcommon.provider.Account, 191 com.android.emailcommon.provider.Policy); 192 *** clearAccountPolicy(android.content.Context, 193 com.android.emailcommon.provider.Account); 194} 195 196-keep class org.apache.james.mime4j.field.Field { 197 *** getBody(); 198} 199 200-keepclasseswithmembers class com.android.email.FolderProperties { 201 *** getDisplayName(int); 202} 203 204# The following classes are used only by unit tests. 205# We should move them into tests/ if possible. 206 207-keep class org.apache.james.mime4j.message.Message { 208 *; 209} 210 211-keepclasseswithmembers class org.apache.commons.io.IOUtils { 212 *** toByteArray(java.io.InputStream); 213 *** toByteArray(java.io.Reader); 214 *** toByteArray(java.io.Reader, java.lang.String); 215 *** toByteArray(java.lang.String); 216} 217