1 # The proguard configuration file for the following section is Android Gradle plugin 9.3.1 (extracted file: C:\Users\jhust\Documents\jcr-guide-pro-source\android\app\build\intermediates\default_proguard_files\global\proguard-android-optimize.txt-9.3.1)
2 # This is a configuration file for ProGuard.
3 # http://proguard.sourceforge.net/index.html#manual/usage.html
4 #
5 # Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
6 # the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
7 # will be ignored by new version of the Android plugin for Gradle.
8
9 # Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file
10 # instead of this one, which turns off the optimization flags.
11 -allowaccessmodification
12
13 # Preserve some attributes that may be required for reflection.
14 -keepattributes AnnotationDefault,
15 EnclosingMethod,
16 InnerClasses,
17 RuntimeVisibleAnnotations,
18 RuntimeVisibleParameterAnnotations,
19 RuntimeVisibleTypeAnnotations,
20 Signature
21
22 -keep public class com.google.vending.licensing.ILicensingService
23 -keep public class com.android.vending.licensing.ILicensingService
24 -keep public class com.google.android.vending.licensing.ILicensingService
25 -dontnote com.android.vending.licensing.ILicensingService
26 -dontnote com.google.vending.licensing.ILicensingService
27 -dontnote com.google.android.vending.licensing.ILicensingService
28
29 # For native methods, see https://www.guardsquare.com/manual/configuration/examples#native
30 -keepclasseswithmembernames,includedescriptorclasses class * {
31 native <methods>;
32 }
33
34 # Keep setters in Views so that animations can still work.
35 -keepclassmembers public class * extends android.view.View {
36 void set*(***);
37 *** get*();
38 }
39
40 # We want to keep methods in Activity that could be used in the XML attribute onClick.
41 -keepclassmembers class * extends android.app.Activity {
42 public void *(android.view.View);
43 }
44
45 # For enumeration classes, see https://www.guardsquare.com/manual/configuration/examples#enumerations
46 -keepclassmembers enum * {
47 public static **[] values();
48 public static ** valueOf(java.lang.String);
49 }
50
51 -keepclassmembers class * implements android.os.Parcelable {
52 public static final ** CREATOR;
53 }
54
55 # Preserve annotated Javascript interface methods.
56 -keepclassmembers class * {
57 @android.webkit.JavascriptInterface <methods>;
58 }
59
60 # The support libraries contains references to newer platform versions.
61 # Don't warn about those in case this app is linking against an older
62 # platform version. We know about them, and they are safe.
63 -dontnote android.support.**
64 -dontnote androidx.**
65 -dontwarn android.support.**
66 -dontwarn androidx.**
67
68 # Understand the @Keep support annotation.
69 -keep class android.support.annotation.Keep
70
71 -keep @android.support.annotation.Keep class * {*;}
72
73 -keepclasseswithmembers class * {
74 @android.support.annotation.Keep <methods>;
75 }
76
77 -keepclasseswithmembers class * {
78 @android.support.annotation.Keep <fields>;
79 }
80
81 -keepclasseswithmembers class * {
82 @android.support.annotation.Keep <init>(...);
83 }
84
85 # These classes are duplicated between android.jar and org.apache.http.legacy.jar.
86 -dontnote org.apache.http.**
87 -dontnote android.net.http.**
88
89 # These classes are duplicated between android.jar and core-lambda-stubs.jar.
90 -dontnote java.lang.invoke.**
91
92 # End of content from Android Gradle plugin 9.3.1 (extracted file: C:\Users\jhust\Documents\jcr-guide-pro-source\android\app\build\intermediates\default_proguard_files\global\proguard-android-optimize.txt-9.3.1)
93 # The proguard configuration file for the following section is C:\Users\jhust\Documents\jcr-guide-pro-source\android\app\proguard-rules.pro
94 -keep class com.google.androidbrowserhelper.** { *; }
95 -keep class androidx.browser.** { *; }
96 -dontwarn com.google.androidbrowserhelper.**
97
98 # End of content from C:\Users\jhust\Documents\jcr-guide-pro-source\android\app\proguard-rules.pro
99 # The proguard configuration file for the following section is androidx.appcompat:appcompat:1.6.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\0f9e9431c1f0a1f55693aa77487f11c7\transformed\appcompat-1.6.1\proguard.txt)
100 # Copyright (C) 2018 The Android Open Source Project
101 #
102 # Licensed under the Apache License, Version 2.0 (the "License");
103 # you may not use this file except in compliance with the License.
104 # You may obtain a copy of the License at
105 #
106 # http://www.apache.org/licenses/LICENSE-2.0
107 #
108 # Unless required by applicable law or agreed to in writing, software
109 # distributed under the License is distributed on an "AS IS" BASIS,
110 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
111 # See the License for the specific language governing permissions and
112 # limitations under the License.
113
114 # aapt is not able to read app::actionViewClass and app:actionProviderClass to produce proguard
115 # keep rules. Add a commonly used SearchView to the keep list until b/109831488 is resolved.
116 -keep class androidx.appcompat.widget.SearchView { <init>(...); }
117
118 # Never inline methods, but allow shrinking and obfuscation.
119 -keepclassmembernames,allowobfuscation,allowshrinking class androidx.appcompat.widget.AppCompatTextViewAutoSizeHelper$Impl* {
120 <methods>;
121 }
122
123 # End of content from androidx.appcompat:appcompat:1.6.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\0f9e9431c1f0a1f55693aa77487f11c7\transformed\appcompat-1.6.1\proguard.txt)
124 # The proguard configuration file for the following section is androidx.fragment:fragment:1.3.6 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\ec49da204eed51e5aa12e4977cefa058\transformed\fragment-1.3.6\proguard.txt)
125 # Copyright (C) 2020 The Android Open Source Project
126 #
127 # Licensed under the Apache License, Version 2.0 (the "License");
128 # you may not use this file except in compliance with the License.
129 # You may obtain a copy of the License at
130 #
131 # http://www.apache.org/licenses/LICENSE-2.0
132 #
133 # Unless required by applicable law or agreed to in writing, software
134 # distributed under the License is distributed on an "AS IS" BASIS,
135 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136 # See the License for the specific language governing permissions and
137 # limitations under the License.
138
139 # The default FragmentFactory creates Fragment instances using reflection
140 -if public class ** extends androidx.fragment.app.Fragment
141 -keepclasseswithmembers,allowobfuscation public class <1> {
142 public <init>();
143 }
144
145 # End of content from androidx.fragment:fragment:1.3.6 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\ec49da204eed51e5aa12e4977cefa058\transformed\fragment-1.3.6\proguard.txt)
146 # The proguard configuration file for the following section is androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\6543641ef516ed8bd8f708f02e3a665d\transformed\lifecycle-viewmodel-savedstate-2.5.1\proguard.txt)
147 -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
148 <init>(androidx.lifecycle.SavedStateHandle);
149 }
150
151 -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel {
152 <init>(android.app.Application,androidx.lifecycle.SavedStateHandle);
153 }
154
155 # End of content from androidx.lifecycle:lifecycle-viewmodel-savedstate:2.5.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\6543641ef516ed8bd8f708f02e3a665d\transformed\lifecycle-viewmodel-savedstate-2.5.1\proguard.txt)
156 # The proguard configuration file for the following section is androidx.lifecycle:lifecycle-viewmodel:2.5.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\7e2d308f48d7c29b0d9b1df0d59af711\transformed\lifecycle-viewmodel-2.5.1\proguard.txt)
157 -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.ViewModel {
158 <init>();
159 }
160
161 -keepclassmembers,allowobfuscation class * extends androidx.lifecycle.AndroidViewModel {
162 <init>(android.app.Application);
163 }
164
165 # End of content from androidx.lifecycle:lifecycle-viewmodel:2.5.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\7e2d308f48d7c29b0d9b1df0d59af711\transformed\lifecycle-viewmodel-2.5.1\proguard.txt)
166 # The proguard configuration file for the following section is androidx.savedstate:savedstate:1.2.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\c73bc8f36df4b52f52286b82350045f7\transformed\savedstate-1.2.0\proguard.txt)
167 # Copyright (C) 2019 The Android Open Source Project
168 #
169 # Licensed under the Apache License, Version 2.0 (the "License");
170 # you may not use this file except in compliance with the License.
171 # You may obtain a copy of the License at
172 #
173 # http://www.apache.org/licenses/LICENSE-2.0
174 #
175 # Unless required by applicable law or agreed to in writing, software
176 # distributed under the License is distributed on an "AS IS" BASIS,
177 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
178 # See the License for the specific language governing permissions and
179 # limitations under the License.
180
181 -keepclassmembers,allowobfuscation class * implements androidx.savedstate.SavedStateRegistry$AutoRecreated {
182 <init>();
183 }
184
185 # End of content from androidx.savedstate:savedstate:1.2.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\c73bc8f36df4b52f52286b82350045f7\transformed\savedstate-1.2.0\proguard.txt)
186 # The proguard configuration file for the following section is androidx.webkit:webkit:1.11.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\fe5c193e93c0be8770a73234b24aec8d\transformed\webkit-1.11.0\proguard.txt)
187 # Copyright 2018 The Chromium Authors
188 # Use of this source code is governed by a BSD-style license that can be
189 # found in the LICENSE file.
190
191 # We need to avoid obfuscating the support library boundary interface because
192 # this API is shared with the Android Support Library.
193 # Note that we only 'keep' the package org.chromium.support_lib_boundary itself,
194 # any sub-packages of that package can still be obfuscated.
195 -keep public class org.chromium.support_lib_boundary.* { public *; }
196
197 # Copyright (C) 2018 The Android Open Source Project
198 #
199 # Licensed under the Apache License, Version 2.0 (the "License");
200 # you may not use this file except in compliance with the License.
201 # You may obtain a copy of the License at
202 #
203 # http://www.apache.org/licenses/LICENSE-2.0
204 #
205 # Unless required by applicable law or agreed to in writing, software
206 # distributed under the License is distributed on an "AS IS" BASIS,
207 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
208 # See the License for the specific language governing permissions and
209 # limitations under the License.
210
211 # Prevent WebViewClientCompat from being renamed, since chromium depends on this name.
212 -keepnames public class androidx.webkit.WebViewClientCompat
213
214 # Prevent ProcessGlobalConfig and member sProcessGlobalConfig from being renamed, since chromium
215 # depends on this name.
216 -keepnames public class androidx.webkit.ProcessGlobalConfig {
217 private static final *** sProcessGlobalConfig;
218 }
219 # End of content from androidx.webkit:webkit:1.11.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\fe5c193e93c0be8770a73234b24aec8d\transformed\webkit-1.11.0\proguard.txt)
220 # The proguard configuration file for the following section is androidx.vectordrawable:vectordrawable-animated:1.1.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\45930dd2fb156d56878ac00e7ed974ac\transformed\vectordrawable-animated-1.1.0\proguard.txt)
221 # Copyright (C) 2016 The Android Open Source Project
222 #
223 # Licensed under the Apache License, Version 2.0 (the "License");
224 # you may not use this file except in compliance with the License.
225 # You may obtain a copy of the License at
226 #
227 # http://www.apache.org/licenses/LICENSE-2.0
228 #
229 # Unless required by applicable law or agreed to in writing, software
230 # distributed under the License is distributed on an "AS IS" BASIS,
231 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
232 # See the License for the specific language governing permissions and
233 # limitations under the License.
234
235 # keep setters in VectorDrawables so that animations can still work.
236 -keepclassmembers class androidx.vectordrawable.graphics.drawable.VectorDrawableCompat$* {
237 void set*(***);
238 *** get*();
239 }
240
241 # End of content from androidx.vectordrawable:vectordrawable-animated:1.1.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\45930dd2fb156d56878ac00e7ed974ac\transformed\vectordrawable-animated-1.1.0\proguard.txt)
242 # The proguard configuration file for the following section is androidx.core:core:1.9.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\4463cecf4472a5894897df2bcfb2d332\transformed\core-1.9.0\proguard.txt)
243 # Never inline methods, but allow shrinking and obfuscation.
244 -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.ViewCompat$Api* {
245 <methods>;
246 }
247 -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.view.WindowInsetsCompat$*Impl* {
248 <methods>;
249 }
250 -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.app.NotificationCompat$*$Api*Impl {
251 <methods>;
252 }
253 -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.os.UserHandleCompat$Api*Impl {
254 <methods>;
255 }
256 -keepclassmembernames,allowobfuscation,allowshrinking class androidx.core.widget.EdgeEffectCompat$Api*Impl {
257 <methods>;
258 }
259
260 # End of content from androidx.core:core:1.9.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\4463cecf4472a5894897df2bcfb2d332\transformed\core-1.9.0\proguard.txt)
261 # The proguard configuration file for the following section is org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\b9ebee7c0247aec53802d7a4c23e2342\transformed\shrink-rules\lib\META-INF\com.android.tools\r8\coroutines.pro)
262 # When editing this file, update the following files as well:
263 # - META-INF/proguard/coroutines.pro
264 # - META-INF/com.android.tools/proguard/coroutines.pro
265
266 # Most of volatile fields are updated with AFU and should not be mangled
267 -keepclassmembers class kotlinx.coroutines.** {
268 volatile <fields>;
269 }
270
271 # Same story for the standard library's SafeContinuation that also uses AtomicReferenceFieldUpdater
272 -keepclassmembers class kotlin.coroutines.SafeContinuation {
273 volatile <fields>;
274 }
275
276 # These classes are only required by kotlinx.coroutines.debug.AgentPremain, which is only loaded when
277 # kotlinx-coroutines-core is used as a Java agent, so these are not needed in contexts where ProGuard is used.
278 -dontwarn java.lang.instrument.ClassFileTransformer
279 -dontwarn sun.misc.SignalHandler
280 -dontwarn java.lang.instrument.Instrumentation
281 -dontwarn sun.misc.Signal
282
283 # Only used in `kotlinx.coroutines.internal.ExceptionsConstructor`.
284 # The case when it is not available is hidden in a `try`-`catch`, as well as a check for Android.
285 -dontwarn java.lang.ClassValue
286
287 # An annotation used for build tooling, won't be directly accessed.
288 -dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
289
290 # End of content from org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\b9ebee7c0247aec53802d7a4c23e2342\transformed\shrink-rules\lib\META-INF\com.android.tools\r8\coroutines.pro)
291 # The proguard configuration file for the following section is org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\3f332b31344fabc6b6fabadbb6a4bf53\transformed\shrink-rules\lib\META-INF\com.android.tools\r8-from-1.6.0\coroutines.pro)
292 # Allow R8 to optimize away the FastServiceLoader.
293 # Together with ServiceLoader optimization in R8
294 # this results in direct instantiation when loading Dispatchers.Main
295 -assumenosideeffects class kotlinx.coroutines.internal.MainDispatcherLoader {
296 boolean FAST_SERVICE_LOADER_ENABLED return false;
297 }
298
299 -assumenosideeffects class kotlinx.coroutines.internal.FastServiceLoaderKt {
300 boolean ANDROID_DETECTED return true;
301 }
302
303 -keep class kotlinx.coroutines.android.AndroidDispatcherFactory {*;}
304
305 # Disable support for "Missing Main Dispatcher", since we always have Android main dispatcher
306 -assumenosideeffects class kotlinx.coroutines.internal.MainDispatchersKt {
307 boolean SUPPORT_MISSING return false;
308 }
309
310 # Statically turn off all debugging facilities and assertions
311 -assumenosideeffects class kotlinx.coroutines.DebugKt {
312 boolean getASSERTIONS_ENABLED() return false;
313 boolean getDEBUG() return false;
314 boolean getRECOVER_STACK_TRACES() return false;
315 }
316
317 # End of content from org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\3f332b31344fabc6b6fabadbb6a4bf53\transformed\shrink-rules\lib\META-INF\com.android.tools\r8-from-1.6.0\coroutines.pro)
318 # The proguard configuration file for the following section is androidx.lifecycle:lifecycle-process:2.4.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\aa8d50ab1a19518caa19fe2444b0ae7e\transformed\lifecycle-process-2.4.1\proguard.txt)
319 # this rule is need to work properly when app is compiled with api 28, see b/142778206
320 -keepclassmembers class * extends androidx.lifecycle.EmptyActivityLifecycleCallbacks { *; }
321 # End of content from androidx.lifecycle:lifecycle-process:2.4.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\aa8d50ab1a19518caa19fe2444b0ae7e\transformed\lifecycle-process-2.4.1\proguard.txt)
322 # The proguard configuration file for the following section is androidx.lifecycle:lifecycle-runtime:2.5.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\f3f56fc8ac3a56fa6695b4b81ddc3fb0\transformed\lifecycle-runtime-2.5.1\proguard.txt)
323 -keepattributes AnnotationDefault,
324 RuntimeVisibleAnnotations,
325 RuntimeVisibleParameterAnnotations,
326 RuntimeVisibleTypeAnnotations
327
328 -keepclassmembers enum androidx.lifecycle.Lifecycle$Event {
329 <fields>;
330 }
331
332 -keep !interface * implements androidx.lifecycle.LifecycleObserver {
333 }
334
335 -keep class * implements androidx.lifecycle.GeneratedAdapter {
336 <init>(...);
337 }
338
339 -keepclassmembers class ** {
340 @androidx.lifecycle.OnLifecycleEvent *;
341 }
342
343 # this rule is need to work properly when app is compiled with api 28, see b/142778206
344 # Also this rule prevents registerIn from being inlined.
345 -keepclassmembers class androidx.lifecycle.ReportFragment$LifecycleCallbacks { *; }
346 # End of content from androidx.lifecycle:lifecycle-runtime:2.5.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\f3f56fc8ac3a56fa6695b4b81ddc3fb0\transformed\lifecycle-runtime-2.5.1\proguard.txt)
347 # The proguard configuration file for the following section is androidx.startup:startup-runtime:1.1.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\e71e0c35e4ae2746e2984bbbf6bdb8fa\transformed\startup-runtime-1.1.1\proguard.txt)
348 # It's important that we preserve initializer names, given they are used in the AndroidManifest.xml.
349 -keepnames class * extends androidx.startup.Initializer
350
351 # These Proguard rules ensures that ComponentInitializers are are neither shrunk nor obfuscated,
352 # and are a part of the primary dex file. This is because they are discovered and instantiated
353 # during application startup.
354 -keep class * extends androidx.startup.Initializer {
355 # Keep the public no-argument constructor while allowing other methods to be optimized.
356 <init>();
357 }
358
359 -assumenosideeffects class androidx.startup.StartupLogger { public static <methods>; }
360
361 # End of content from androidx.startup:startup-runtime:1.1.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\e71e0c35e4ae2746e2984bbbf6bdb8fa\transformed\startup-runtime-1.1.1\proguard.txt)
362 # The proguard configuration file for the following section is androidx.versionedparcelable:versionedparcelable:1.1.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\f3ddd40b5d714969780ad00fe56acb10\transformed\versionedparcelable-1.1.1\proguard.txt)
363 -keep class * implements androidx.versionedparcelable.VersionedParcelable
364 -keep public class android.support.**Parcelizer { *; }
365 -keep public class androidx.**Parcelizer { *; }
366 -keep public class androidx.versionedparcelable.ParcelImpl
367
368 # End of content from androidx.versionedparcelable:versionedparcelable:1.1.1 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\f3ddd40b5d714969780ad00fe56acb10\transformed\versionedparcelable-1.1.1\proguard.txt)
369 # The proguard configuration file for the following section is androidx.annotation:annotation:1.3.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\bc39ce6b5fc73903cdc517feba006a3e\transformed\shrink-rules\lib\META-INF\proguard\androidx-annotations.pro)
370 -keep,allowobfuscation @interface androidx.annotation.Keep
371 -keep @androidx.annotation.Keep class * {*;}
372
373 -keepclasseswithmembers class * {
374 @androidx.annotation.Keep <methods>;
375 }
376
377 -keepclasseswithmembers class * {
378 @androidx.annotation.Keep <fields>;
379 }
380
381 -keepclasseswithmembers class * {
382 @androidx.annotation.Keep <init>(...);
383 }
384
385 -keepclassmembers,allowobfuscation class * {
386 @androidx.annotation.DoNotInline <methods>;
387 }
388
389 # End of content from androidx.annotation:annotation:1.3.0 (extracted file: C:\Users\jhust\.gradle\caches\9.5.0\transforms\bc39ce6b5fc73903cdc517feba006a3e\transformed\shrink-rules\lib\META-INF\proguard\androidx-annotations.pro)
390 # The proguard configuration file for the following section is <unknown>
391
392 # End of content from <unknown>