0
0
mirror of https://github.com/etesync/android.git synced 2024-09-20 04:42:28 +02:00
etesync-android/app/proguard-rules.txt
Tom Hacohen 18c784692f Enable desugaring (needed by ical4android).
ical4j and thus ical4android now rely on java.time.ZoneOffset which is only available
in Android starting from Android 8. This will make it work on older Android versions
too.
2020-10-18 10:31:34 +03:00

51 lines
1.9 KiB
Plaintext

# ProGuard usage for DAVdroid:
# shrinking yes (main reason for using ProGuard)
# optimization yes
# obfuscation no (DAVdroid is open-source)
# preverification no
-dontobfuscate
-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
-optimizationpasses 5
-allowaccessmodification
# Kotlin
-dontwarn kotlin.**
# Apache Commons
-dontwarn javax.script.**
# ez-vcard
-dontwarn ezvcard.io.json.** # JSON serializer (for jCards) not used
-dontwarn freemarker.** # freemarker templating library (for creating hCards) not used
-dontwarn org.jsoup.** # jsoup library (for hCard parsing) not used
-keep class ezvcard.property.** { *; } # keep all vCard properties (created at runtime)
# ical4j: ignore unused dynamic libraries
-keep class net.fortuna.ical4j.** { *; } # keep all model classes (properties/factories, created at runtime)
# okhttp
# JSR 305 annotations are for embedding nullability information.
-dontwarn javax.annotation.**
# A resource is loaded with a relative path so the package of this class must be preserved.
-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase
# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java.
-dontwarn org.codehaus.mojo.animal_sniffer.*
# OkHttp platform used only on JVM and when Conscrypt dependency is available.
-dontwarn okhttp3.internal.platform.ConscryptPlatform
# DAVdroid + libs
-keep,includedescriptorclasses class com.etesync.syncadapter.** { *; } # all DAVdroid code and deps are required
# Android support
-keep,includedescriptorclasses class androidx.core.content.FileProvider { *; } # all DAVdroid code and deps are required
# gson
-dontnote sun.misc.Unsafe # not available on Android
# Spongcastle
-dontwarn org.spongycastle.jce.provider.X509LDAPCertStoreSpi
-dontwarn org.spongycastle.x509.util.LDAPStoreHelper