Android 充气异常仅处于释放模式

Android 充气异常仅处于释放模式,android,Android,最近,我使用了uk.co.chrisjenx.书法库为我的视图设置字体。在调试模式下,一切正常,但在发布模式下,通过单击任何活动,它具有充气异常。我需要一些帮助来处理这件事。 这是我的程序规则: -keep class butterknife.** { *; } -dontwarn butterknife.internal.** -keep class **$$ViewBinder { *; } -keepclasseswithmembernames class * { @bu

最近,我使用了uk.co.chrisjenx.书法库为我的视图设置字体。在调试模式下,一切正常,但在发布模式下,通过单击任何活动,它具有充气异常。我需要一些帮助来处理这件事。 这是我的程序规则:

    -keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewBinder { *; }

-keepclasseswithmembernames class * {
    @butterknife.* <fields>;
}

-keepclasseswithmembernames class * {
    @butterknife.* <methods>;
}

-dontwarn com.squareup.okhttp.**
-keep class android.**
-dontwarn android.**
-dontwarn com.google.android.gms.**
-保留类butterknife.*{*;}
-dontwarn butterknife,内部**
-保持类**$$ViewBinder{*;}
-KeepClassSwithMemberNames类*{
@黄油刀*;
}
-KeepClassSwithMemberNames类*{
@黄油刀*;
}
-dontwarn com.squareup.okhttp**
-保持课堂秩序**
-dontwarn安卓**
-dontwarn com.google.android.gms**
这是Android Studio日志:

E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: com.matingdz.InsDLFreeGooglePlay, PID: 4592
                  java.lang.RuntimeException: Unable to start activity ComponentInfo{com.matingdz.InsDLFreeGooglePlay/com.matingdz.InsDLFreeGooglePlay.DlStory}: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class Button
                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817)
                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892)
                      at android.app.ActivityThread.-wrap11(Unknown Source:0)
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593)
                      at android.os.Handler.dispatchMessage(Handler.java:105)
                      at android.os.Looper.loop(Looper.java:164)
                      at android.app.ActivityThread.main(ActivityThread.java:6541)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
                   Caused by: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class Button
                   Caused by: android.view.InflateException: Binary XML file line #0: Error inflating class Button
                   Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.AppCompatBackgroundHelper.a()' on a null object reference
                      at android.support.v7.widget.AppCompatButton.setBackgroundDrawable(Unknown Source:5)
                      at android.view.View.setBackground(View.java:20326)
                      at android.view.View.<init>(View.java:5200)
                      at android.widget.TextView.<init>(TextView.java:824)
                      at android.widget.Button.<init>(Button.java:172)
                      at android.widget.Button.<init>(Button.java:147)
                      at android.support.v7.widget.AppCompatButton.<init>(Unknown Source:4)
                      at android.support.v7.widget.AppCompatButton.<init>(Unknown Source:3)
                      at android.support.v7.app.AppCompatViewInflater.a(Unknown Source:284)
                      at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(Unknown Source:51)
                      at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$WrapperFactory2.onCreateView(Unknown Source:4)
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:772)
                      at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
                      at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
                      at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
                      at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(Unknown Source:3)
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
                      at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
                      at android.support.v7.app.AppCompatDelegateImplV9.b(Unknown Source:23)
                      at android.support.v7.app.AppCompatActivity.setContentView(Unknown Source:4)
                      at com.matingdz.InsDLFreeGooglePlay.DlStory.onCreate(Unknown Source:7)
                      at android.app.Activity.performCreate(Activity.java:6975)
                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)
E/AndroidRuntime:致命异常:主
进程:com.matingdz.InsDLFreeGooglePlay,PID:4592
java.lang.RuntimeException:无法启动活动组件信息{com.matingdz.InsDLFreeGooglePlay/com.matingdz.InsDLFreeGooglePlay.DlStory}:android.view.InflateException:二进制XML文件行#0:二进制XML文件行#0:膨胀类按钮时出错
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817)上
位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892)
位于android.app.ActivityThread.-wrap11(未知来源:0)
在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593)
位于android.os.Handler.dispatchMessage(Handler.java:105)
位于android.os.Looper.loop(Looper.java:164)
位于android.app.ActivityThread.main(ActivityThread.java:6541)
位于java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.Zygote$MethodAndArgsCaller.run上(Zygote.java:240)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
原因:android.view.InflateException:二进制XML文件行#0:二进制XML文件行#0:膨胀类按钮时出错
原因:android.view.InflateException:二进制XML文件行#0:膨胀类按钮时出错
原因:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“void android.support.v7.widget.AppCompatBackgroundHelper.a()
位于android.support.v7.widget.AppCompatButton.setBackgroundDrawable(未知来源:5)
在android.view.view.setBackground(view.java:20326)
在android.view.view.(view.java:5200)
位于android.widget.TextView。(TextView.java:824)
在android.widget.Button.(Button.java:172)
在android.widget.Button.(Button.java:147)
位于android.support.v7.widget.AppCompatButton。(未知来源:4)
位于android.support.v7.widget.AppCompatButton。(未知来源:3)
位于android.support.v7.app.AppCompatViewInflater.a(未知来源:284)
在android.support.v7.app.AppCompateDelegateImplv9.onCreateView(未知来源:51)
在uk.co.chrisjenx.phraphic.CalligraphyLayoutFlater$WrapperFactory2.onCreateView(未知来源:4)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:772)
位于android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
位于android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
位于android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
在android.view.LayoutInflater.充气(LayoutInflater.java:515)
在uk.co.chrisjenx.书法.书法.充气(未知来源:3)
在android.view.LayoutInflater.充气(LayoutInflater.java:423)
在android.view.LayoutInflater.inflate(LayoutInflater.java:374)
在android.support.v7.app.AppCompateDelegateImplv9.b(未知来源:23)
位于android.support.v7.app.AppCompatActivity.setContentView(未知来源:4)
位于com.matingdz.InsDLFreeGooglePlay.DlStory.onCreate(未知来源:7)
位于android.app.Activity.performCreate(Activity.java:6975)
位于android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)

尝试将此规则添加到Proguard规则文件中:

-keepclassmembernames class android.support.v7.widget.** { *; }

我不确定这是否是最好的解决方案,但它为我带来了好处。

尝试将此规则添加到您的Proguard规则文件中:

-keepclassmembernames class android.support.v7.widget.** { *; }

我不确定这是否是最好的解决方案,但它为我做到了。

欢迎来到StackOverflow。添加关于该规则作用的解释将有助于改进您的答案。欢迎使用StackOverflow。添加关于该规则作用的解释将有助于改进您的答案。