我刚刚在Google Play上构建并部署了一个应用程序。当我通过Android Studio运行它时,它运行得很好,但现在当我从Google Play下载它时,它崩溃了。因为这是我第一次,我甚至不知道如何查看从Google Play下载的应用程序的崩溃报告/堆栈跟踪。我感谢所有的帮助。
更新
所以我得到了APK的堆栈跟踪。它告诉我我的TopImageFragment.java
类无法创建我的MemeViewModel.java
类。我不知道为什么它会出现这个错误。一切正常。看起来proGuard确实在逐步淘汰一个重要的类:
2019-04-18 00:46:32.062 8099-8099/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.ozbek.onur.memegenerator, PID: 8099
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ozbek.onur.memegenerator/com.ozbek.onur.memegenerator.MainActivity}: java.lang.RuntimeException: Cannot create an instance of class com.ozbek.onur.memegenerator.MemeViewModel
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2853)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2928)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1609)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6703)
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:769)
Caused by: java.lang.RuntimeException: Cannot create an instance of class com.ozbek.onur.memegenerator.MemeViewModel
at android.arch.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.java:155)
at android.arch.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.java:210)
at android.arch.lifecycle.ViewModelProvider.get(ViewModelProvider.java:134)
at android.arch.lifecycle.ViewModelProvider.get(ViewModelProvider.java:102)
at com.ozbek.onur.memegenerator.TopImageFragment.onActivityCreated(TopImageFragment.java:89)
我的应用程序遇到了同样的问题,它是ProGuard杀死的。因为除非另有说明,否则ProGuard会重命名所有类。所以,在您的情况下,您必须添加
@保持
类名称MemeViewModel之前的注释。
实例
@Keep
class MemeViewModel{
//
//
}
检查您是否有任何没有访问修饰符的java文件。根据我的经验,仅仅声明一个没有公共或私有修饰符的类就会导致这个问题。
发生这种问题通常是因为您部署到Google Play的应用程序是发布版本,而proGuard缩小了您的应用程序并删除了它不应该拥有的类。当您在Android Studio中构建时,它是一个不会缩小的调试版本。这就是为什么您只能从Google Play看到崩溃的原因。
在上传到Google Play之前,请在设备上测试您的发布APK文件,并查看logcat中的错误。这应该会告诉你哪个类被错误删除了,你可以通过指定自定义proguard规则并重试直到应用程序停止崩溃来纠正这个错误。然后,当你上传到谷歌游戏,你应该是好的。
您还可以通过更改生成来在调试生成中启用proguard。gradle文件。然后,当您运行Android Studio时,您应该会看到与通过Google Play看到的相同错误。
另一种选择是,您可以在发布版本中禁用proGuard/缩小。但是不建议这样做,因为您的应用程序会比它需要的大。
我最近把一个应用程序上传到谷歌play商店,一切正常。我下载了它,并能够注册一个新用户。加载应用程序的主要活动时,应用程序崩溃。 这是我得到的stacktrace: 以前可能有人问过这个问题,但我已经研究了很多次,没有找到解决这个问题的方法。任何帮助都将不胜感激。该应用程序是使用android java和firebase创建的。
我在(unity)应用程序启动期间发生崩溃,只有从Play Store下载应用程序时才会出现。我进行了大量测试,即使在一个空的Unity项目中,我也观察到了这次崩溃。 我有谷歌游戏Firebase 如果我在安装后立即清除应用的存储,崩溃就会消失。 崩溃发生在Android9上,但不是在Android5.1上。如果我在google play控制台上使用不同的项目加载相同的应用程序,则不会发生崩溃(尝
我最近尝试为ListView创建一个自定义行。我试图从教程中完成它,但当我试图更改它时,它崩溃了,以便行与我希望我的应用程序显示的内容一起工作。错误读出在底部。 --------homescreen.xml--------------------- ----------读出错误--------------------------------------------- 04-07 14:06:40.
在我的应用程序中,我在回收商视图中显示项目列表。我为回收商视图中的每个项目创建了两个功能编辑和删除。使用此应用程序,用户可以创建任务列表,可以编辑项目,也可以从回收器视图中删除项目。现在,如果我单击“编辑”,它就可以完美地工作。但是,如果我单击删除选项,则应用程序崩溃,并且消息数组索引在adaper类中因rance异常而崩溃。 这是我的适配器代码。我还提到了 代码中的行 ,其中我遇到了应用程序崩溃
我尝试了太多东西,但每次按下“计算”(hesapla)按钮后,应用程序都会崩溃。 例如: 我应该写什么/做什么? 有一只原木猫; 通用域名格式。ertugrulguleryuzgmail。sdunothesaplama E/AndroidRuntime:致命异常:主java。lang.NumberFormatException:无效的int:“”在java上。整型。java上的invalidit(