Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Parse PlatformException from details instead of message #2052

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

denrase
Copy link
Collaborator

@denrase denrase commented May 13, 2024

📜 Description

Parse platform exception from details, not message.

💡 Motivation and Context

Closes #2041

💚 How did you test it?

  • Unit tests

📝 Checklist

  • I reviewed submitted code
  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPii is enabled
  • I updated the docs if needed
  • All tests passing
  • No breaking changes

Copy link
Contributor

github-actions bot commented May 13, 2024

Android Performance metrics 🚀

  Plain With Sentry Diff
Startup time 389.04 ms 481.53 ms 92.49 ms
Size 6.35 MiB 7.33 MiB 1005.63 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
051e97a 359.56 ms 426.68 ms 67.12 ms
3e9fb0e 329.14 ms 359.16 ms 30.02 ms
4efee31 308.92 ms 368.68 ms 59.76 ms
8ced2dc 295.58 ms 336.49 ms 40.91 ms
2261c15 370.00 ms 455.88 ms 85.88 ms
30c1193 349.00 ms 438.20 ms 89.20 ms
e66e71e 296.84 ms 345.43 ms 48.59 ms
62dde43 339.21 ms 423.06 ms 83.85 ms
5aab4c5 326.12 ms 378.82 ms 52.70 ms
5e8d2b3 342.17 ms 375.83 ms 33.66 ms

App size

Revision Plain With Sentry Diff
051e97a 6.27 MiB 7.20 MiB 959.09 KiB
3e9fb0e 5.94 MiB 6.95 MiB 1.01 MiB
4efee31 5.94 MiB 6.92 MiB 1003.76 KiB
8ced2dc 6.06 MiB 7.03 MiB 990.29 KiB
2261c15 6.27 MiB 7.20 MiB 957.75 KiB
30c1193 6.27 MiB 7.20 MiB 958.74 KiB
e66e71e 6.06 MiB 7.09 MiB 1.03 MiB
62dde43 5.94 MiB 6.96 MiB 1.02 MiB
5aab4c5 6.06 MiB 7.10 MiB 1.04 MiB
5e8d2b3 6.15 MiB 7.13 MiB 1000.11 KiB

Previous results on branch: fix/parse-platform-exception-from-details

Startup times

Revision Plain With Sentry Diff
5e04ec9 380.18 ms 440.74 ms 60.56 ms
40ccaf4 394.53 ms 457.10 ms 62.57 ms

App size

Revision Plain With Sentry Diff
5e04ec9 6.33 MiB 7.30 MiB 992.48 KiB
40ccaf4 6.33 MiB 7.30 MiB 992.48 KiB

@denrase denrase marked this pull request as ready for review May 13, 2024 13:33
Copy link

codecov bot commented May 13, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.25%. Comparing base (31e875c) to head (e1cbb6f).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2052      +/-   ##
==========================================
- Coverage   95.30%   95.25%   -0.06%     
==========================================
  Files          54       54              
  Lines        1789     1791       +2     
==========================================
+ Hits         1705     1706       +1     
- Misses         84       85       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Contributor

github-actions bot commented May 13, 2024

iOS Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1250.24 ms 1279.57 ms 29.33 ms
Size 8.33 MiB 9.54 MiB 1.22 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
fe4aa56 1248.82 ms 1261.35 ms 12.53 ms
955541a 1230.22 ms 1252.96 ms 22.73 ms
5aba417 1265.31 ms 1287.90 ms 22.59 ms
0be962b 1264.10 ms 1281.16 ms 17.06 ms
1cdcacf 1208.35 ms 1235.13 ms 26.77 ms
b8562d0 1249.92 ms 1267.56 ms 17.64 ms
9928a74 1249.98 ms 1269.08 ms 19.10 ms
3de8b9b 1234.22 ms 1251.94 ms 17.72 ms
a609134 1254.50 ms 1265.08 ms 10.58 ms
2331d89 1260.86 ms 1281.24 ms 20.39 ms

App size

Revision Plain With Sentry Diff
fe4aa56 8.10 MiB 9.08 MiB 1004.36 KiB
955541a 8.28 MiB 9.34 MiB 1.06 MiB
5aba417 8.16 MiB 9.17 MiB 1.01 MiB
0be962b 8.10 MiB 9.16 MiB 1.07 MiB
1cdcacf 8.32 MiB 9.39 MiB 1.06 MiB
b8562d0 8.33 MiB 9.54 MiB 1.22 MiB
9928a74 8.16 MiB 9.17 MiB 1.01 MiB
3de8b9b 8.28 MiB 9.34 MiB 1.06 MiB
a609134 8.16 MiB 9.16 MiB 1.01 MiB
2331d89 8.16 MiB 9.17 MiB 1.01 MiB

Previous results on branch: fix/parse-platform-exception-from-details

Startup times

Revision Plain With Sentry Diff
5e04ec9 1234.96 ms 1265.67 ms 30.72 ms
40ccaf4 1249.88 ms 1270.68 ms 20.80 ms

App size

Revision Plain With Sentry Diff
5e04ec9 8.32 MiB 9.52 MiB 1.20 MiB
40ccaf4 8.32 MiB 9.52 MiB 1.20 MiB

@ueman
Copy link
Collaborator

ueman commented May 13, 2024

Here's some platform exceptions:

PlatformException(getNotificationChannelsError, Attempt to invoke virtual method 'int android.media.AudioAttributes.getUsage()' on a null object reference, java.lang.NullPointerException: Attempt to invoke virtual method 'int android.media.AudioAttributes.getUsage()' on a null object reference
	at com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin.getMappedNotificationChannel(FlutterLocalNotificationsPlugin.java:265)
	at com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin.getNotificationChannels(FlutterLocalNotificationsPlugin.java:32)
	at com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin.onMethodCall(FlutterLocalNotificationsPlugin.java:399)
	at me.j$a.a(MethodChannel.java:18)
	at ae.c.l(DartMessenger.java:19)
	at ae.c.m(DartMessenger.java:42)
	at ae.c.h(Unknown Source:0)
	at ae.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:257)
	at android.os.Looper.loop(Looper.java:368)
	at android.app.ActivityThread.main(ActivityThread.java:8826)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:572)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049)
, null)
PlatformException(error, No active stream to cancel, null, null)
PlatformException(IllegalStateException, Caught IllegalStateException: buffer is inaccessible, null, null)
PlatformException(android.os.FileUriExposedException: file:///<redacted> exposed beyond app through Intent.getData(), FileUriExposedException, Cause: null, Stacktrace: android.os.FileUriExposedException: file:///<redacted> exposed beyond app through Intent.getData()
	at android.os.StrictMode.onFileUriExposed(StrictMode.java:2245)
	at android.net.Uri.checkFileUriExposed(Uri.java:2405)
	at android.content.Intent.prepareToLeaveProcess(Intent.java:12779)
	at android.content.Intent.prepareToLeaveProcess(Intent.java:12728)
	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1872)
	at android.app.Activity.startActivityForResult(Activity.java:5743)
	at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:2)
	at android.app.Activity.startActivityForResult(Activity.java:5701)
	at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:1)
	at android.app.Activity.startActivity(Activity.java:6199)
	at android.app.Activity.startActivity(Activity.java:6166)
	at rf.h.o(UrlLauncher.java:31)
	at rf.a$c.m(Messages.java:22)
	at rf.a$c.h(Unknown Source:0)
	at rf.c.a(Unknown Source:2)
	at me.a$b.a(BasicMessageChannel.java:18)
	at ae.c.l(DartMessenger.java:19)
	at ae.c.m(DartMessenger.java:42)
	at ae.c.h(Unknown Source:0)
	at ae.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:230)
	at android.os.Looper.loop(Looper.java:319)
	at android.app.ActivityThread.main(ActivityThread.java:8893)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
, null)
PlatformException(ACTIVITY_NOT_FOUND, No Activity found to handle intent { https://www.paypal.com/cgi-bin/webscr?cmd=express-checkout&token=<redacted> }, null, null)
PlatformException(error, Unsupported value: '[Ljava.lang.StackTraceElement;@bf87387' of type 'class [Ljava.lang.StackTraceElement;', null, java.lang.IllegalArgumentException: Unsupported value: '[Ljava.lang.StackTraceElement;@bf87387' of type 'class [Ljava.lang.StackTraceElement;'
	at mb.q.p(StandardMessageCodec.java:445)
	at mb.r.d(StandardMethodCodec.java:38)
	at mb.j$a$a.error(MethodChannel.java:11)
	at com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin.getNotificationChannels(FlutterLocalNotificationsPlugin.java:55)
	at com.dexterous.flutterlocalnotifications.FlutterLocalNotificationsPlugin.onMethodCall(FlutterLocalNotificationsPlugin.java:383)
	at mb.j$a.a(MethodChannel.java:18)
	at za.c.l(DartMessenger.java:19)
	at za.c.m(DartMessenger.java:41)
	at za.c.i(Unknown Source:0)
	at za.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:966)
	at android.os.Handler.dispatchMessage(Handler.java:110)
	at android.os.Looper.loopOnce(Looper.java:205)
	at android.os.Looper.loop(Looper.java:293)
	at android.app.ActivityThread.loopProcess(ActivityThread.java:9934)
	at android.app.ActivityThread.main(ActivityThread.java:9923)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:586)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1240)
PlatformException(error, Property systemBrightness should be initialized before get., null, java.lang.IllegalStateException: Property systemBrightness should be initialized before get.
	at vg.b.a(Delegates.kt:39)
	at k2.a.g(ScreenBrightnessAndroidPlugin.kt:8)
	at k2.a.o(ScreenBrightnessAndroidPlugin.kt:32)
	at k2.a.onMethodCall(ScreenBrightnessAndroidPlugin.kt:102)
	at me.j$a.a(MethodChannel.java:18)
	at ae.c.l(DartMessenger.java:19)
	at ae.c.m(DartMessenger.java:42)
	at ae.c.h(Unknown Source:0)
	at ae.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:257)
	at android.os.Looper.loop(Looper.java:368)
	at android.app.ActivityThread.main(ActivityThread.java:8826)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:572)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049)
PlatformException(error, invalid selection start: 43, null, java.lang.IndexOutOfBoundsException: invalid selection start: 43
	at le.r$e.<init>(TextInputChannel.java:104)
	at le.r$e.a(TextInputChannel.java:34)
	at le.r$a.onMethodCall(TextInputChannel.java:424)
	at me.j$a.a(MethodChannel.java:18)
	at ae.c.l(DartMessenger.java:19)
	at ae.c.m(DartMessenger.java:42)
	at ae.c.h(Unknown Source:0)
	at ae.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:873)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:214)
	at android.app.ActivityThread.main(ActivityThread.java:7050)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
)
PlatformException(error, Can not perform this action after onSaveInstanceState, null, java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
	at android.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1882)
	at android.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1905)
	at android.app.BackStackRecord.commitInternal(BackStackRecord.java:688)
	at android.app.BackStackRecord.commit(BackStackRecord.java:646)
	at e7.b.c(com.google.android.gms:play-services-wallet@@18.0.0:44)
	at od.b.e(FlutterPayPlugin.kt:61)
	at od.b.onMethodCall(FlutterPayPlugin.kt:57)
	at me.j$a.a(MethodChannel.java:18)
	at ae.c.l(DartMessenger.java:19)
	at ae.c.m(DartMessenger.java:42)
	at ae.c.h(Unknown Source:0)
	at ae.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:230)
	at android.os.Looper.loop(Looper.java:319)
	at android.app.ActivityThread.main(ActivityThread.java:8893)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
)
PlatformException(error, Not supported, use openfile, null, java.lang.IllegalArgumentException: Not supported, use openfile
	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:172)
	at android.database.DatabaseUtils.readExceptionWithFileNotFoundExceptionFromParcel(DatabaseUtils.java:153)
	at android.content.ContentProviderProxy.openTypedAssetFile(ContentProviderNative.java:814)
	at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:2043)
	at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1981)
	at io.flutter.plugin.platform.f.q(PlatformPlugin.java:57)
	at io.flutter.plugin.platform.f.c(PlatformPlugin.java:1)
	at io.flutter.plugin.platform.f$a.g(PlatformPlugin.java:3)
	at lb.j$a.onMethodCall(PlatformChannel.java:294)
	at mb.j$a.a(MethodChannel.java:18)
	at za.c.l(DartMessenger.java:19)
	at za.c.m(DartMessenger.java:41)
	at za.c.i(Unknown Source:0)
	at za.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:958)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:230)
	at android.os.Looper.loop(Looper.java:319)
	at android.app.ActivityThread.main(ActivityThread.java:8893)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
)
PlatformException(error, Attempt to read from field 'android.view.WindowManager$LayoutParams android.view.ViewRootImpl.mWindowAttributes' on a null object reference, null, java.lang.NullPointerException: Attempt to read from field 'android.view.WindowManager$LayoutParams android.view.ViewRootImpl.mWindowAttributes' on a null object reference
	at android.view.inputmethod.InputMethodManager.startInputInner(InputMethodManager.java:1818)
	at android.view.inputmethod.InputMethodManager.checkFocus(InputMethodManager.java:2074)
	at android.view.inputmethod.InputMethodManager.isActive(InputMethodManager.java:1322)
	at WV.Hs.b(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:7)
	at org.chromium.content.browser.input.ImeAdapterImpl.d(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:16)
	at org.chromium.content.browser.input.ImeAdapterImpl.k(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:10)
	at org.chromium.content.browser.input.ImeAdapterImpl.onDetachedFromWindow(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:1)
	at WV.H5.onDetachedFromWindow(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:106)
	at org.chromium.android_webview.AwContents.z(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:43)
	at com.android.webview.chromium.WebViewChromium.onDetachedFromWindow(chromium-TrichromeWebViewGoogle6432.aab-stable-631211833:24)
	at android.webkit.WebView.onDetachedFromWindowInternal(WebView.java:2676)
	at android.view.View.dispatchDetachedFromWindow(View.java:20167)
	at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:4047)
	at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:4033)
	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5688)
	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5659)
	at android.view.ViewGroup.removeView(ViewGroup.java:5590)
	at io.flutter.plugin.platform.u$a.i(PlatformViewsController.java:56)
	at le.l$a.d(PlatformViewsChannel.java:26)
	at le.l$a.onMethodCall(PlatformViewsChannel.java:148)
	at me.j$a.a(MethodChannel.java:18)
	at ae.c.l(DartMessenger.java:19)
	at ae.c.m(DartMessenger.java:42)
	at ae.c.h(Unknown Source:0)
	at ae.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:900)
	at android.os.Handler.dispatchMessage(Handler.java:103)
	at android.os.Looper.loop(Looper.java:219)
	at android.app.ActivityThread.main(ActivityThread.java:8668)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1109)
)
PlatformException(java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.VIEW dat=https://<redacted>/... cmp=com.sandboxol.blockymods/com.sandboxol.center.view.activity.webview.WebViewActivity (has extras) } from ProcessRecord{8773721 15241:com.media.markt/u0a302} (pid=15241, uid=10302) not exported from uid 10285, SecurityException, Cause: android.os.RemoteException: Remote stack trace:
	at com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1305)
	at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1387)
	at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:1025)
	at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1942)
	at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1815)
, Stacktrace: java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.VIEW dat=https://tarife.mediamarkt.de/... cmp=com.sandboxol.blockymods/com.sandboxol.center.view.activity.webview.WebViewActivity (has extras) } from ProcessRecord{8773721 15241:com.media.markt/u0a302} (pid=15241, uid=10302) not exported from uid 10285
	at android.os.Parcel.createExceptionOrNull(Parcel.java:3023)
	at android.os.Parcel.createException(Parcel.java:3007)
	at android.os.Parcel.readException(Parcel.java:2990)
	at android.os.Parcel.readException(Parcel.java:2932)
	at android.app.IActivityTaskManager$Stub$Proxy.startActivity(IActivityTaskManager.java:2791)
	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1801)
	at android.app.Activity.startActivityForResult(Activity.java:5596)
	at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:2)
	at android.app.Activity.startActivityForResult(Activity.java:5554)
	at androidx.activity.ComponentActivity.startActivityForResult(ComponentActivity.java:1)
	at android.app.Activity.startActivity(Activity.java:6052)
	at android.app.Activity.startActivity(Activity.java:6019)
	at nf.h.p(UrlLauncher.java:31)
	at nf.a$c.k(Messages.java:22)
	at nf.a$c.n(Unknown Source:0)
	at nf.c.a(Unknown Source:2)
	at ie.a$b.a(BasicMessageChannel.java:18)
	at wd.c.l(DartMessenger.java:19)
	at wd.c.m(DartMessenger.java:42)
	at wd.c.h(Unknown Source:0)
	at wd.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:942)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:226)
	at android.os.Looper.loop(Looper.java:313)
	at android.app.ActivityThread.main(ActivityThread.java:8757)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
Caused by: android.os.RemoteException: Remote stack trace:
	at com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1305)
	at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1387)
	at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:1025)
	at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1942)
	at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1815)

, null)
PlatformException(error, invalid selection start: 2, null, java.lang.IndexOutOfBoundsException: invalid selection start: 2
	at he.r$e.<init>(TextInputChannel.java:104)
	at he.r$e.a(TextInputChannel.java:34)
	at he.r$b$a.a(TextInputChannel.java:61)
	at he.r$b.a(TextInputChannel.java:176)
	at he.r$b.a(TextInputChannel.java:38)
	at he.r$a.onMethodCall(TextInputChannel.java:394)
	at ie.j$a.a(MethodChannel.java:18)
	at wd.c.l(DartMessenger.java:19)
	at wd.c.m(DartMessenger.java:42)
	at wd.c.h(Unknown Source:0)
	at wd.b.run(Unknown Source:12)
	at android.os.Handler.handleCallback(Handler.java:938)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loop(Looper.java:233)
	at android.app.ActivityThread.main(ActivityThread.java:8068)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)
)

A lot of the times the stacktrace is reported properly in the stacktrace property, but it's also in the details property, but never in the message property

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

PlatformException on Android isn't correctly parsed
3 participants