适用于v7支持库ActionBar的Android Proguard配置

时间:2013-08-17 14:58:54

标签: android proguard android-support-library

我正在使用v7支持库在Android 2.x上显示ActionBar。它运行良好但我必须在启用Proguard后修复一些类/方法未找到的错误。

是否有关于需要保留哪些类的指南?

到目前为止,我有这些:

-keep public class android.support.v7.internal.widget.ActionBarContainer
-keep class android.support.v7.internal.widget.ActionBarView$HomeView
-keep public class android.support.v7.internal.widget.ActionBarContextView

它似乎现在可以正常工作,但由于在某些XML文件中引用了其他一些所谓的内部类,我并不确信它会在某个阶段崩溃。

3 个答案:

答案 0 :(得分:51)

我解决了它:

-dontwarn android.support.v7.**
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }

答案 1 :(得分:4)

我使用它,有点类似于v4版本的建议:

-keep class android.support.v7.internal.** { *; }
-keep interface android.support.v7.internal.** { *; }

答案 2 :(得分:0)

我从Android Proguard Snippet那里得到了

-keep public class android.support.v7.widget.** { *; }
-keep public class android.support.v7.internal.widget.** { *; }
-keep public class android.support.v7.internal.view.menu.** { *; }

-keep public class * extends android.support.v4.view.ActionProvider {
    public <init>(android.content.Context);
}

希望它会起作用。