Search code examples
xamarin.androidcrash-reports

Xamarin Android 12 - Initial Crash


I just worked on my Xamarin Forms App and released the next version for iOS. Then I went back to the Android version, assuming it would work perfectly well (as android has always been doing for me).

Now this is what happens:

[QXPerf] Couldn't load BLASTBufferQueue Class
[QXPerf] Couldn't find UndequeuedBufferCount functions
[Looper] PerfMonitor longMsg : seq=4 plan=10:19:09.074 late=5792ms wall=2177ms running=0ms h=android.app.ActivityThread$H w=159 procState=-1
[Looper] PerfMonitor looperActivity : package=de.myapp.app/crc643873299c977c4ba1.MainActivity time=2177ms latency=5792ms running=0ms  procState=-1  historyMsgCount=1 (msgIndex=1 wall=5790ms seq=3 late=1ms h=android.app.ActivityThread$H w=110)
[Looper] PerfMonitor looperActivity : package=de.myapp.app/crc643873299c977c4ba1.MainActivity time=0ms latency=7970ms running=0ms  procState=-1  historyMsgCount=2 (msgIndex=1 wall=5790ms seq=3 late=1ms h=android.app.ActivityThread$H w=110) (msgIndex=2 wall=2177ms seq=4 late=5792ms h=android.app.ActivityThread$H w=159)
**System.NullReferenceException:** 'Object reference not set to an instance of an object.'

[MIUIScout App] Enter APP_SCOUT_WARNING State
[MIUIScout App] Event:APP_SCOUT_WARNING Thread:main backtrace:
[MIUIScout App]     at mono.java.lang.RunnableImplementor.n_run(Native Method)
[MIUIScout App]     at mono.java.lang.RunnableImplementor.run(RunnableImplementor.java:30)
[MIUIScout App]     at android.os.Handler.handleCallback(Handler.java:938)
[MIUIScout App]     at android.os.Handler.dispatchMessage(Handler.java:99)
[MIUIScout App]     at android.os.Looper.loopOnce(Looper.java:210)
[MIUIScout App]     at android.os.Looper.loop(Looper.java:299)
[MIUIScout App]     at android.app.ActivityThread.main(ActivityThread.java:8085)
[MIUIScout App]     at java.lang.reflect.Method.invoke(Native Method)
[MIUIScout App]     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
[MIUIScout App]     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)
[MIUIScout App] Enter APP_SCOUT_HANG state
[MIUIScout App] Event:APP_SCOUT_HANG Thread:main backtrace:
[MIUIScout App]     at mono.java.lang.RunnableImplementor.n_run(Native Method)
[MIUIScout App]     at mono.java.lang.RunnableImplementor.run(RunnableImplementor.java:30)
[MIUIScout App]     at android.os.Handler.handleCallback(Handler.java:938)
[MIUIScout App]     at android.os.Handler.dispatchMessage(Handler.java:99)
[MIUIScout App]     at android.os.Looper.loopOnce(Looper.java:210)
[MIUIScout App]     at android.os.Looper.loop(Looper.java:299)
[MIUIScout App]     at android.app.ActivityThread.main(ActivityThread.java:8085)
[MIUIScout App]     at java.lang.reflect.Method.invoke(Native Method)
[MIUIScout App]     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
[MIUIScout App]     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)

I have absolutely no Idea where this comes from or how I could get around it.

Anybody out there, who knows what to do?

Greetings Maurice


Solution

  • Try catch does not solve the problem , it just stop the crash .

    It seems a problem with Xamarin.Essentials.Preferences in Android 12 , see the issue here : https://github.com/xamarin/Essentials/issues/1991 .

    For that you can seek another way to replace Preferences , or implement Shared Preferences by yourself.