#Email-specific proguard flags that are not covered by UnifiedEmail go here -keep class com.android.emailcommon.provider.Account -keepclasseswithmembers class * { public static void actionEditIncomingSettings(android.app.Activity, int, com.android.emailcommon.provider.Account); } -keepclasseswithmembers class * { public static void actionEditOutgoingSettings(android.app.Activity, int, com.android.emailcommon.provider.Account); } -keepclasseswithmembers class * { public *** newInstance(com.android.emailcommon.provider.Account, android.content.Context); } -keepclasseswithmembers class * { public *** newInstance(com.android.emailcommon.provider.Account, android.content.Context); } -keepclasseswithmembers class android.content.SharedPreferences$Editor { *** apply(); } -keepclasseswithmembers class com.android.emailcommon.utility.Utility$CloseTraceCursorWrapper { *** getTraceIfAvailable(android.database.Cursor); *** log(android.database.Cursor); } -keep class * extends org.apache.james.mime4j.util.TempStorage # Keep names that are used only by unit tests or by animators -keep class ** { *** *ForTest(...); *** *Anim(...); } -keepclasseswithmembers class com.android.email.activity.RecentMailboxManager { *** touch(long); *** getInstance(android.content.Context); *** getMostRecent(long, boolean); } -keepclasseswithmembers class com.android.email.activity.setup.AccountSetupAccountType { *** checkAccountInstanceLimit(com.android.email.mail.Store$StoreInfo); } -keepclasseswithmembers class com.android.email.GroupMessagingListener { *** removeListener(com.android.email.MessagingListener); } -keepclasseswithmembers class com.android.email.Controller { *** setProviderContext(android.content.Context); } -keepclasseswithmembers class com.android.emailcommon.internet.Rfc822Output { *** getHtmlBody(java.lang.String); *** buildBodyText(android.content.Context, com.android.emailcommon.provider.EmailContent$Message, boolean); } -keepclasseswithmembers class com.android.emailcommon.mail.Address { <init>(java.lang.String); <init>(java.lang.String,java.lang.String); *** parseAndPack(java.lang.String); } -keepclasseswithmembers class com.android.email.SecurityPolicy { *** setContext(android.content.Context); } -keepclasseswithmembers class com.android.email.MessagingController { *** injectMockController(com.android.email.MessagingController); } -keepclasseswithmembers class com.android.emailcommon.utility.Utility { *** dumpCursor(android.database.Cursor); *** fromUtf8(byte[]); *** isFirstUtf8Byte(byte); *** replaceBareLfWithCrlf(java.lang.String); } -keepclasseswithmembers class com.android.emailcommon.utility.Utility$CloseTraceCursorWrapper { *** getTraceIfAvailable(android.database.Cursor); *** log(android.database.Cursor); } -keepclasseswithmembers class com.android.email.provider.EmailProvider { *** getReadableDatabase(android.content.Context); } -keepclasseswithmembers class com.android.emailcommon.provider.EmailContent$Attachment { *** createUniqueFile(java.lang.String); } -keepclasseswithmembers class com.android.email.service.AttachmentDownloadService { *** addServiceClass(long, java.lang.Class); } -keepclasseswithmembers class com.android.email.service.AttachmentDownloadService$AccountManagerStub { *** setNumberOfAccounts(int); } -keepclasseswithmembers class com.android.email.Preferences { *** getAccountByContentUri(android.net.Uri); } -keep class com.android.emailcommon.mail.Message$RecipientType -keepclasseswithmembers class com.android.emailcommon.mail.Message { *** setRecipient(com.android.emailcommon.mail.Message$RecipientType, com.android.emailcommon.mail.Address); } -keepclasseswithmembers class com.android.emailcommon.internet.MimeHeader { *** writeToString(); } -keepclasseswithmembers class com.android.emailcommon.internet.MimeMessage { <init>(); <init>(java.io.InputStream); *** getExtendedHeader(java.lang.String); *** setExtendedHeader(java.lang.String, java.lang.String); *** getExtendedHeaders(); *** setExtendedHeaders(java.lang.String); } -keepclasseswithmembers class com.android.emailcommon.internet.MimeUtility { *** foldAndEncode(java.lang.String); *** findPartByContentId(com.android.emailcommon.mail.Part, java.lang.String); *** findFirstPartByMimeType(com.android.emailcommon.mail.Part, java.lang.String); } -keepclasseswithmembers class com.android.email.mail.transport.SmtpSender { *** setTransport(com.android.email.mail.Transport); } -keepclasseswithmembers class com.android.email.mail.Store { *** requireStructurePrefetch(); } -keepclasseswithmembers class com.android.email.mail.store.ImapStore { *** setTransport(com.android.email.mail.Transport); } -keepclasseswithmembers class com.android.email.mail.store.ImapFolder { *** getMessages(int, int, com.android.emailcommon.mail.Folder$MessageRetrievalListener); *** getMessages(com.android.emailcommon.mail.Folder$MessageRetrievalListener); *** getMessages(java.lang.String[], com.android.emailcommon.mail.Folder$MessageRetrievalListener); *** getUnreadMessageCount(); } -keepclasseswithmembers class com.android.email.mail.store.Pop3Store { *** setTransport(com.android.email.mail.Transport); } -keepclasseswithmembers class com.android.email.mail.store.Pop3Store$Pop3Folder { *** getMessages(int, int, com.android.emailcommon.mail.Folder$MessageRetrievalListener); *** getMessages(com.android.emailcommon.mail.Folder$MessageRetrievalListener); *** getMessages(java.lang.String[], com.android.emailcommon.mail.Folder$MessageRetrievalListener); *** getUnreadMessageCount(); *** isOpen(); } -keep class com.android.emailcommon.mail.Flag -keepclasseswithmembers class com.android.emailcommon.mail.Folder { *** getUnreadMessageCount(); *** delete(boolean); *** getRole(); } -keep class com.android.emailcommon.mail.Folder$FolderRole -keepclasseswithmembers class com.android.emailcommon.mail.PackedString$Builder { <init>(); <init>(java.lang.String); *** get(java.lang.String); *** put(java.lang.String, java.lang.String); } -keepclasseswithmembers class com.android.email.provider.ContentCache$CounterMap { *** getCount(...); *** size(); } -keepclasseswithmembers class com.android.emailcommon.provider.Account { *** getShortcutSafeUri(); *** refresh(android.content.Context); } -keepclasseswithmembers class com.android.emailcommon.provider.Policy { *** setAttachmentFlagsForNewPolicy(android.content.Context, com.android.emailcommon.provider.Account, com.android.emailcommon.provider.Policy); *** clearAccountPolicy(android.content.Context, com.android.emailcommon.provider.Account); } -keep class org.apache.james.mime4j.field.Field { *** getBody(); } -keepclasseswithmembers class com.android.email.FolderProperties { *** getDisplayName(int); } # The following classes are used only by unit tests. # We should move them into tests/ if possible. -keep class org.apache.james.mime4j.message.Message { *; } -keepclasseswithmembers class org.apache.commons.io.IOUtils { *** toByteArray(java.io.InputStream); *** toByteArray(java.io.Reader); *** toByteArray(java.io.Reader, java.lang.String); *** toByteArray(java.lang.String); } -keepclasseswithmembers class com.android.email.activity.ThreePaneLayout { *** setMessageListWidthAnim(...); *** setMailboxListLeftAnim(...); }