我的应用程序从 Android Studio 安装时运行良好,但一旦我安装并签署 APK 到任何设备,该应用程序将无法运行。以下是来自 Google Play 开发者控制台提供的 friend 设备的故障转储。显然它与布局有关,但我不确定是什么导致了它在发布版本中而不是在测试中。当我在我的设备上测试它并且在 android studio 中没有错误时,没有出现错误。我对开发还很陌生,所以我不确定该怎么做。任何帮助或建议将不胜感激。
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.j.a.p/com.j.a.p.MainActivity}: android.view.InflateException: Binary XML file line #11: Binary XML file line #11: Error inflating class android.support.design.widget.NavigationView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3253)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3349)
at android.app.ActivityThread.access$1100(ActivityThread.java:221)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7224)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by: android.view.InflateException: Binary XML file line #11: Binary XML file line #11: Error inflating class android.support.design.widget.NavigationView
at android.view.LayoutInflater.inflate(LayoutInflater.java:551)
at android.view.LayoutInflater.inflate(LayoutInflater.java:429)
at android.view.LayoutInflater.inflate(LayoutInflater.java:380)
at android.support.v7.a.w.a(SourceFile:257)
at android.support.v7.a.p.setContentView(SourceFile:109)
at com.j.a.p.MainActivity.onCreate(SourceFile:31)
at android.app.Activity.performCreate(Activity.java:6876)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3206)
... 9 more
Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class android.support.design.widget.NavigationView
at android.view.LayoutInflater.createView(LayoutInflater.java:657)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:847)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:810)
at android.view.LayoutInflater.inflate(LayoutInflater.java:527)
... 17 more
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance(Native Method)
at android.view.LayoutInflater.createView(LayoutInflater.java:631)
... 22 more
Caused by: android.view.InflateException: Binary XML file line #17: Binary XML file line #17: Error inflating class android.support.design.internal.NavigationMenuView
at android.view.LayoutInflater.inflate(LayoutInflater.java:551)
at android.view.LayoutInflater.inflate(LayoutInflater.java:429)
at android.support.design.internal.c.a(SourceFile:97)
at android.support.design.widget.NavigationView.<init>(SourceFile:165)
at android.support.design.widget.NavigationView.<init>(SourceFile:94)
... 24 more
Caused by: android.view.InflateException: Binary XML file line #17: Error inflating class android.support.design.internal.NavigationMenuView
at android.view.LayoutInflater.createView(LayoutInflater.java:657)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:716)
at android.view.LayoutInflater.inflate(LayoutInflater.java:498)
... 28 more
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance(Native Method)
at android.view.LayoutInflater.createView(LayoutInflater.java:631)
... 31 more
Caused by: java.lang.IllegalStateException: Binary XML file line #17: Error creating LayoutManager android.support.v7.widget.LinearLayoutManager
at android.support.v7.widget.RecyclerView.a(SourceFile:540)
at android.support.v7.widget.RecyclerView.<init>(SourceFile:485)
at android.support.design.internal.NavigationMenuView.<init>(SourceFile:39)
at android.support.design.internal.NavigationMenuView.<init>(SourceFile:35)
... 33 more
Caused by: java.lang.NoSuchMethodException: <init> []
at java.lang.Class.getConstructor(Class.java:528)
at java.lang.Class.getConstructor(Class.java:492)
at android.support.v7.widget.RecyclerView.a(SourceFile:537)
... 36 more
Caused by: java.lang.NoSuchMethodException: <init> [class android.content.Context, interface android.util.AttributeSet, int, int]
at java.lang.Class.getConstructor(Class.java:528)
at java.lang.Class.getConstructor(Class.java:492)
at android.support.v7.widget.RecyclerView.a(SourceFile:532)
... 36 more
最佳答案
尝试删除项目中的 proguard 目录在任何 proguard 文件上,例如 proguard-android.txt 或 proguard-rules.pro。
第二个选项 - 在你的 build.gradle 文件中尝试
buildTypes {
debug {
minifyEnabled false
}
release {
minifyEnabled false
}
}
使用任何选项或两者的组合
关于android - 应用程序从已签名的 APK 而不是 Android Studio 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39694831/