仅当从Google Play下载时,我们的应用才会崩溃。为什么?

时间:2019-06-20 21:17:42

标签: c# android unity3d crash

(统一)应用程序启动时发生崩溃,该崩溃仅在从Play商店下载该应用程序时出现。我进行了大量测试,即使使用空的Unity项目,也观察到此崩溃。

我在该应用上运行了Google Play游戏,Firebase和Admob,但是我尝试从该项目中删除所有插件,并且正如我所说,我尝试上传一个空的unity项目,并且它也崩溃了。 直接从apk文件安装的同一应用正常运行。

如果在安装后立即清除应用程序的存储空间,崩溃将消失。

崩溃发生在Android 9上,而不是在Android 5.1上。 如果我在Google Play控制台上使用其他项目加载了相同的应用程序,则不会发生崩溃(尝试过的空应用程序会因第一个playStore项目和相同的构建参数而崩溃)。

仅当我使用il2CPP进行编译时,才会出现此崩溃。不幸的是,我需要它具有64位版本。

编辑:因为我需要64位版本,所以我的基本构建是使用arm64v8和armV7架构完成的,并通过Android App Bundle发送到PlayStore,但是我只尝试了apk和armV7,同样崩溃...

所有这些都在PlayStore项目中使用封闭的Alpha进行了测试

这是日志:

2019-06-20 23:13:32.840 15157-15203/? E/CRASH: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000073a1529a10
2019-06-20 23:13:32.840 15157-15203/? E/CRASH: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2019-06-20 23:13:32.840 15157-15203/? E/CRASH: Build type 'Release', Scripting Backend 'il2cpp', CPU 'arm64-v8a'
2019-06-20 23:13:32.840 15157-15203/? E/CRASH: Build fingerprint: 'xiaomi/whyred/whyred:9/PKQ1.180904.001/V10.3.1.0.PEIMIXM:user/release-keys'
2019-06-20 23:13:32.840 15157-15203/? E/CRASH: Revision: '0'
2019-06-20 23:13:32.840 15157-15203/? E/CRASH: pid: 15157, tid: 15203, name: UnityMain  >>> com.company.app <<<
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x0   0000007170796768  x1   000000716eee2d38  x2   0000007170800000  x3   0000007170796400
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x4   00000071709b7000  x5   0000007170796480  x6   000000716eee2de8  x7   000000716eee2d58
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x8   00000000464c457f  x9   000000716ef06e18  x10  00000000001aaaf8  x11  0000000000001fff
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x12  000000000000001d  x13  000000716eb0a2b0  x14  aaaaaaaaaaaaaaab  x15  aaaaaaaaaaaaaaab
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x16  000000720eae31d8  x17  000000720e9f1f70  x18  0000000000000000  x19  00000071729a1da0
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x20  000000716db8fd84  x21  000000716f0ab000  x22  000000716eeda918  x23  000000716f0ab000
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x24  000000716f0ab000  x25  000000716f0ab000  x26  00000000000000f3  x27  000000716db8fd80
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     x28  000000000000045f  x29  00000071729a1e20  x30  000000716e021fec
2019-06-20 23:13:32.840 15157-15203/? E/CRASH:     sp   00000071729a1d90  pc   000000716e021fd8  pstate 0000000000000000

1 个答案:

答案 0 :(得分:0)

我一直遇到类似的问题,在android 9.0上启动时崩溃,但仅在从Google Play商店下载该应用程序时崩溃。就我而言,崩溃是由一个统一错误导致的,该错误将旧的IL2CPP文件备份到了新版本中。我通过在get current user: com.ibm.pim.context.Context::getCurrentUser() get company object: com.ibm.pim.organization.User::getCompany() get collection for all users: com.ibm.pim.organization.Company::getUsers() -->  com.ibm.pim.collection.PIMCollection<User> get iterator for collection: com.ibm.pim.collection.PIMCollection<User>::iterator() --> java.util.Iterator<User> iterate through all users: java.util.Iterator::hasNext() retrieve user object: java.util.Iterator::next() --> User get user ID: com.ibm.pim.organization.User::getId() get username: com.ibm.pim.organization.User::getUserName() store in HashMap or other caching mechanism 标签内的android清单文件中添加以下几行来解决此问题。

<Application>

报告的错误,更多信息和我上面提到的修复程序可以here

看到

团结论坛对SJWEESALS的全部赞扬对我有很大帮助。