~singpolyma/cheogram-android

ref: 2018ae8ba0c0ee32c87dc092bfbde4dd1d3e0a3a cheogram-android/proguard-rules.pro -rw-r--r-- 2.1 KiB
2018ae8b — Daniel Gultsch fixed some r8 warnings 3 years ago
                                                                                
02011790 Daniel Gultsch
5b1d86d6 Daniel Gultsch
02011790 Daniel Gultsch
2018ae8b Daniel Gultsch
02011790 Daniel Gultsch
1accf9d9 Daniel Gultsch
c2067e3b Daniel Gultsch
ff84ee69 Daniel Gultsch
8c654abf Daniel Gultsch
af74c360 Daniel Gultsch
8c654abf Daniel Gultsch
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
-dontobfuscate

-keep class eu.siacs.conversations.**

-keep class org.whispersystems.**

-keep class com.kyleduo.switchbutton.Configuration

-keep class com.soundcloud.android.crop.**

-keep class com.google.android.gms.**

-keep class org.openintents.openpgp.*
-keep class org.webrtc.** { *; }

-dontwarn javax.mail.internet.MimeMessage
-dontwarn javax.mail.internet.MimeBodyPart
-dontwarn javax.mail.internet.SharedInputStream
-dontwarn javax.activation.DataContentHandler
-dontwarn org.bouncycastle.mail.**
-dontwarn org.bouncycastle.x509.util.LDAPStoreHelper
-dontwarn org.bouncycastle.jce.provider.X509LDAPCertStoreSpi
-dontwarn org.bouncycastle.cert.dane.**
-dontwarn rocks.xmpp.addr.**
-dontwarn com.google.firebase.analytics.connector.AnalyticsConnector
-dontwarn java.lang.**
-dontwarn javax.lang.**

-keepclassmembers class eu.siacs.conversations.http.services.** {
  !transient <fields>;
}

# Retrofit does reflection on generic parameters. InnerClasses is required to use Signature and
# EnclosingMethod is required to use InnerClasses.
-keepattributes Signature, InnerClasses, EnclosingMethod

# Retrofit does reflection on method and parameter annotations.
-keepattributes RuntimeVisibleAnnotations, RuntimeVisibleParameterAnnotations

# Retain service method parameters when optimizing.
-keepclassmembers,allowshrinking,allowobfuscation interface * {
    @retrofit2.http.* <methods>;
}

# Ignore annotation used for build tooling.
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement

# Ignore JSR 305 annotations for embedding nullability information.
-dontwarn javax.annotation.**

# Guarded by a NoClassDefFoundError try/catch and only used when on the classpath.
-dontwarn kotlin.Unit

# Top-level functions that can only be used by Kotlin.
-dontwarn retrofit2.KotlinExtensions
-dontwarn retrofit2.KotlinExtensions$*

# With R8 full mode, it sees no subtypes of Retrofit interfaces since they are created with a Proxy
# and replaces all potential values with null. Explicitly keeping the interfaces prevents this.
-if interface * { @retrofit2.http.* <methods>; }
-keep,allowobfuscation interface <1>