Android 视图';如果启用了proguard,则单击“在ViewPager/Fragment中不工作”
我的活动中有一个Android 视图';如果启用了proguard,则单击“在ViewPager/Fragment中不工作”,android,android-fragments,android-viewpager,proguard,onclicklistener,Android,Android Fragments,Android Viewpager,Proguard,Onclicklistener,我的活动中有一个ViewPager,它通过FragmentStatePagerAdapter显示片段。在片段中,有一些来自xml的视图和一些动态创建的视图。从xml I开始时,使用ButterKnife处理单击事件并生成视图。我只是使用代码中的setOnClickListener(newview.OnClickListener…)。 它正在工作,但当我仅在此处(ViewPager.Fragments.View)启用ProGuard时,单击“不工作”,但在应用程序中的任何其他位置单击“是” 我的格
ViewPager
,它通过FragmentStatePagerAdapter
显示片段。在片段中,有一些来自xml的视图和一些动态创建的视图。从xml I开始时,使用ButterKnife
处理单击事件并生成视图。我只是使用代码中的setOnClickListener(newview.OnClickListener…
)。
它正在工作,但当我仅在此处(ViewPager.Fragments.View)启用ProGuard
时,单击“不工作”,但在应用程序中的任何其他位置单击“是”
我的格拉德尔:
release {
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
proguard-rules.pro:
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable
-dontwarn butterknife.internal.**
-keep class **$$ViewInjector { *; }
-keepnames class * { @butterknife.InjectView *;}
-keep class com.parse.** { *; }
-dontwarn com.parse.**
-dontwarn com.squareup.picasso.**
-keepclassmembers class * extends android.app.Activity {
public void *(android.view.View);
}
-keep class android.support.v4.** { *; }
什么是正确的ProGuard设置 使用以下命令:
-libraryjars libs/android-support-v4.jar
-dontwarn android.support.**
-keep class android.support.v4.** { *; }
-keep interface android.support.v4.app.** { *; }
-keepattributes *Annotation*