HomelabMFA v1.0 — biometric gate for ntfy Push MFA
This commit is contained in:
@@ -0,0 +1,641 @@
|
||||
# The proguard configuration file for the following section is /home/amir/android-projects/homelab-mfa/app/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.2.2
|
||||
# This is a configuration file for ProGuard.
|
||||
# http://proguard.sourceforge.net/index.html#manual/usage.html
|
||||
#
|
||||
# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
|
||||
# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
|
||||
# will be ignored by new version of the Android plugin for Gradle.
|
||||
|
||||
# Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file
|
||||
# instead of this one, which turns off the optimization flags.
|
||||
# Adding optimization introduces certain risks, since for example not all optimizations performed by
|
||||
# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations
|
||||
# known to have issues, but the list may not be complete or up to date. (The "arithmetic"
|
||||
# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test
|
||||
# thoroughly if you go this route.
|
||||
-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
|
||||
-optimizationpasses 5
|
||||
-allowaccessmodification
|
||||
|
||||
-dontusemixedcaseclassnames
|
||||
-dontskipnonpubliclibraryclasses
|
||||
-verbose
|
||||
|
||||
# Preserve some attributes that may be required for reflection.
|
||||
-keepattributes AnnotationDefault,
|
||||
EnclosingMethod,
|
||||
InnerClasses,
|
||||
RuntimeVisibleAnnotations,
|
||||
RuntimeVisibleParameterAnnotations,
|
||||
RuntimeVisibleTypeAnnotations,
|
||||
Signature
|
||||
|
||||
-keep public class com.google.vending.licensing.ILicensingService
|
||||
-keep public class com.android.vending.licensing.ILicensingService
|
||||
-keep public class com.google.android.vending.licensing.ILicensingService
|
||||
-dontnote com.android.vending.licensing.ILicensingService
|
||||
-dontnote com.google.vending.licensing.ILicensingService
|
||||
-dontnote com.google.android.vending.licensing.ILicensingService
|
||||
|
||||
# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
|
||||
-keepclasseswithmembernames,includedescriptorclasses class * {
|
||||
native <methods>;
|
||||
}
|
||||
|
||||
# Keep setters in Views so that animations can still work.
|
||||
-keepclassmembers public class * extends android.view.View {
|
||||
void set*(***);
|
||||
*** get*();
|
||||
}
|
||||
|
||||
# We want to keep methods in Activity that could be used in the XML attribute onClick.
|
||||
-keepclassmembers class * extends android.app.Activity {
|
||||
public void *(android.view.View);
|
||||
}
|
||||
|
||||
# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
|
||||
-keepclassmembers enum * {
|
||||
public static **[] values();
|
||||
public static ** valueOf(java.lang.String);
|
||||
}
|
||||
|
||||
-keepclassmembers class * implements android.os.Parcelable {
|
||||
public static final ** CREATOR;
|
||||
}
|
||||
|
||||
# Preserve annotated Javascript interface methods.
|
||||
-keepclassmembers class * {
|
||||
@android.webkit.JavascriptInterface <methods>;
|
||||
}
|
||||
|
||||
# The support libraries contains references to newer platform versions.
|
||||
# Don't warn about those in case this app is linking against an older
|
||||
# platform version. We know about them, and they are safe.
|
||||
-dontnote android.support.**
|
||||
-dontnote androidx.**
|
||||
-dontwarn android.support.**
|
||||
-dontwarn androidx.**
|
||||
|
||||
# This class is deprecated, but remains for backward compatibility.
|
||||
-dontwarn android.util.FloatMath
|
||||
|
||||
# Understand the @Keep support annotation.
|
||||
-keep class android.support.annotation.Keep
|
||||
-keep class androidx.annotation.Keep
|
||||
|
||||
-keep @android.support.annotation.Keep class * {*;}
|
||||
-keep @androidx.annotation.Keep class * {*;}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@android.support.annotation.Keep <methods>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@androidx.annotation.Keep <methods>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@android.support.annotation.Keep <fields>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@androidx.annotation.Keep <fields>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@android.support.annotation.Keep <init>(...);
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@androidx.annotation.Keep <init>(...);
|
||||
}
|
||||
|
||||
# These classes are duplicated between android.jar and org.apache.http.legacy.jar.
|
||||
-dontnote org.apache.http.**
|
||||
-dontnote android.net.http.**
|
||||
|
||||
# These classes are duplicated between android.jar and core-lambda-stubs.jar.
|
||||
-dontnote java.lang.invoke.**
|
||||
|
||||
# End of content from /home/amir/android-projects/homelab-mfa/app/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.2.2
|
||||
# The proguard configuration file for the following section is /home/amir/android-projects/homelab-mfa/app/build/intermediates/aapt_proguard_file/release/aapt_rules.txt
|
||||
-keep class androidx.core.app.CoreComponentFactory { <init>(); }
|
||||
-keep class androidx.profileinstaller.ProfileInstallReceiver { <init>(); }
|
||||
-keep class androidx.startup.InitializationProvider { <init>(); }
|
||||
-keep class me.khodak.mfa.MainActivity { <init>(); }
|
||||
-keep class android.widget.Space { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.app.AlertController$RecycleListView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.view.menu.ActionMenuItemView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.view.menu.ExpandedMenuView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.view.menu.ListMenuItemView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ActionBarContainer { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ActionBarContextView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ActionBarOverlayLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ActionMenuView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ActivityChooserView$InnerLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.AlertDialogLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ButtonBarLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ContentFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.DialogTitle { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.FitWindowsFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.FitWindowsLinearLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.SearchView$SearchAutoComplete { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.Toolbar { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.appcompat.widget.ViewStubCompat { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.constraintlayout.helper.widget.Flow { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.constraintlayout.widget.ConstraintLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.coordinatorlayout.widget.CoordinatorLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.core.widget.NestedScrollView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.fragment.app.FragmentContainerView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class androidx.recyclerview.widget.RecyclerView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.appbar.MaterialToolbar { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.button.MaterialButton { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.button.MaterialButtonToggleGroup { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.chip.Chip { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.datepicker.MaterialCalendarGridView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.internal.BaselineLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.internal.CheckableImageButton { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.internal.ClippableRoundedCornerLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.internal.NavigationMenuItemView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.internal.NavigationMenuView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.internal.TouchObserverFrameLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.snackbar.Snackbar$SnackbarLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.snackbar.SnackbarContentLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.textfield.TextInputEditText { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.textfield.TextInputLayout { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.timepicker.ChipTextInputComboView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.timepicker.ClockFaceView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.timepicker.ClockHandView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
-keep class com.google.android.material.timepicker.TimePickerView { <init>(android.content.Context, android.util.AttributeSet); }
|
||||
|
||||
|
||||
# End of content from /home/amir/android-projects/homelab-mfa/app/build/intermediates/aapt_proguard_file/release/aapt_rules.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/2a8a49a25e3227f75ec676c8ebf2238e/transformed/material-1.11.0/proguard.txt
|
||||
# Copyright (C) 2015 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# CoordinatorLayout resolves the behaviors of its child components with reflection.
|
||||
-keep public class * extends androidx.coordinatorlayout.widget.CoordinatorLayout$Behavior {
|
||||
public <init>(android.content.Context, android.util.AttributeSet);
|
||||
public <init>();
|
||||
}
|
||||
|
||||
# Make sure we keep annotations for CoordinatorLayout's DefaultBehavior
|
||||
-keepattributes RuntimeVisible*Annotation*
|
||||
|
||||
# Copyright (C) 2018 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# AppCompatViewInflater reads the viewInflaterClass theme attribute which then
|
||||
# reflectively instantiates MaterialComponentsViewInflater using the no-argument
|
||||
# constructor. We only need to keep this constructor and the class name if
|
||||
# AppCompatViewInflater is also being kept.
|
||||
-if class androidx.appcompat.app.AppCompatViewInflater
|
||||
-keep class com.google.android.material.theme.MaterialComponentsViewInflater {
|
||||
<init>();
|
||||
}
|
||||
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/2a8a49a25e3227f75ec676c8ebf2238e/transformed/material-1.11.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/118a1c5b2f0525f1daacc0a3e4c9782f/transformed/biometric-1.1.0/proguard.txt
|
||||
# Copyright (C) 2020 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# Never inline methods, but allow shrinking and obfuscation.
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.AuthenticationCallbackProvider$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.BiometricFragment$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.BiometricManager$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.CancellationSignalProvider$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.CryptoObjectUtils$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.FingerprintDialogFragment$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.KeyguardUtils$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking
|
||||
class androidx.biometric.PackageUtils$Api* {
|
||||
<methods>;
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/118a1c5b2f0525f1daacc0a3e4c9782f/transformed/biometric-1.1.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/e46189f34bfed7967aaeca6b2c80839e/transformed/appcompat-1.6.1/proguard.txt
|
||||
# Copyright (C) 2018 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# aapt is not able to read app::actionViewClass and app:actionProviderClass to produce proguard
|
||||
# keep rules. Add a commonly used SearchView to the keep list until b/109831488 is resolved.
|
||||
-keep class androidx.appcompat.widget.SearchView { <init>(...); }
|
||||
|
||||
# Never inline methods, but allow shrinking and obfuscation.
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.appcompat.widget.AppCompatTextViewAutoSizeHelper$Impl* {
|
||||
<methods>;
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/e46189f34bfed7967aaeca6b2c80839e/transformed/appcompat-1.6.1/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/16a9c756ba48761adfa9c285ab67c14a/transformed/fragment-1.3.6/proguard.txt
|
||||
# Copyright (C) 2020 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# The default FragmentFactory creates Fragment instances using reflection
|
||||
-if public class ** extends androidx.fragment.app.Fragment
|
||||
-keepclasseswithmembers,allowobfuscation public class <1> {
|
||||
public <init>();
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/16a9c756ba48761adfa9c285ab67c14a/transformed/fragment-1.3.6/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/d5866d0b0f76bd83373bafb64309e4a3/transformed/coordinatorlayout-1.1.0/proguard.txt
|
||||
# Copyright (C) 2016 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# CoordinatorLayout resolves the behaviors of its child components with reflection.
|
||||
-keep public class * extends androidx.coordinatorlayout.widget.CoordinatorLayout$Behavior {
|
||||
public <init>(android.content.Context, android.util.AttributeSet);
|
||||
public <init>();
|
||||
}
|
||||
|
||||
# Make sure we keep annotations for CoordinatorLayout's DefaultBehavior and ViewPager's DecorView
|
||||
-keepattributes *Annotation*
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/d5866d0b0f76bd83373bafb64309e4a3/transformed/coordinatorlayout-1.1.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/6c61b5c2f59319a1ebb2b049f38c1e91/transformed/transition-1.2.0/proguard.txt
|
||||
# Copyright (C) 2017 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# Keep a field in transition that is used to keep a reference to weakly-referenced object
|
||||
-keepclassmembers class androidx.transition.ChangeBounds$* extends android.animation.AnimatorListenerAdapter {
|
||||
androidx.transition.ChangeBounds$ViewBounds mViewBounds;
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/6c61b5c2f59319a1ebb2b049f38c1e91/transformed/transition-1.2.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/42e2e0f2923b68eb124c17b737063c20/transformed/vectordrawable-animated-1.1.0/proguard.txt
|
||||
# Copyright (C) 2016 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# keep setters in VectorDrawables so that animations can still work.
|
||||
-keepclassmembers class androidx.vectordrawable.graphics.drawable.VectorDrawableCompat$* {
|
||||
void set*(***);
|
||||
*** get*();
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/42e2e0f2923b68eb124c17b737063c20/transformed/vectordrawable-animated-1.1.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/4b5561e81206f477eeb72ef15f964450/transformed/recyclerview-1.1.0/proguard.txt
|
||||
# Copyright (C) 2015 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# When layoutManager xml attribute is used, RecyclerView inflates
|
||||
#LayoutManagers' constructors using reflection.
|
||||
-keep public class * extends androidx.recyclerview.widget.RecyclerView$LayoutManager {
|
||||
public <init>(android.content.Context, android.util.AttributeSet, int, int);
|
||||
public <init>();
|
||||
}
|
||||
|
||||
-keepclassmembers class androidx.recyclerview.widget.RecyclerView {
|
||||
public void suppressLayout(boolean);
|
||||
public boolean isLayoutSuppressed();
|
||||
}
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/4b5561e81206f477eeb72ef15f964450/transformed/recyclerview-1.1.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/21669e6d68ca88325e9b69b3384a8c3b/transformed/core-1.12.0/proguard.txt
|
||||
# Never inline methods, but allow shrinking and obfuscation.
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.ViewCompat$Api* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.WindowInsetsCompat$*Impl* {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.app.NotificationCompat$*$Api*Impl {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.os.UserHandleCompat$Api*Impl {
|
||||
<methods>;
|
||||
}
|
||||
-keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.widget.EdgeEffectCompat$Api*Impl {
|
||||
<methods>;
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/21669e6d68ca88325e9b69b3384a8c3b/transformed/core-1.12.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/7103500d398728423a0a032d117b2121/transformed/jetified-savedstate-1.2.1/proguard.txt
|
||||
# Copyright (C) 2019 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
-keepclassmembers,allowobfuscation class * implements androidx.savedstate.SavedStateRegistry$AutoRecreated {
|
||||
<init>();
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/7103500d398728423a0a032d117b2121/transformed/jetified-savedstate-1.2.1/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/954b11a970f9634a50ddc9e912b3ca2c/transformed/jetified-lifecycle-process-2.7.0/proguard.txt
|
||||
# this rule is need to work properly when app is compiled with api 28, see b/142778206
|
||||
-keepclassmembers class * extends androidx.lifecycle.EmptyActivityLifecycleCallbacks { *; }
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/954b11a970f9634a50ddc9e912b3ca2c/transformed/jetified-lifecycle-process-2.7.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/e2c34baf27ee269af79771d24d2b4116/transformed/lifecycle-viewmodel-2.7.0/proguard.txt
|
||||
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
|
||||
<init>();
|
||||
}
|
||||
|
||||
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel {
|
||||
<init>(android.app.Application);
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/e2c34baf27ee269af79771d24d2b4116/transformed/lifecycle-viewmodel-2.7.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/d6ff8da22d705940545553499b2c2283/transformed/lifecycle-runtime-2.7.0/proguard.txt
|
||||
-keepattributes AnnotationDefault,
|
||||
RuntimeVisibleAnnotations,
|
||||
RuntimeVisibleParameterAnnotations,
|
||||
RuntimeVisibleTypeAnnotations
|
||||
|
||||
-keepclassmembers enum androidx.lifecycle.Lifecycle$Event {
|
||||
<fields>;
|
||||
}
|
||||
|
||||
-keep class * implements androidx.lifecycle.GeneratedAdapter {
|
||||
<init>(...);
|
||||
}
|
||||
|
||||
-keepclassmembers class ** {
|
||||
@androidx.lifecycle.OnLifecycleEvent *;
|
||||
}
|
||||
|
||||
# this rule is need to work properly when app is compiled with api 28, see b/142778206
|
||||
# Also this rule prevents registerIn from being inlined.
|
||||
-keepclassmembers class androidx.lifecycle.ReportFragment$LifecycleCallbacks { *; }
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/d6ff8da22d705940545553499b2c2283/transformed/lifecycle-runtime-2.7.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/f2192827f2870d141c63da62ebe484d2/transformed/jetified-lifecycle-viewmodel-savedstate-2.7.0/proguard.txt
|
||||
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
|
||||
<init>(androidx.lifecycle.SavedStateHandle);
|
||||
}
|
||||
|
||||
-keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel {
|
||||
<init>(android.app.Application,androidx.lifecycle.SavedStateHandle);
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/f2192827f2870d141c63da62ebe484d2/transformed/jetified-lifecycle-viewmodel-savedstate-2.7.0/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/82fecd3bd0b0d089329b438ac733f2ab/transformed/rules/lib/META-INF/com.android.tools/r8/coroutines.pro
|
||||
# When editing this file, update the following files as well:
|
||||
# - META-INF/proguard/coroutines.pro
|
||||
# - META-INF/com.android.tools/proguard/coroutines.pro
|
||||
|
||||
# Most of volatile fields are updated with AFU and should not be mangled
|
||||
-keepclassmembers class kotlinx.coroutines.** {
|
||||
volatile <fields>;
|
||||
}
|
||||
|
||||
# Same story for the standard library's SafeContinuation that also uses AtomicReferenceFieldUpdater
|
||||
-keepclassmembers class kotlin.coroutines.SafeContinuation {
|
||||
volatile <fields>;
|
||||
}
|
||||
|
||||
# These classes are only required by kotlinx.coroutines.debug.AgentPremain, which is only loaded when
|
||||
# kotlinx-coroutines-core is used as a Java agent, so these are not needed in contexts where ProGuard is used.
|
||||
-dontwarn java.lang.instrument.ClassFileTransformer
|
||||
-dontwarn sun.misc.SignalHandler
|
||||
-dontwarn java.lang.instrument.Instrumentation
|
||||
-dontwarn sun.misc.Signal
|
||||
|
||||
# Only used in `kotlinx.coroutines.internal.ExceptionsConstructor`.
|
||||
# The case when it is not available is hidden in a `try`-`catch`, as well as a check for Android.
|
||||
-dontwarn java.lang.ClassValue
|
||||
|
||||
# An annotation used for build tooling, won't be directly accessed.
|
||||
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/82fecd3bd0b0d089329b438ac733f2ab/transformed/rules/lib/META-INF/com.android.tools/r8/coroutines.pro
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/29172da5f91cbd17c54c442909cd8d79/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro
|
||||
# Allow R8 to optimize away the FastServiceLoader.
|
||||
# Together with ServiceLoader optimization in R8
|
||||
# this results in direct instantiation when loading Dispatchers.Main
|
||||
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatcherLoader {
|
||||
boolean FAST_SERVICE_LOADER_ENABLED return false;
|
||||
}
|
||||
|
||||
-assumenosideeffects class kotlinx.coroutines.internal.FastServiceLoaderKt {
|
||||
boolean ANDROID_DETECTED return true;
|
||||
}
|
||||
|
||||
# Disable support for "Missing Main Dispatcher", since we always have Android main dispatcher
|
||||
-assumenosideeffects class kotlinx.coroutines.internal.MainDispatchersKt {
|
||||
boolean SUPPORT_MISSING return false;
|
||||
}
|
||||
|
||||
# Statically turn off all debugging facilities and assertions
|
||||
-assumenosideeffects class kotlinx.coroutines.DebugKt {
|
||||
boolean getASSERTIONS_ENABLED() return false;
|
||||
boolean getDEBUG() return false;
|
||||
boolean getRECOVER_STACK_TRACES() return false;
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/29172da5f91cbd17c54c442909cd8d79/transformed/rules/lib/META-INF/com.android.tools/r8-from-1.6.0/coroutines.pro
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/9bfcfb9da69e2bff80f1ead2bce2c25a/transformed/versionedparcelable-1.1.1/proguard.txt
|
||||
-keep class * implements androidx.versionedparcelable.VersionedParcelable
|
||||
-keep public class android.support.**Parcelizer { *; }
|
||||
-keep public class androidx.**Parcelizer { *; }
|
||||
-keep public class androidx.versionedparcelable.ParcelImpl
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/9bfcfb9da69e2bff80f1ead2bce2c25a/transformed/versionedparcelable-1.1.1/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/8298fe4ce40aa47bd2bbeab67c5f74cd/transformed/jetified-startup-runtime-1.1.1/proguard.txt
|
||||
# It's important that we preserve initializer names, given they are used in the AndroidManifest.xml.
|
||||
-keepnames class * extends androidx.startup.Initializer
|
||||
|
||||
# These Proguard rules ensures that ComponentInitializers are are neither shrunk nor obfuscated,
|
||||
# and are a part of the primary dex file. This is because they are discovered and instantiated
|
||||
# during application startup.
|
||||
-keep class * extends androidx.startup.Initializer {
|
||||
# Keep the public no-argument constructor while allowing other methods to be optimized.
|
||||
<init>();
|
||||
}
|
||||
|
||||
-assumenosideeffects class androidx.startup.StartupLogger { public static <methods>; }
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/8298fe4ce40aa47bd2bbeab67c5f74cd/transformed/jetified-startup-runtime-1.1.1/proguard.txt
|
||||
# The proguard configuration file for the following section is /home/amir/.gradle/caches/transforms-4/efb027fb7cf7d867f81ce2b11c386cd0/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro
|
||||
-keep,allowobfuscation @interface androidx.annotation.Keep
|
||||
-keep @androidx.annotation.Keep class * {*;}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@androidx.annotation.Keep <methods>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@androidx.annotation.Keep <fields>;
|
||||
}
|
||||
|
||||
-keepclasseswithmembers class * {
|
||||
@androidx.annotation.Keep <init>(...);
|
||||
}
|
||||
|
||||
-keepclassmembers,allowobfuscation class * {
|
||||
@androidx.annotation.DoNotInline <methods>;
|
||||
}
|
||||
|
||||
# End of content from /home/amir/.gradle/caches/transforms-4/efb027fb7cf7d867f81ce2b11c386cd0/transformed/rules/lib/META-INF/proguard/androidx-annotations.pro
|
||||
# The proguard configuration file for the following section is <unknown>
|
||||
|
||||
# End of content from <unknown>
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user