| # Copyright (C) 2016 The CyanogenMod Project |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # Don't skip non public library classes, make sure we're not keeping anything which will get mapped against api verification. |
| -dontskipnonpubliclibraryclasses |
| |
| # Do the same with class members |
| -dontskipnonpubliclibraryclassmembers |
| |
| # Keep test packages |
| -keep class androidx.** { *; } |
| -keep class android.test.** { *; } |
| -keep public class * extends androidx.** { *; } |
| -keep public class * extends android.test.** { *; } |
| -keep interface androidx.** { *; } |
| -keep interface android.test.** { *; } |
| |
| # Keep all junit classes |
| -keep class junit.** { *; } |
| -keep class org.junit.** { *; } |
| -keep interface junit.** { *; } |
| -keep interface org.junit.** { *; } |
| |
| # Keep compiled java classes from declared aidl's within the test package |
| -keep public class * extends android.os.IInterface { *; } |
| |
| # Don't warn about the Android Support Test JUnit Runner |
| -dontwarn androidx.** |
| -dontwarn android.test.** |
| |
| # Don't warn about junit |
| -dontwarn junit.** |
| -dontwarn org.junit.** |
| |
| # keep mockito methods |
| -keep class org.mockito.** { *; } |
| -keep interface org.mockito.** { *; } |
| -keep class com.google.dexmaker.** { *; } |
| -keep interface com.google.dexmaker.** { *; } |
| |
| # Always process |
| -forceprocessing |
| |
| # Make sure not to obfuscate the output |
| -dontobfuscate |