Files
AndroidJava/dash-wallet/wallet/proguard.cfg
T
coco 7846a45f2c a
2026-07-03 15:47:27 +08:00

263 lines
8.1 KiB
INI

-dontskipnonpubliclibraryclasses
-dontoptimize
-dontpreverify
-dontobfuscate
-verbose
-keepclassmembers class * implements java.io.Serializable {
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
-keepattributes *Annotation*
-keepclasseswithmembernames,includedescriptorclasses class * {
native <methods>;
}
-keepclassmembers,includedescriptorclasses public class * extends android.view.View {
void set*(***);
*** get*();
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keepclassmembers class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator CREATOR;
}
-keepclassmembers class **.R$* {
public static <fields>;
}
-keep public class * extends androidx.fragment.app.Fragment
-dontwarn org.conscrypt.BufferAllocator
-dontwarn org.conscrypt.Conscrypt$Version
-dontwarn org.conscrypt.Conscrypt
-dontwarn org.conscrypt.ConscryptHostnameVerifier
-dontwarn org.conscrypt.HandshakeListener
-dontwarn org.eclipse.jetty.alpn.ALPN$ClientProvider
-dontwarn org.eclipse.jetty.alpn.ALPN$Provider
-dontwarn org.eclipse.jetty.alpn.ALPN$ServerProvider
-dontwarn org.eclipse.jetty.alpn.ALPN
-dontwarn org.eclipse.jetty.npn.NextProtoNego$ClientProvider
-dontwarn org.eclipse.jetty.npn.NextProtoNego$Provider
-dontwarn org.eclipse.jetty.npn.NextProtoNego$ServerProvider
-dontwarn org.eclipse.jetty.npn.NextProtoNego
-dontwarn org.openjsse.javax.net.ssl.SSLParameters
-dontwarn org.openjsse.javax.net.ssl.SSLSocket
-dontwarn org.openjsse.net.ssl.OpenJSSE
-dontwarn reactor.blockhound.integration.BlockHoundIntegration
# android-support
-dontwarn android.support.**
-dontnote android.support.**
-keep class android.support.v7.widget.RoundRectDrawable { *; }
-keep class android.support.v7.widget.SearchView { *; }
# android-support-design
-keep class android.support.design.widget.** { *; }
-keep interface android.support.design.widget.** { *; }
-dontwarn android.support.design.**
# bitcoinj
-keep,includedescriptorclasses class org.bitcoinj.wallet.Protos$** { *; }
-keepclassmembers class org.bitcoinj.wallet.Protos { com.google.protobuf.Descriptors$FileDescriptor descriptor; }
-keep,includedescriptorclasses class org.bitcoin.protocols.payments.Protos$** { *; }
-keepclassmembers class org.bitcoin.protocols.payments.Protos { com.google.protobuf.Descriptors$FileDescriptor descriptor; }
-dontwarn org.bitcoinj.store.WindowsMMapHack
-dontwarn org.bitcoinj.store.LevelDBBlockStore
-dontnote org.bitcoinj.crypto.DRMWorkaround
-dontnote org.bitcoinj.crypto.TrustStoreLoader$DefaultTrustStoreLoader
-dontnote com.subgraph.orchid.crypto.PRNGFixes
-dontwarn okio.DeflaterSink
-dontwarn okio.Okio
-dontnote com.squareup.okhttp.internal.Platform
-dontwarn org.bitcoinj.store.LevelDBFullPrunedBlockStore**
# dash-sdk
-keep class org.dashj.platform.sdk.** { *; }
# zxing
-dontwarn com.google.zxing.common.BitMatrix
# Guava
-dontwarn sun.misc.Unsafe
-dontwarn java.lang.ClassValue
-dontwarn com.google.errorprone.annotations.**
-dontwarn com.google.j2objc.annotations.**
-dontwarn org.codehaus.mojo.**
-dontnote com.google.common.reflect.**
-dontnote com.google.appengine.**
-dontnote com.google.apphosting.**
-dontnote com.google.common.cache.Striped64,com.google.common.cache.Striped64$Cell
-dontnote com.google.common.util.concurrent.AbstractFuture$UnsafeAtomicHelper
# Moshi
-dontnote com.squareup.moshi.**
-dontwarn com.squareup.moshi.**
# slf4j
-dontwarn org.slf4j.MDC
-dontwarn org.slf4j.MarkerFactory
# logback-android
-dontwarn javax.mail.**
-dontnote ch.qos.logback.core.rolling.helper.FileStoreUtil
-keep class ch.qos.logback.** { *; }
-keep enum ch.qos.logback.** { *; }
-keep interface ch.qos.logback.** { *; }
-keep class ch.qos.logback.core.rolling.** { *; }
-keep class org.joda.time.** { *; }
-keep class java.time.** { *; }
# Bitcoin Wallet
-dontnote de.schildbach.wallet.util.Io
# dapi-client
-keep class * extends com.google.protobuf.GeneratedMessageLite { *; }
#Glide
-keep public class * implements com.bumptech.glide.module.GlideModule
-keep public class * extends com.bumptech.glide.module.AppGlideModule
-keep public enum com.bumptech.glide.load.ImageHeaderParser$** {
**[] $VALUES;
public *;
}
-keepclassmembers class kotlin.Metadata {
public <methods>;
}
-keepclassmembers class kotlin.Metadata {
public <methods>;
}
# Retrofit
-keepattributes Signature
-keepattributes Exceptions
-keep class retrofit2.** { *; }
-keepclasseswithmembers class * {
@retrofit2.http.* <methods>;
}
-keepclassmembers,allowshrinking,allowobfuscation interface * {
@retrofit2.http.* <methods>;
}
# OkHttp
-keepattributes *Annotation*
-keep class okhttp3.** { *; }
-keep interface okhttp3.** { *; }
-dontwarn okhttp3.**
-dontwarn okio.**
# Kotlin Serialization
-keepattributes *Annotation*, InnerClasses
-dontnote kotlinx.serialization.AnnotationsKt
-keepclassmembers class kotlinx.serialization.json.** {
*** Companion;
}
-keepclasseswithmembers class kotlinx.serialization.json.** {
kotlinx.serialization.KSerializer serializer(...);
}
# Rates
-keep class de.schildbach.wallet.rates.** { *; }
# Coinbase
-keep class org.dash.wallet.integrations.coinbase.** { *; }
-keepclassmembers class org.dash.wallet.integrations.coinbase.** { *; }
-keep class org.dash.wallet.integrations.coinbase.service.CoinBaseAuthApi {
*;
}
# Crowdnode
-keep class org.dash.wallet.integrations.crowdnode.** { *; }
-keepclassmembers class org.dash.wallet.integrations.crowdnode.** { *; }
# Liquid
-keep class org.dash.wallet.integration.liquid.data** { *; }
# JWT
-keep class io.jsonwebtoken** { *; }
-keepnames class io.jsonwebtoken.* { *; }
-keepnames interface io.jsonwebtoken.* { *; }
# Bouncycastle
-keep class org.bouncycastle** { *; }
-keepnames class org.bouncycastle** { *; }
-dontwarn org.bouncycastle.**
-keepclassmembers class * {
@com.google.gson.annotations.SerializedName <fields>;
}
# Retrofit
-keepattributes Signature
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes RuntimeVisibleAnnotations
-keepattributes RuntimeInvisibleAnnotations
-keep,allowobfuscation interface * {
@retrofit2.http.* <methods>;
}
-keepclasseswithmembers interface * {
@retrofit2.http.* <methods>;
}
# Keep generic type information
-keepattributes Signature
-keepattributes EnclosingMethod
# Keep Kotlin Metadata
-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep class kotlin.Metadata { *; }
# Google Drive
-keep class com.google.api.client.** { *; }
-keep class com.google.api.services.** { *; }
-keep class com.google.gson.** { *; }
-keep class com.google.api.client.http.** { *; }
-keep class com.google.api.client.json.** { *; }
-keep class com.google.api.services.drive.** { *; }
-keep class com.google.api.client.auth.oauth2.** { *; }
-keepattributes *Annotation*
-keepclassmembers class * {
@com.google.api.client.util.Key <fields>;
}
# Keep Conscrypt classes
-keep class org.conscrypt.** { *; }
-keep class com.android.org.conscrypt.** { *; }
# Prevent obfuscation of SSL/TLS related classes
-dontwarn org.conscrypt.**
-dontwarn com.android.org.conscrypt.**
# Keep Firebase-related classes
-keep class com.google.firebase.** { *; }
-keep class com.google.android.gms.** { *; }
-keepnames class com.google.android.gms.internal.firebase-auth-api.**
-keepnames class com.google.firebase.auth.**
-keep interface com.google.firebase.auth.** { *; }
# CTX
-keep class org.dash.wallet.features.exploredash.data.dashspend.ctx.model.** { *; }
-keep,allowobfuscation interface org.dash.wallet.features.exploredash.network.service.ctxspend.CTXSpendApi
-keep,allowobfuscation interface org.dash.wallet.features.exploredash.network.service.ctxspend.CTXSpendTokenApi
# PiggyCards
-keep class org.dash.wallet.features.exploredash.data.dashspend.piggycards.model.** { *; }
-keep,allowobfuscation interface org.dash.wallet.features.exploredash.network.service.piggycards.PiggyCardsApi