如果我直接将Android Studio的应用程序运行到我的智能手机,该应用程序可以正常运行,但如果在Play商店下载我的应用程序,该应用程序会停止并显示以下错误:
android.view.InflateException: Binary XML file line #25: Binary XML file line #25: Error inflating class android.support.design.widget.NavigationView
Binary XML file line #25: Error inflating class android.support.design.widget.NavigationView
Binary XML file line #17: Unable to find LayoutManager android.support.v7.widget.LinearLayoutManager
是的,有人能帮帮我吗?
谢谢。
编辑:工作改变年级 编译'com.android.support:design:23.1.0' 至 编译'com.android.support:design:23.1.1'
答案 0 :(得分:1)
我假设您与ProGuard遇到同样的问题,几个月前我几乎秃顶了。尝试将此添加到您的proguard规则文件中:
# https://code.google.com/p/android/issues/detail?id=78377
# https://code.google.com/p/android/issues/detail?id=78377#c188
#-keep class !android.support.v7.internal.view.menu.**,** { *; }
# Apparently this was messed up again in v23 and explicitly specifying MenuBuilder is now required
-keep class !android.support.v7.internal.view.menu.*MenuBuilder* { *; }
-keep class !android.support.v7.view.menu.**,!android.support.design.internal.NavigationMenu,!android.support.design.internal.NavigationMenuPresenter,!android.support.design.internal.NavigationSubMenu,**
我注意到我发现的针对v21问题的错误报告(这也导致了针对v23问题的解决方案)
答案 1 :(得分:0)
如果你正在使用android studio,那么首先清理构建,然后点击generate signed apk并将其发送到Play商店。较新版本的android studio不允许直接在设备上运行apk
答案 2 :(得分:0)
在将您的应用上传到Play商店之前,请测试完全相同的工件(.apk
文件)。我建议你使用gradle命令行来执行此操作。
通过运行./gradlew clean build
,确保您有可释放的apk,将该版本推送到设备adb install app/build/outputs/apk/app-release.apk
),如果工作正常,则上传该文件。路径可能与您完全不同,但这就是想法。
默认情况下,构建过程会为您的应用创建debug
和release
个版本,默认情况下,工作室会在您的设备上安装debug
版本,但您还应该试用{{ 1}}一个,那就是你上传的那个。
答案 3 :(得分:0)
确保在Google Play上传之前生成已签名的apk。按照以下步骤生成签名的apk: 第1步转到构建>生成已签名的APK>下一步(选择的模块将是您的模块,通常称为" app")
第2步点击“创建新
”第3步基本上,请填写包含所需详细信息的表单。
第4步点击“下一步”,然后选择“发布”。
它会起作用