Bug 1038534 - Don't let ProGuard discard (support) Fragments. r=nalexander
authorEric Edens <eedens@mozilla.com>
Tue, 15 Jul 2014 08:35:23 -0700
changeset 216115 3ef49ed42cadd5c055e9fdecad7dce22bf15d540
parent 216015 835e22069c1a2bf00c4d9a57bac4299d185d8acc
child 216116 4089f731a406d902fd9a911cd3e4785f4962ba80
push id515
push userraliiev@mozilla.com
push dateMon, 06 Oct 2014 12:51:51 +0000
treeherdermozilla-release@267c7a481bef [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersnalexander
bugs1038534
milestone33.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1038534 - Don't let ProGuard discard (support) Fragments. r=nalexander The presenting Fragments are those of the Search Activity; but in general, Fragments are referred to by class at runtime, so they must be preserved. The ProGuard system is not aware of Fragments referenced only in XML files, so we need to keep them around manually.
mobile/android/config/proguard.cfg
--- a/mobile/android/config/proguard.cfg
+++ b/mobile/android/config/proguard.cfg
@@ -14,16 +14,18 @@
 -keep public class * extends android.app.Service
 -keep public class * extends android.app.backup.BackupAgentHelper
 -keep public class * extends android.content.BroadcastReceiver
 -keep public class * extends android.content.ContentProvider
 -keep public class * extends android.preference.Preference
 -keep public class * extends org.mozilla.gecko.sync.syncadapter.SyncAdapter
 -keep class org.mozilla.gecko.sync.syncadapter.SyncAdapter
 
+-keep public class * extends android.support.v4.app.Fragment
+
 # Preserve all native method names and the names of their classes.
 -keepclasseswithmembernames class * {
     native <methods>;
 }
 
 -keepclasseswithmembers class * {
     public <init>(android.content.Context, android.util.AttributeSet, int);
 }