Merge pull request #10088 from TacoTheDank/organizeProguard

Organize the proguard file
This commit is contained in:
Isira Seneviratne 2023-06-02 06:00:22 +05:30 committed by GitHub
commit ad75db40df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 11 additions and 25 deletions

View File

@ -1,32 +1,18 @@
# Add project specific ProGuard rules here. # https://developer.android.com/build/shrink-code
# By default, the flags in this file are appended to flags specified
# in /home/the-scrabi/bin/Android/Sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Add any project specific keep options here:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
## Helps debug release versions
-dontobfuscate -dontobfuscate
## Rules for NewPipeExtractor
-keep class org.schabi.newpipe.extractor.timeago.patterns.** { *; } -keep class org.schabi.newpipe.extractor.timeago.patterns.** { *; }
-keep class org.mozilla.javascript.** { *; } -keep class org.mozilla.javascript.** { *; }
-keep class org.mozilla.classfile.ClassFileWriter -keep class org.mozilla.classfile.ClassFileWriter
-keep class com.google.android.exoplayer2.** { *; }
-dontwarn org.mozilla.javascript.tools.** -dontwarn org.mozilla.javascript.tools.**
# Rules for icepick. Copy paste from https://github.com/frankiesardo/icepick ## Rules for ExoPlayer
-keep class com.google.android.exoplayer2.** { *; }
## Rules for Icepick. Copy pasted from https://github.com/frankiesardo/icepick
-dontwarn icepick.** -dontwarn icepick.**
-keep class icepick.** { *; } -keep class icepick.** { *; }
-keep class **$$Icepick { *; } -keep class **$$Icepick { *; }
@ -35,11 +21,11 @@
} }
-keepnames class * { @icepick.State *;} -keepnames class * { @icepick.State *;}
## Rules for OkHttp. Copy paste from https://github.com/square/okhttp ## Rules for OkHttp. Copy pasted from https://github.com/square/okhttp
-dontwarn okhttp3.** -dontwarn okhttp3.**
-dontwarn okio.** -dontwarn okio.**
##
## See https://github.com/TeamNewPipe/NewPipe/pull/1441
-keepclassmembers class * implements java.io.Serializable { -keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID; static final long serialVersionUID;
!static !transient <fields>; !static !transient <fields>;
@ -47,5 +33,5 @@
private void readObject(java.io.ObjectInputStream); private void readObject(java.io.ObjectInputStream);
} }
# for some reason NotificationModeConfigFragment wasn't kept (only referenced in a preference xml) ## For some reason NotificationModeConfigFragment wasn't kept (only referenced in a preference xml)
-keep class org.schabi.newpipe.settings.notifications.** { *; } -keep class org.schabi.newpipe.settings.notifications.** { *; }