mirror of
https://github.com/quik-sms/quik.git
synced 2026-11-14 18:18:52 +01:00
952c35bbdd
Added additional proguard rules to allow the backup and restore functionality to access files and start a foreground service. Fixes #70, #148.
123 lines
3.6 KiB
Prolog
123 lines
3.6 KiB
Prolog
-dontobfuscate
|
|
|
|
# android-smsmms
|
|
# -keep class android.net.** { *; }
|
|
-dontwarn android.net.ConnectivityManager
|
|
-dontwarn android.net.LinkProperties
|
|
|
|
# autodispose
|
|
-dontwarn com.uber.autodispose.**
|
|
|
|
# ez-vcard
|
|
-dontwarn ezvcard.**
|
|
-dontwarn org.apache.log.**
|
|
-dontwarn org.apache.log4j.**
|
|
-dontwarn org.python.core.**
|
|
|
|
# okio
|
|
-dontwarn okio.**
|
|
|
|
# okhttp3
|
|
# 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
|
|
|
|
# moshi
|
|
# JSR 305 annotations are for embedding nullability information.
|
|
-dontwarn javax.annotation.**
|
|
-dontwarn org.bouncycastle.jsse.BCSSLParameters
|
|
-dontwarn org.bouncycastle.jsse.BCSSLSocket
|
|
-dontwarn org.bouncycastle.jsse.provider.BouncyCastleJsseProvider
|
|
-dontwarn org.conscrypt.Conscrypt$Version
|
|
-dontwarn org.conscrypt.Conscrypt
|
|
-dontwarn org.conscrypt.ConscryptHostnameVerifier
|
|
-dontwarn org.openjsse.javax.net.ssl.SSLParameters
|
|
-dontwarn org.openjsse.javax.net.ssl.SSLSocket
|
|
-dontwarn org.openjsse.net.ssl.OpenJSSE
|
|
-dontwarn org.slf4j.Logger
|
|
-dontwarn org.slf4j.LoggerFactory
|
|
|
|
-keepclasseswithmembers class * {
|
|
@com.squareup.moshi.* <methods>;
|
|
}
|
|
|
|
-keep @com.squareup.moshi.JsonQualifier interface *
|
|
|
|
# Enum field names are used by the integrated EnumJsonAdapter.
|
|
# Annotate enums with @JsonClass(generateAdapter = false) to use them with Moshi.
|
|
-keepclassmembers @com.squareup.moshi.JsonClass class * extends java.lang.Enum {
|
|
<fields>;
|
|
}
|
|
|
|
# The name of @JsonClass types is used to look up the generated adapter.
|
|
-keepnames @com.squareup.moshi.JsonClass class *
|
|
|
|
# Retain generated target class's synthetic defaults constructor and keep DefaultConstructorMarker's
|
|
# name. We will look this up reflectively to invoke the type's constructor.
|
|
#
|
|
# We can't _just_ keep the defaults constructor because Proguard/R8's spec doesn't allow wildcard
|
|
# matching preceding parameters.
|
|
-keepnames class kotlin.jvm.internal.DefaultConstructorMarker
|
|
-keepclassmembers @com.squareup.moshi.JsonClass class * {
|
|
<init>(...);
|
|
}
|
|
|
|
# Retain generated JsonAdapters if annotated type is retained.
|
|
-keep class **JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
|
|
-if @com.squareup.moshi.JsonClass class *
|
|
-keep class <1>JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
-if @com.squareup.moshi.JsonClass class **$*
|
|
-keep class <1>_<2>JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
-if @com.squareup.moshi.JsonClass class **$*$*
|
|
-keep class <1>_<2>_<3>JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
-if @com.squareup.moshi.JsonClass class **$*$*$*
|
|
-keep class <1>_<2>_<3>_<4>JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
-if @com.squareup.moshi.JsonClass class **$*$*$*$*
|
|
-keep class <1>_<2>_<3>_<4>_<5>JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
-if @com.squareup.moshi.JsonClass class **$*$*$*$*$*
|
|
-keep class <1>_<2>_<3>_<4>_<5>_<6>JsonAdapter {
|
|
<init>(...);
|
|
<fields>;
|
|
}
|
|
# Dagger
|
|
# This is to allow the restore functionality to work
|
|
-keep class dagger.** { *; }
|
|
-keep class * extends dagger.Module { *; }
|
|
-keep class * extends dagger.Component { *; }
|
|
-keep class * extends dagger.Subcomponent { *; }
|
|
-keep class * {
|
|
@dagger.Provides <methods>;
|
|
}
|
|
-keep class io.reactivex.** { *; }
|
|
-keep class io.reactivex.subjects.** { *; }
|
|
-keep class androidx.activity.result.** { *; }
|
|
-keep class dev.octoshrimpy.quik.** { *; }
|
|
|