forked from nikclayton/android-squeezer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
proguard.cfg
92 lines (74 loc) · 2.75 KB
/
proguard.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
# No sense in obfuscating names since the code is freely available,
# and it makes debugging a little tricker
-keepnames class uk.org.ngo.squeezer.** {
<methods>;
}
# Needed to support the reflection in SqueezerBaseItemView.
-keepattributes Signature
-keepclasseswithmembers class * {
native <methods>;
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}
# Strip out certain logging calls.
-assumenosideeffects class android.util.Log {
public static *** d(...);
public static *** v(...);
}
#ACRA specifics
# we need line numbers in our stack traces otherwise they are pretty useless
-keepattributes SourceFile,LineNumberTable
# ACRA needs "annotations" so add this.
-keepattributes *Annotation*
# keep this class so that logging will show 'ACRA' and not a obfuscated name like 'a'.
# Note: if you are removing log messages elsewhere in this file then this isn't necessary
-keep class org.acra.ACRA {
*;
}
# keep this around for some enums that ACRA needs
-keep class org.acra.ReportingInteractionMode {
*;
}
# keep this otherwise it is removed by ProGuard
-keep public class org.acra.ErrorReporter {
public void addCustomData(java.lang.String,java.lang.String);
}
# keep this otherwise it is removed by ProGuard
-keep public class org.acra.ErrorReporter {
public org.acra.ErrorReporter$ReportsSenderWorker handleSilentException(java.lang.Throwable);
}
-keep class android.support.v4.** { *; }
-dontwarn android.support.v4.app.*
-dontwarn android.support.v4.accessibilityservice.*
-dontwarn android.support.v4.os.*
-dontwarn android.support.v4.view.*
-dontwarn android.support.v4.view.accessibility.*
-dontwarn android.support.v4.widget.*