Search Unity

Crashes on Android after migrating to Unity 2018.3 when use AndroidJavaProxy class

Discussion in 'Android' started by IceCatGames, Feb 11, 2019.

  1. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    I've migrate with my project from 2017.4 to 2018.3.2f1 about month ago. All work correct, so I prepared new update and released to Google Play. After that I started to receive a lot of crash reports. Here’s few examples:

    java.lang.Error: FATAL EXCEPTION [Thread-191]
    Unity version : 2018.3.2f1
    Device model : samsung SM-A520F
    Device fingerprint: samsung/a5y17ltexx/a5y17lte:8.0.0/R16NW/A520FXXU4CRF1:user/release-keys
    Caused by
    at com.unity3d.player.ReflectionHelper.nativeProxyInvoke (Native Method)
    at com.unity3d.player.ReflectionHelper.a (Unknown Source)
    at com.unity3d.player.ReflectionHelper$1.invoke (Unknown Source:6)
    at java.lang.reflect.Proxy.invoke (Proxy.java:913)
    at $Proxy8.onAdFailedToLoad (Unknown Source)
    at com.google.unity.ads.RewardBasedVideo$1$1$2.run (RewardBasedVideo.java:89)
    at java.lang.Thread.run (Thread.java:764)

    java.lang.Error: FATAL EXCEPTION [main]
    Unity version : 2018.3.2f1
    Device model : NOMU_S30 S30
    Device fingerprint: alps/s12v55_mle_3m_nomu/s12v55_mle_3m_nomu:6.0/MRA58K/1493209127:user/release-keys
    Caused by
    at com.unity3d.player.ReflectionHelper.nativeProxyInvoke (Native Method)
    at com.unity3d.player.ReflectionHelper.a (Unknown Source)
    at com.unity3d.player.ReflectionHelper$1.invoke (Unknown Source)
    at java.lang.reflect.Proxy.invoke (Proxy.java:393)
    at $Proxy9.onUnityAdsError (Unknown Source)
    at com.unity3d.ads.configuration.InitializeThread$InitializeStateError$1.run (InitializeThread.java:420)
    at android.os.Handler.handleCallback (Handler.java:815)
    at android.os.Handler.dispatchMessage (Handler.java:104)
    at android.os.Looper.loop (Looper.java:207)
    at android.app.ActivityThread.main (ActivityThread.java:5697)
    at java.lang.reflect.Method.invoke (Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:905)
    at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:766)

    java.lang.UnsatisfiedLinkError:
    at com.unity3d.player.ReflectionHelper.nativeProxyInvoke (Native Method)
    at com.unity3d.player.ReflectionHelper.a (Unknown Source)
    at com.unity3d.player.ReflectionHelper$1.invoke (Unknown Source:6)
    at java.lang.reflect.Proxy.invoke (Proxy.java:913)
    at $Proxy11.onAdFailedToLoad (Unknown Source)
    at com.google.unity.ads.RewardBasedVideo$1$1$2.run (RewardBasedVideo.java:89)
    at java.lang.Thread.run (Thread.java:784)

    These crashes includes problems with Google Ads and Unity Ads both. I didn’t update ad plugins after migration, so it’s not a cause of problem. Also, I found few similar reports from other developers:
    https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/game-engines/lsbh6MEaY3M
    https://github.com/googleads/googleads-mobile-unity/issues (bugs #841-#846)

    All of these problems have few similar points:
    • they all related with $Proxy class
    • they all on Unity 2018.3
    I’ve checked changelog and found that Unity devs made two bug fixes in Unity 2018.3 related with AndroidJavaProxy class. I absolutely sure, that it’s a cause of these problems, because no any similar error reports for Unity 2018.2 or earlier. Seems they add new bug into this class during these fixes.

    I already sent bug report, but not sure how much time will take preparing update with fix. Hope any workaround exists.
     
    Khonkaengame and toberr like this.
  2. mikaisomaa

    mikaisomaa

    Unity Technologies

    Joined:
    Sep 14, 2015
    Posts:
    365
    Are you using il2cpp?

    Could it relate to stripping the reflected parts of the code?

    Can you try removing link.xml from the project and building again?
     
  3. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    Hello,
    I'm using Mono backend. Stripping is disabled.
    By the way, I'm also using Chartboost Ads in my project. No crashes from that network. I've just analyzed their code - they don't use AndroidJavaProxy, they used UnitySendMessage.
     
  4. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    I've noticed the same thing since upgrading to Unity 2018.3.5f1. I'd also updated Ads to version 2.3.2, which I didn't realise wasn't verified. So I've just released another build with ads Version 2.0.8 (verified) and I'll monitor the crashes over the next few days.

    I'm using mono backend.

    Edit: Still getting crashes with Ads 2.08. I'm going to try using Monetization 3.01 next.
     
    Last edited: Feb 16, 2019
  5. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    We have the same thing.
    We tried the Unity 2018.3.1, 2018.3.2,2018.3.3,2018.3.4,2018.3.5, 2018.3.6

    also tried unity purchasing 2.0.4 and 2.0.5

    we managed to reduce the number of failures from advertising by rolling back from Admob 3.15 to 3.14 but
    there are still too lot of crashes like:

    java.lang.Error

    $Proxy7.OnProductsRetrieved

    java.lang.Error: FATAL EXCEPTION [pool-3-thread-1] Unity version : 2018.3.6f1 Device model : samsung SM-T285 Device fingerprint: samsung/gtexsltexx/gtexslte:5.1.1/LMY47V/T285XXU0ARB1:user/release-keys Caused by

    at com.unity3d.player.ReflectionHelper.nativeProxyInvoke (Native Method)

    at com.unity3d.player.ReflectionHelper.a (Unknown Source)

    at com.unity3d.player.ReflectionHelper$1.invoke (Unknown Source)

    at java.lang.reflect.Proxy.invoke (Proxy.java:397)

    at $Proxy7.OnProductsRetrieved (Unknown Source)

    at com.unity.purchasing.common.UnityPurchasing.OnProductsRetrieved (UnityPurchasing.java:24)

    at com.unity.purchasing.googleplay.GooglePlayPurchasing.NotifyUnityOfProducts (GooglePlayPurchasing.java:572)

    at com.unity.purchasing.googleplay.GooglePlayPurchasing.access$1000 (GooglePlayPurchasing.java:43)

    at com.unity.purchasing.googleplay.GooglePlayPurchasing$5.onQueryInventoryFinished (GooglePlayPurchasing.java:531)

    at com.unity.purchasing.googleplay.IabHelper$4.workWith (IabHelper.java:862)

    at com.unity.purchasing.googleplay.BillingServiceManager$2.run (BillingServiceManager.java:146)

    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1112)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:587)

    at java.lang.Thread.run (Thread.java:818)

    And we have no idea what to do :(((((
     
  6. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    Seems just wait a fix from Unity. As I wrote, they made two fixes related with this class in 2018.3. They have all information for quick repair that class.
     
    Last edited: Feb 17, 2019
  7. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    After 2 days and with a partial rollout to 5k of my app's users, I haven't had a single $Proxy crash using Ads version 3.01 and the Monetization namespace to show unity interstitial ads (rewarded and skippable). So that looks very much like it's solved the problem I was having.

    Now if only I can find out how to avoid the occasional signal 5 (SIGTRAP), code 1 (TRAP_BRKPT) crash I will be practically crash free!
     
  8. mikaisomaa

    mikaisomaa

    Unity Technologies

    Joined:
    Sep 14, 2015
    Posts:
    365
    The crash reporting service In your UnityConnectSettings.asset -file - do you have CrashReportingService enabled? If so, please try setting "enabled : 0" and let me know if this helps.
     
    KepleriansTeam likes this.
  9. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    Thank you so much! Yes, it's enabled, we will try it!
    Maybe you can give us some advice with one more very very often crash


    java.lang.Error

    com.unity3d.player.UnityPlayer.nativeRestartActivityIndicator

    java.lang.Error: FATAL EXCEPTION [main] Unity version : 2018.3.6f1 Device model : samsung SM-G930F Device fingerprint: samsung/heroltexx/herolte:8.0.0/R16NW/G930FXXU3ERKH:user/release-keys Caused by

    at com.unity3d.player.UnityPlayer.nativeRestartActivityIndicator (Native Method)

    at com.unity3d.player.UnityPlayer.resume (Unknown Source:27)

    at com.unity3d.player.UnityPlayerActivity.onResume (Unknown Source:5)

    at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1361)

    at android.app.Activity.performResume (Activity.java:7361)

    at android.app.ActivityThread.performResumeActivity (ActivityThread.java:3765)

    at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:3830)

    at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1746)

    at android.os.Handler.dispatchMessage (Handler.java:105)

    at android.os.Looper.loop (Looper.java:164)

    at android.app.ActivityThread.main (ActivityThread.java:6944)

    at java.lang.reflect.Method.invoke (Native Method)

    at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)

    at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374)
     
  10. xsasoftware

    xsasoftware

    Joined:
    Sep 6, 2017
    Posts:
    18
    I have the same errors. I subscribe here.
     
  11. FinalDaniel

    FinalDaniel

    Joined:
    Mar 29, 2017
    Posts:
    12
    I'm also getting these errors on every pre-launch report from googleplay. ~20% of devices have FATAL EXCEPTION errors related to unity purchasing or unity adverts ( java.lang.UnsatisfiedLinkError )
     
    ckaroun likes this.
  12. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    Update: after a couple more days and rolling out to more users, the crash has started to reappear :(

    With no sign of a fix, I think I'll have to remove Unity ads, for the time being at least.
     
  13. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    Yes, seems it's only fix. Unfortunatelly, this bug sometimes affects Unity IAP (I see crashes related with OnProductsRetrieved)
     
  14. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    Yes I've noticed that too, in another app of mine that uses Unity IAP. Fortunately this app uses a different IAP solution so is unaffected by that crash.

    Shame about the ads though, because the earnings were pretty good and I don't know if I'll get as much from AdMob.
     
  15. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    Bad news for you - this bug affects Admob also. As I wrote in first post, it's not related with code of ad networks, it's related with Unity class (AndroidJavaProxy), which a lot of networks used for working with native part of plugin. So for me I receive similar crashes from Admob and Unity Ads both.
     
  16. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    Ah, that sucks! :(

    Looks like I'll have to move back to Unity 2018.2 then. Bit of a pain because I added some new features to the app after the upgrade to 2018.3, and I'll have to re-implement them in the earlier version.
     
  17. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    By the way, did you try to disable Crash reporter, as recommended @mikaisomaa ?
     
  18. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    I have, but I haven't released a version with that disabled yet. Have you tried it and if so have you noticed any difference?
     
  19. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    we will release tomorrow, i'll write the results.
     
    Munchy2007 likes this.
  20. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    I've just released a version with the crash reporter disabled too. I'll post the results here in a few days.
     
  21. dominykasm

    dominykasm

    Unity Technologies

    Joined:
    May 27, 2018
    Posts:
    70
    Hey, could someone who's facing the issue report a bug and attach a project which reproduces the issue?
     
  22. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    The problem for me is that I can't reproduce it on any of my test devices. It only becomes apparent it's a problem once it's installed on a few thousand users' devices and then the number of this crash starts to ramp up above the bad behaviour threshold.

    However, I released an update 3 days ago with crash reporting disabled as suggested above, and I've yet to see the proxy error so far. Previously I would have expected to see the crashes start to appear by this point.
     
    Last edited: Feb 23, 2019
  23. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    we still see a bunch of errors
     
  24. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    How to do it?
    we are ready to provide any data :(
    2 main crashes are:
    Samsung Galaxy J6 (j6lte), Android 8.0
    Сообщить о проблеме 1

    java.lang.Error: FATAL EXCEPTION [pool-1-thread-1] Unity version : 2018.3.6f1 Device model : samsung SM-J600GT Device fingerprint: samsung/j6ltedtvvj/j6lte:8.0.0/R16NW/J600GTVJS3ARL1:user/release-keys Caused by

    at com.unity3d.player.ReflectionHelper.nativeProxyInvoke (Native Method)

    at com.unity3d.player.ReflectionHelper.a (Unknown Source)

    at com.unity3d.player.ReflectionHelper$1.invoke (Unknown Source:6)

    at java.lang.reflect.Proxy.invoke (Proxy.java:913)

    at $Proxy7.OnProductsRetrieved (Unknown Source)

    at com.unity.purchasing.common.UnityPurchasing.OnProductsRetrieved (UnityPurchasing.java:24)

    at com.unity.purchasing.googleplay.GooglePlayPurchasing.NotifyUnityOfProducts (GooglePlayPurchasing.java:572)

    at com.unity.purchasing.googleplay.GooglePlayPurchasing.access$1000 (GooglePlayPurchasing.java:43)

    at com.unity.purchasing.googleplay.GooglePlayPurchasing$5.onQueryInventoryFinished (GooglePlayPurchasing.java:531)

    at com.unity.purchasing.googleplay.IabHelper$4.workWith (IabHelper.java:862)

    at com.unity.purchasing.googleplay.BillingServiceManager$2.run (BillingServiceManager.java:146)

    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1162)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:636)

    at java.lang.Thread.run (Thread.java:764)



    Infinix Infinix NOTE 5 (Infinix-X604_sprout), Android 8.1

    java.lang.Error: FATAL EXCEPTION [main] Unity version : 2018.3.6f1 Device model : INFINIX MOBILITY LIMITED Infinix X604 Device fingerprint: Infinix/H633IJL/Infinix-X604_sprout:8.1.0/O11019/IJL-181218V248:user/release-keys Caused by

    at com.unity3d.player.UnityPlayer.nativeRestartActivityIndicator (Native Method)

    at com.unity3d.player.UnityPlayer.resume (Unknown Source:27)

    at com.unity3d.player.UnityPlayerActivity.onResume (Unknown Source:5)

    at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1355)

    at android.app.Activity.performResume (Activity.java:7131)

    at android.app.ActivityThread.performResumeActivity (ActivityThread.java:3583)

    at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:3648)

    at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1662)

    at android.os.Handler.dispatchMessage (Handler.java:106)

    at android.os.Looper.loop (Looper.java:164)

    at android.app.ActivityThread.main (ActivityThread.java:6523)

    at java.lang.reflect.Method.invoke (Native Method)

    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:438)

    at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:857)
     
  25. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    As I wrote here: https://fogbugz.unity3d.com/default.asp?1126040_tnucj7t4288a3fpq bug not reproduce stable, it affects few percents of sessions. I never meet this bug on my own devices.
    I recommend you also analyze what changes was made during these fixes:
    https://issuetracker.unity3d.com/is...1157.919186128.1549375064-11198358.1461323814
    https://issuetracker.unity3d.com/is...8224.919186128.1549375064-11198358.1461323814
    or may be this one https://issuetracker.unity3d.com/is...8224.919186128.1549375064-11198358.1461323814
     
    Munchy2007 likes this.
  26. FinalDaniel

    FinalDaniel

    Joined:
    Mar 29, 2017
    Posts:
    12
    I'm not in a position to upload the problem project at the moment, but there is something I wanted to mention that might help someone else track the issue down - I have another app that I am updating at the moment, with a very similar codebase that is also on the latest version of Unity and has IAP and purchasing, but this app doesn't seem to be receiving the same listener errors.

    The only major difference between that working app and the one with the intermittent errors is that the app with the errors uses the google play game services plugin - which alters the android manifest file as it would have its own listeners and callbacks it has to set up. Unfortunately, my knowledge of android & java is extremely limited, but I have come across issues in non-Unity projects in the past where manifest issues resulted in callback/listener related errors.

    @IceCatGames , @Munchy2007 - Do your apps have similar 3rd party sdk's that would be effecting the manifest file?
     
  27. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    @FinalDaniel Mine is using Google Play Game Services, Google Mobile Ads, Unity Ads and Unity Analytics, however, I still haven't had an instance of this crash since disabling crash reporting, so I'm inclined to point my finger in that direction at the moment.
     
    Last edited: Feb 24, 2019
  28. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    do you build .aab or .apk?
    What do you think might matter? we use .aab
     
  29. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    I build .apk, using Gradle option in Unity. I've never built .aab.
     
  30. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    @FinalDaniel my game doesn't use Google Play Game Services. We use Google Ads, Unity Ads, Chartboost, Flurry, Google Analytics and few small plugins...but I think it's really not related with the problem. As I wrote, I migrate from Unity 2017 with this code and changed nothing on 2018.3 - and these crashes started to appear on 2018.3
     
  31. triangle154

    triangle154

    Joined:
    Mar 1, 2016
    Posts:
    3
    I'm facing the same issue with both .abb and .apk, i also can't reproduce this issue with my test devices, only a small percent of user experienced it.
     
  32. Munchy2007

    Munchy2007

    Joined:
    Jun 16, 2013
    Posts:
    1,586
    I don't know if it's connected, but since disabling crash reporting, although I haven't seen a single $Proxy related crash, I have seen a seemingly corresponding increase in signal 5 (SIGTRAP), code 1 (TRAP_BRKPT) crashes.

    Logcat (from Google developer console report)

    *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
    pid: 0, tid: 0 >>> com.doofah.cubeology <<<
    backtrace:

    #00 pc 0000000000fa22e8 /data/app/com.android.chrome-_UIyKW3ew4PyHimv6wf7Zg==/base.apk
    #01 pc 0000000000fa220b /data/app/com.android.chrome-_UIyKW3ew4PyHimv6wf7Zg==/base.apk


    Just to re-iterate, this wasn't happening in anywhere the numbers it is now, prior to upgrading to Unity 2018.3
     
  33. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    very strange, for me after turning off crash reporting, nothing has changed
    Do we speak about the same option? : http://prntscr.com/mpqt7d
     
  34. dominykasm

    dominykasm

    Unity Technologies

    Joined:
    May 27, 2018
    Posts:
    70
    Report a bug in the Editor, don't forget to attach a project with the steps to reproduce it.
    Post the report's ID here afterward.

    You can find more about bug reporting here: https://unity3d.com/unity/qa/bug-reporting
     
  35. ARPAplus

    ARPAplus

    Joined:
    Jun 5, 2015
    Posts:
    32
    Nobody knows how to reproduce it. But since we all see it in crash reports in Google Play Console - bug exists. And therefore this bug also leads to cross red line of "Bad behaviour" and our games losing it's position in Google Play ranking. And we lose money. This is very serious.
     
    Sparkline and IceCatGames like this.
  36. dominykasm

    dominykasm

    Unity Technologies

    Joined:
    May 27, 2018
    Posts:
    70
    Even a project with which your users are experiencing the issue would be of great help :)
     
  37. pranjal_unity

    pranjal_unity

    Joined:
    Mar 8, 2018
    Posts:
    2
    This seems to be a major issue. I have tried all the solution present here but the issue still exists. It has crossed the bad behaviour limit on Google.
     
  38. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    I reported this bug and attached the projects few days ago. Can you say please how much time it can take to get some answer?
     
  39. mkudimov

    mkudimov

    Joined:
    Jan 7, 2018
    Posts:
    10
    Anybody tryed to downgrade Unity version? does that make sense?
     
  40. triangle154

    triangle154

    Joined:
    Mar 1, 2016
    Posts:
    3
    i've already downgraded to Unity 2017.4.20 and experienced a new crash, but i think it is the same with the issue in 2018.3 version. Here is the crash log on Crashlytic :

    Caused by java.lang.NullPointerException: Expected to unbox a 'boolean' primitive type but was returned null
    at $Proxy7.handleMessage(Unknown Source)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:148)
    at android.app.ActivityThread.main(ActivityThread.java:7223)
    at java.lang.reflect.Method.invoke(Method.java)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
     
  41. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    @dominykasm
    As @toberr said, he is already provided project to you. All workarounds that offered @mikaisomaa does not work. When can we expect any positive results?
    I posted first post about 3 weeks ago and all of this time my game in store receives a lot of crashes and loses positions. My business is taking damage because of bug in engine, but I continue to pay for the license. Speed up your investigations please!
     
  42. mkudimov

    mkudimov

    Joined:
    Jan 7, 2018
    Posts:
    10
    what about Unity 2018.2.20 ?

    Anybody has resources to check this ? )))
     
  43. ARPAplus

    ARPAplus

    Joined:
    Jun 5, 2015
    Posts:
    32
    to avoid this bugs we build games on Unity 2018.2.18f1.
    It's ok for older source codes, but unable to convert 2018.3 games to Unity 2018.2 because of new prefabs system ;(
     
  44. mkudimov

    mkudimov

    Joined:
    Jan 7, 2018
    Posts:
    10
    Thank you very much for information...
    I will have to roll back to 2017.3.1f1 and make changes again. not a bad option than to wait for an indefinite period.
     
  45. toberr

    toberr

    Joined:
    Oct 1, 2016
    Posts:
    36
    Did you find any way to downgrade prefabs from 2018.3 to 2018.2?
     
  46. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    I think he just will revert code via source control system and make all tasks since migrate to 2018.3
     
  47. ARPAplus

    ARPAplus

    Joined:
    Jun 5, 2015
    Posts:
    32
    That's it! We were unable to downgrade prefabs and we just downgrade the app :)
     
  48. IceCatGames

    IceCatGames

    Joined:
    Mar 22, 2016
    Posts:
    33
    I can't do this - I already made a lot of specific work on new version (( Unity guys, when we will see any progress??
     
  49. mridkash

    mridkash

    Joined:
    Apr 8, 2017
    Posts:
    4
    I think I found an easy solution to this issue. After an update to my game about 2 days ago, I have not seen the same crash reported anymore from the new version.

    The code which seems to be triggering this crash is loading ads (in my case Admob) in the Start() method.

    I moved the ad loading code from Start() to another method which is called after the player starts playing.

    You can try moving the ad loading, and in-app product loading from the Start method to a coroutine which runs after a few seconds.

    I got a clue when the game crashed just after launching on my friend's phone and he said that it happens sometimes when he quits the game and starts it again immediately. I thought that it may be possible that the ad loading code is running a thread which is accessing a library which is not loaded yet.

    Now I have not been able to replicate this issue at all on any of my phones. It is some threading issue that is why I suppose it is hard to replicate.

    You can try the above change and see if it works.

    [Edit] These links shed some light on the library loading and UnsatisfiedLinkError

    https://developer.android.com/training/articles/perf-jni#faq:-why-do-i-getunsatisfiedlinkerror
    https://medium.com/keepsafe-enginee...ding-native-libraries-on-android-befa49dce2db

    [Edit #2] 3 days into the update, though the crash rate has come down, the same crash is still happening once in a while. It means that the underlying problem still exists. I'll update as it gets into more phones over the week.
     
    Last edited: Mar 4, 2019
    IceCatGames and toberr like this.
  50. Deleted User

    Deleted User

    Guest

    I am thinking I've found problem & solution, at least for my project.

    I'm using AdMob, Unity2018.3.6f1, and building app bundle using IL2CPP backend (was previously using Unity Ads and getting even more of the same crash reports, so I'm thinking this will work for Unity Ads also).

    I was getting various Proxy#.OnAdLoaded() not found type crashes, along with other similar ones (NativeProxyInvoke etc.), due to unsatisfied link error.

    Ok, it would seem that certain Bundle configurations are stripping out the ReflectionHelper class from Unity Player, but others aren't, resulting in seemingly random crashes across various devices (issue seems to be centred around ARM64 versions though).

    So, I've added the following to my user Proguard file....

    -keep public class com.unity3d.player.ReflectionHelper.** { *; }
    -ignorewarnings


    If you are using AdMob then you should already be using a user Proguard file to prevent stripping of the google ads classes so it is just a case of adding the line above to it.

    If you are using Unity Ads, then you might not have come across the need for a user Proguard file - enable it in PlayerSettings -> Publishing Settings then locate the file and add the above 2 lines to it (it will be empty until you do that).

    Since doing this, no crashes being reported - just one day in to roll out of this release so there's still time to find out its something else, but my fingers are crossed. I have tried everything mentioned here and some other things with no success, but this seems to have solved it.
     
    toberr likes this.
unityunity