嗨我目前在应用程序启动时或介绍视频后崩溃的应用程序上遇到问题。
我正在与Unity3D和Spine合作为Android和IOS创建2D游戏。
我到处寻找这个问题,这似乎是一个记忆问题。
我已经尝试了几件事来解决这个问题。
注意:此应用程序可以在IOS上正常运行。
详细
-Unity3D 5.3.3f1
-Spine2D插件
-Google Analytics Plugin v3
-Android
我试图改变的事情
- 将unity graphics api更改为OpenGLES2而不是OpenGLES3
- 尝试了不同设备的不同纹理压缩(适用于某些设备)
- 禁用动态批处理
- 在预装资产标签中添加了重型预制件。
堆栈跟踪
java.lang.Error: FATAL EXCEPTION [UnityMain]
Unity version : 5.3.3f1
Device model : HTC HTC One
Device fingerprint: htc/htc_europe/m7:5.0.2/LRX22G/USER/release-keys
Caused by: java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000020
Build fingerprint: 'htc/htc_europe/m7:5.0.2/LRX22G/USER/release-keys'
Revision: '3'
pid: 2502, tid: 2563, name: UnityMain >>> EDITED_BUNDLEIDENTIFIER <<<
r0 00000000 r1 a1c11ec8 r2 ffffeff0 r3 00000000
r4 ba072030 r5 00000000 r6 ba06f580 r7 00000000
r8 a1c11d14 r9 00000001 sl 00000000 fp a1c11d18
ip a0d49fd0 sp a0d49fb0 lr a1076230 pc a0e40e20 cpsr 35312e34
at libunity.000f5e20(Native Method)
at libunity.0032b22c(Native Method)
at libunity.000f2918(Native Method)
at libunity.00402ae8(Native Method)
at libunity.00402b2c(Native Method)
at libunity.007c3640(Native Method)
at Unknown.00004c04(Unknown Source)
at Resources.Load(Native Method)
at ResourceRequest.get_asset(<0x00024>:36)
at ResourceHandle`1.get_Value(<0x0004f>:79)
at ResourceHandle`1.get_IsReady(<0x0001b>:27)
at <InstantiateNode>c__Iterator1B.MoveNext(<0x0044f>:1103)
at <Module>.runtime_invoke_bool__this__(Native Method)
at MonoBehaviour.StartCoroutine_Auto(Native Method)
at MonoBehaviour.StartCoroutine(<0x00024>:36)
at <InstantiateNodeAtNextFrame>c__Iterator1D.MoveNext(<0x00083>:131)
at <Module>.runtime_invoke_bool__this__(Native Method)
at libmono.00021ccb(Native Method)
at libmono.mono_runtime_invoke(mono_runtime_invoke:136)
at libunity.003e0018(Native Method)
at libunity.003dffa0(Native Method)
at libunity.003434b8(Native Method)
at libunity.001809b0(Native Method)
at libunity.00387560(Native Method)
at libunity.004cff7c(Native Method)
at libunity.004d51b0(Native Method)
at data@app@com.000df2e3(Native Method)
答案 0 :(得分:1)
我们发现这个问题是由同时加载的大纹理引起的。
删除这些大纹理后,游戏开始没有任何问题。
所以对于遇到同样问题的每个人。
检查大纹理并检查它们何时被加载并尝试加载。
答案 1 :(得分:0)
我们发现这个问题是由于在两个不同的函数上同时使用了两次 PlayerPrefs.Save() 引起的,而且我们当时使用了 File.write()。 当我们在不同的时间保存和写入文件时,这个问题就解决了。