1 -keep class com.android.contacts.model.Sources { 2 public <init>(...); 3 } 4 5 # The support library contains references to newer platform versions. 6 # Don't warn about those in case this app is linking against an older 7 # platform version. We know about them, and they are safe. 8 -dontwarn android.support.** 9 10 # Xml files containing onClick (menus and layouts) require that proguard not 11 # remove their handlers. 12 -keepclassmembers class * extends android.app.Activity { 13 public void *(android.view.View); 14 public void *(android.view.MenuItem); 15 } 16 17 # Needed for tests 18 -keep class com.android.contacts.compat.CompatUtils { *; } 19 -keep class com.android.contacts.Collapser { *; } 20 -keep class com.android.contacts.ContactPhotoManager { *; } 21 -keep class com.android.contacts.ContactsApplication { *; } 22 -keep class com.android.contacts.ContactsUtils { *; } 23 -keep class com.android.contacts.ContactSaveService { *; } 24 -keep class com.android.contacts.ContactSaveService$* { *; } 25 -keep class com.android.contacts.database.NoNullCursorAsyncQueryHandler { *; } 26 -keep class com.android.contacts.database.SimContactDao { *; } 27 -keep class com.android.contacts.database.SimContactDao$* { *; } 28 -keep class com.android.contacts.database.SimContactDaoImpl { *; } 29 -keep class com.android.contacts.DynamicShortcuts { *; } 30 -keep class com.android.contacts.editor.ContactEditorUtils { *; } 31 -keep class com.android.contacts.editor.EditorUiUtils { *; } 32 -keep class com.android.contacts.format.FormatUtils { *; } 33 -keep class com.android.contacts.format.TextHighlighter { *; } 34 -keep class com.android.contacts.group.GroupUtil { *; } 35 -keep class com.android.contacts.interactions.CallLogInteraction { *; } 36 -keep class com.android.contacts.interactions.CallLogInteractionsLoader { *; } 37 -keep class com.android.contacts.interactions.ContactDeletionInteraction { *; } 38 -keep class com.android.contacts.interactions.ContactInteractionUtil { *; } 39 -keep class com.android.contacts.list.ContactListItemView { *; } 40 -keep class com.android.contacts.list.ContactsSectionIndexer { *; } 41 -keep class com.android.contacts.location.CountryDetector { *; } 42 -keep class com.android.contacts.model.account.AccountDisplayInfo { *; } 43 -keep class com.android.contacts.model.account.AccountDisplayInfoFactory { *; } 44 -keep class com.android.contacts.model.account.AccountInfo { *; } 45 -keep class com.android.contacts.model.account.AccountType { *; } 46 -keep class com.android.contacts.model.account.AccountType$* { *; } 47 -keep class com.android.contacts.model.account.AccountTypeWithDataSet { *; } 48 -keep class com.android.contacts.model.account.AccountWithDataSet { *; } 49 -keep class com.android.contacts.model.account.BaseAccountType { *; } 50 -keep class com.android.contacts.model.account.BaseAccountType$* { *; } 51 -keep class com.android.contacts.model.account.DeviceLocalAccountType { *; } 52 -keep class com.android.contacts.model.account.ExchangeAccountType { *; } 53 -keep class com.android.contacts.model.account.ExternalAccountType { *; } 54 -keep class com.android.contacts.model.account.FallbackAccountType { *; } 55 -keep class com.android.contacts.model.account.GoogleAccountType { *; } 56 -keep class com.android.contacts.model.account.SimAccountType { *; } 57 -keep class com.android.contacts.model.AccountTypeManager { *; } 58 -keep class com.android.contacts.model.AccountTypeManagerImpl { *; } 59 -keep class com.android.contacts.model.BuilderWrapper { *; } 60 -keep class com.android.contacts.model.Contact { *; } 61 -keep class com.android.contacts.model.ContactLoader { *; } 62 -keep class com.android.contacts.model.Cp2DeviceLocalAccountLocator { *; } 63 -keep class com.android.contacts.model.CPOWrapper { *; } 64 -keep class com.android.contacts.model.dataitem.DataItem { *; } 65 -keep class com.android.contacts.model.dataitem.DataKind { *; } 66 -keep class com.android.contacts.model.dataitem.EmailDataItem { *; } 67 -keep class com.android.contacts.model.dataitem.EventDataItem { *; } 68 -keep class com.android.contacts.model.dataitem.ImDataItem { *; } 69 -keep class com.android.contacts.model.dataitem.NicknameDataItem { *; } 70 -keep class com.android.contacts.model.dataitem.NoteDataItem { *; } 71 -keep class com.android.contacts.model.dataitem.OrganizationDataItem { *; } 72 -keep class com.android.contacts.model.dataitem.PhoneDataItem { *; } 73 -keep class com.android.contacts.model.dataitem.RelationDataItem { *; } 74 -keep class com.android.contacts.model.dataitem.SipAddressDataItem { *; } 75 -keep class com.android.contacts.model.dataitem.StructuredNameDataItem { *; } 76 -keep class com.android.contacts.model.dataitem.StructuredPostalDataItem { *; } 77 -keep class com.android.contacts.model.dataitem.WebsiteDataItem { *; } 78 -keep class com.android.contacts.model.DeviceLocalAccountLocator { *; } 79 -keep class com.android.contacts.model.RawContact { *; } 80 -keep class com.android.contacts.model.RawContactDelta { *; } 81 -keep class com.android.contacts.model.RawContactDeltaList { *; } 82 -keep class com.android.contacts.model.RawContactModifier { *; } 83 -keep class com.android.contacts.model.SimCard { *; } 84 -keep class com.android.contacts.model.SimContact { *; } 85 -keep class com.android.contacts.model.ValuesDelta { *; } 86 -keep class com.android.contacts.MoreContactUtils { *; } 87 -keep class com.android.contacts.preference.ContactsPreferences { *; } 88 -keep class com.android.contacts.SimImportService { *; } 89 -keep class com.android.contacts.SimImportService$* { *; } 90 -keep class com.android.contacts.test.mocks.MockContactPhotoManager { *; } 91 -keep class com.android.contacts.testing.InjectedServices { *; } 92 -keep class com.android.contacts.util.BitmapUtil { *; } 93 -keep class com.android.contacts.util.ContactDisplayUtils { *; } 94 -keep class com.android.contacts.util.DateUtils { *; } 95 -keep class com.android.contacts.util.DeviceLocalAccountTypeFactory { *; } 96 -keep class com.android.contacts.util.DeviceLocalAccountTypeFactory$* { *; } 97 -keep class com.android.contacts.util.NameConverter { *; } 98 -keep class com.android.contacts.util.PermissionsUtil { *; } 99 -keep class com.android.contacts.util.SearchUtil { *; } 100 -keep class com.android.contacts.util.SearchUtil$* { *; } 101 -keep class com.android.contacts.util.SyncUtil { *; } 102 -keep class com.android.contacts.widget.CompositeListAdapter { *; } 103 -keep class com.google.common.base.Function { *; } 104 -keep class com.google.common.base.Functions { *; } 105 -keep class com.google.common.base.Objects { *; } 106 -keep class com.google.common.base.Preconditions { *; } 107 -keep class com.google.common.collect.** { *; } 108 -keep class com.google.common.util.concurrent.** { *; } 109 110 -keep class com.android.common.widget.CompositeCursorAdapter { *; } 111 112 # Any class or method annotated with NeededForReflection. 113 -keep @com.android.contacts.test.NeededForReflection class * 114 -keepclassmembers class * { 115 @com.android.contacts.test.NeededForReflection *; 116 } 117 118 # Keep classes and methods that have the guava @VisibleForTesting annotation 119 -keep @com.google.common.annotations.VisibleForTesting class * 120 -keepclassmembers class * { 121 @com.google.common.annotations.VisibleForTesting *; 122 } 123