summaryrefslogtreecommitdiff
path: root/app/proguard.cfg
blob: a70b226cdd3919b01f171ed962fee41fc370152d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
-dontobfuscate
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
-optimizations !code/allocation/variable
-optimizationpasses 5

-dontpreverify
-allowaccessmodification
-dontskipnonpubliclibraryclassmembers

# Keep our own classes and members. They are all used.
# Without this, methods only used in tests are removed and break tests.
-keep class de.danoeh.antennapod**
-keepclassmembers class de.danoeh.antennapod** {*;}
-keep class de.test.antennapod**
-keepclassmembers class de.test.antennapod** {*;}

# Keep methods used in tests.
# This is only needed when running tests with proguard enabled.
-keepclassmembers class org.apache.commons.lang3.StringUtils {*;}
-keepclassmembers class androidx.appcompat.app.ActionBar {
    public ** getTitle();
}
-keepclassmembers class org.apache.commons.io.IOUtils {
    public static void write(...);
}

-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keepclassmembers class * implements android.os.Parcelable {
    static android.os.Parcelable$Creator CREATOR;
}

-keep public class org.jsoup.** {
    public *;
}

# for okhttp
-dontwarn okhttp3.**
-dontwarn okio.**

# greenrobot EventBus
-keepattributes *Annotation*
-keepclassmembers class * {
    @org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }

# android-iconify
-keep class com.joanzapata.** { *; }

#### Proguard rules for fyyd client
# Retrofit 2.0
-dontwarn retrofit2.**
-keep class retrofit2.** { *; }
-keepattributes Signature
-keepattributes Exceptions

-keepclasseswithmembers class * {
    @retrofit2.http.* <methods>;
}

# Moshi
-keep class com.squareup.moshi.** { *; }
-keep interface com.squareup.moshi.** { *; }
####

# awaitility
-dontwarn java.beans.BeanInfo
-dontwarn java.beans.Introspector
-dontwarn java.beans.IntrospectionException
-dontwarn java.beans.PropertyDescriptor
-dontwarn java.lang.management.ManagementFactory
-dontwarn java.lang.management.ThreadInfo
-dontwarn java.lang.management.ThreadMXBean