Blazor MAUI应用程序在Android上的Release配置中启动时崩溃



我写了一个。NET MAUI Blazor应用程序,并遇到了一个问题,该应用程序加载后立即崩溃。我没有得到任何有用的反馈来帮助我追踪导致这种情况的代码中的错误。

这种情况仅在运行应用程序的Release版本时发生,但无论是通过在设备上安装已编译的-Signed.apk,还是尝试通过Visual Studio在Release模式下运行应用程序(通过USB进行调试(,都是可复制的。

当在Debug中运行时,应用程序可以工作,但这不是一个苹果对苹果的比较,因为应用程序的Debug版本似乎有一个不同的AppData文件夹(Release配置中没有可用的数据(。

我已经在代码中搜索了一些执行过#if/else DEBUG指令的地方,并对它们进行了注释,因此问题仍然存在。

到目前为止,我唯一可用的日志信息如下:

08-14 19:49:13.385  Samsung SM-A716U    Error   18021   .My.Ap  * Assertion at /__w/1/s/src/mono/mono/mini/aot-runtime.c:3678, condition `is_ok (error)' not met, function:decode_patch, module 'Microsoft.AspNetCore.Components.WebView.Maui.dll.so' is unusable (GUID of dependent assembly Microsoft.AspNetCore.Components.WebView doesn't match (expected 'B27A41A6-37DA-48F5-8E28-EC47FA31EBC7', got '6BA9D71B-392E-479A-9EF5-13DA5572959A')).
Time    Device Name Type    PID Tag Message
08-14 19:49:13.386  Samsung SM-A716U    Error   18021   libc    Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 18021 (.My.App), pid 18021 (.My.App)
Time    Device Name Type    PID Tag Message
08-14 19:49:13.602  Samsung SM-A716U    Error   18054   DEBUG   Cmdline: NS.My.App
Time    Device Name Type    PID Tag Message
08-14 19:49:13.602  Samsung SM-A716U    Error   18054   DEBUG   pid: 18021, tid: 18021, name: .My.App  >>> NS.My.App <<<
Time    Device Name Type    PID Tag Message
08-14 19:49:13.738  Samsung SM-A716U    Error   1279    ActivityManager android.util.Log$TerribleFailure: Removing process that hasn't been killed: ProcessRecord{a2b455e 0:NS.My.App/u0a575}
at android.util.Log.wtf(Log.java:438)
at android.util.Slog.wtfStack(Slog.java:206)
at com.android.server.am.ProcessList.removeLruProcessLocked(ProcessList.java:3506)
at com.android.server.am.ActivityManagerService.removeLruProcessLocked(ActivityManagerService.java:3184)
at com.android.server.am.ActivityManagerService.handleAppDiedLocked(ActivityManagerService.java:3635)
at com.android.server.am.ProcessList.removeProcessLocked(ProcessList.java:3724)
at com.android.server.am.ProcessList.removeProcessLocked(ProcessList.java:3661)
at com.android.server.am.AppErrors.crashApplicationInner(AppErrors.java:787)
at com.android.server.am.AppErrors.crashApplication(AppErrors.java:584)
at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:9711)
at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:119)
Time    Device Name Type    PID Tag Message
08-14 19:49:13.738  Samsung SM-A716U    Error   1279    ActivityManager android.util.Log$TerribleFailure: Removing process that hasn't been killed: ProcessRecord{a2b455e 0:NS.My.App/u0a575}
at android.util.Log.wtf(Log.java:438)
at android.util.Slog.wtfStack(Slog.java:206)
at com.android.server.am.ProcessList.removeLruProcessLocked(ProcessList.java:3506)
at com.android.server.am.ActivityManagerService.removeLruProcessLocked(ActivityManagerService.java:3184)
at com.android.server.am.ActivityManagerService.handleAppDiedLocked(ActivityManagerService.java:3635)
at com.android.server.am.ProcessList.removeProcessLocked(ProcessList.java:3724)
at com.android.server.am.ProcessList.removeProcessLocked(ProcessList.java:3661)
at com.android.server.am.AppErrors.crashApplicationInner(AppErrors.java:787)
at com.android.server.am.AppErrors.crashApplication(AppErrors.java:584)
at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:9711)
at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:119)

您可能在上次预览更新之前启动了一个项目,我也有这个错误,并进行了一些调试才找到它。

进入NuGet软件包管理器并更新Microsoft。AspNetCore。组件。WebView版本6.0.8

这解决了你给我的错误。

对我起作用的是删除objbin文件夹。Clean Solution命令不起作用,我不得不手动删除构建过程中生成的所有内容。

最新更新