添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

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

Description

Using the new MAUI app template, adding a webview component and set Source to https://google.com .

On Android, request timeout after a few minutes. This used to work fine on Android a few months ago. Other platforms still work fine.

Worth noting that even if the Source property is removed, the strange errors in the log still happen.

Steps to Reproduce

  • Use Windows 11 with Visual Studio 2022, latest version as of 2023-04-11
  • Create brand new .NET Maui App
  • Add WebView component to main page
  • Set Source property of the web view to https://google.com
  • Run application in Android emulator or device. Notice nothing happens. Notice a timeout error is displayed after a few minutes.
  • Note that Android works fine when run from MAC and VS for MAC. Issue is only on Windows with Visual Studio.
  • Link to public reproduction project repository

    https://github.com/jjxtra/MauiAndroidWebViewSourceBug

    Version with bug

    8.0 (current) and .NET 7 newer version after January

    Last version that worked well

    6.0.424, older .NET 7 version from January

    Affected platforms

    Android

    Affected platform versions

    All Android versions

    Did you find any workaround?

    No. Only rolling back to an old .NET 7 version works, or .NET 6.

    Relevant log output

    Endless loop of this strange error...

    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    Thread finished: <Thread Pool> #9
    Thread finished: <Thread Pool> #8
    Thread finished: <Thread Pool> #10
    The thread 0x9 has exited with code 0 (0x0).
    The thread 0x8 has exited with code 0 (0x0).
    The thread 0xa has exited with code 0 (0x0).
    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    Thread started: <Thread Pool> #12
    [Choreographer] Frame time is 0.03276 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
    [JavaBinder] !!! FAILED BINDER TRANSACTION !!!  (parcel size = 312)
    [GmsClient] IGmsServiceBroker.getService failed
    [GmsClient] android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffe
    [GmsClient] 	at android.os.BinderProxy.transactNative(Native Method)
    [GmsClient] 	at android.os.BinderProxy.transact(BinderProxy.java:584)
    [GmsClient] 	at WE.b(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:288)
    [GmsClient] 	at com.google.android.gms.common.internal.BaseGmsClient.p(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:53)
    [GmsClient] 	at BB.run(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:1849)
    [GmsClient] 	at android.os.Handler.handleCallback(Handler.java:942)
    [GmsClient] 	at android.os.Handler.dispatchMessage(Handler.java:99)
    [GmsClient] 	at Sp0.dispatchMessage(chromium-TrichromeWebViewGoogle6432.apk-stable-495157437:223)
    [GmsClient] 	at android.os.Looper.loopOnce(Looper.java:201)
    [GmsClient] 	at android.os.Looper.loop(Looper.java:288)
    [GmsClient] 	at android.os.HandlerThread.run(HandlerThread.java:67)
    [Choreographer] Frame time is 0.028508 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
    [Choreographer] Frame time is 0.103665 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
    [Choreographer] Frame time is 0.037179 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.
    [Choreographer] Frame time is 0.036748 ms in the future!  Check that graphics HAL is generating vsync timestamps using the correct timebase.

    I cloned the app and it ran just fine on my Android Emulator on Win11. I tried running with and without debugger, everything was fine.

    I have the following versions:

    dotnet --info reports:

     .NET SDK:
     Version:   7.0.300-preview.23122.5
     Commit:    cc3d10e792
    

    And dotnet workload list reports:

    Installed Workload Id      Manifest Version       Installation Source
    ---------------------------------------------------------------------
    runtimes-windows           7.0.4/7.0.100          VS 17.6.33513.286
    maccatalyst                16.2.1030/7.0.100      VS 17.6.33513.286
    ios                        16.2.1030/7.0.100      VS 17.6.33513.286
    maui-windows               7.0.59/7.0.100         VS 17.6.33513.286
    maui-maccatalyst           7.0.59/7.0.100         VS 17.6.33513.286
    maui-ios                   7.0.59/7.0.100         VS 17.6.33513.286
    maui-android               7.0.59/7.0.100         VS 17.6.33513.286
    android                    33.0.26/7.0.100        VS 17.6.33513.286
    

    Can you compare to what version you have?

    OS Platform: Windows RID: win10-x64 Base Path: C:\Program Files\dotnet\sdk\7.0.202\ Host: Version: 7.0.4 Architecture: x64 Commit: 0a396acafe .NET SDKs installed: 3.1.426 [C:\Program Files\dotnet\sdk] 5.0.408 [C:\Program Files\dotnet\sdk] 6.0.102 [C:\Program Files\dotnet\sdk] 6.0.202 [C:\Program Files\dotnet\sdk] 7.0.104 [C:\Program Files\dotnet\sdk] 7.0.202 [C:\Program Files\dotnet\sdk] .NET runtimes installed: Microsoft.AspNetCore.App 3.1.24 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.30 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.24 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.30 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.NETCore.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 3.1.24 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 3.1.30 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App] Other architectures found: x86 [C:\Program Files (x86)\dotnet] registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation] Environment variables: Not set global.json file: Not found
    Microsoft Visual Studio Community 2022
    Version 17.5.3
    VisualStudio.17.Release/17.5.3+33516.290
    Microsoft .NET Framework
    Version 4.8.09032
    Installed Version: Community
    Visual C++ 2022   00482-90000-00000-AA950
    Microsoft Visual C++ 2022
    ADL Tools Service Provider   1.0
    This package contains services used by Data Lake tools
    ASA Service Provider   1.0
    ASP.NET and Web Tools   17.5.318.41597
    ASP.NET and Web Tools
    Azure App Service Tools v3.0.0   17.5.318.41597
    Azure App Service Tools v3.0.0
    Azure Data Lake Tools for Visual Studio   2.6.5000.0
    Microsoft Azure Data Lake Tools for Visual Studio
    Azure Functions and Web Jobs Tools   17.5.318.41597
    Azure Functions and Web Jobs Tools
    Azure Stream Analytics Tools for Visual Studio   2.6.5000.0
    Microsoft Azure Stream Analytics Tools for Visual Studio
    C# Tools   4.5.0-6.23128.14+651d32d8017cfcc60fcbd67383601fa9a3deb145
    C# components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.
    Common Azure Tools   1.10
    Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.
    Cookiecutter   17.0.22336.2
    Provides tools for finding, instantiating and customizing templates in cookiecutter format.
    Extensibility Message Bus   1.4.3 (main@2a4517a)
    Provides common messaging-based MEF services for loosely coupled Visual Studio extension components communication and integration.
    GitHub Copilot   1.78.0.0 (v1.78.0.0@399602824)
    GitHub Copilot is an AI pair programmer that helps you write code faster and with less work.
    GitHub Copilot Agent   1.78.9758 (v1.78.0)
    Linux Core Dump Debugging   1.0.9.33414
    Enables debugging of Linux core dumps.
    Microsoft Azure Hive Query Language Service   2.6.5000.0
    Language service for Hive query
    Microsoft Azure Stream Analytics Language Service   2.6.5000.0
    Language service for Azure Stream Analytics
    Microsoft Azure Tools for Visual Studio   2.9
    Support for Azure Cloud Services projects
    Microsoft JVM Debugger   1.0
    Provides support for connecting the Visual Studio debugger to JDWP compatible Java Virtual Machines
    Mono Debugging for Visual Studio   17.5.9 (11975e6)
    Support for debugging Mono processes with Visual Studio.
    Node.js Tools   1.5.50105.3 Commit Hash:882de61a7c99ae988d4c62029301292a3e0b1d56
    Adds support for developing and debugging Node.js apps in Visual Studio
    NuGet Package Manager   6.5.0
    NuGet Package Manager in Visual Studio. For more information about NuGet, visit https://docs.nuget.org/
    Python - Profiling support   17.0.22336.2
    Profiling support for Python projects.
    Python with Pylance   17.0.22336.2
    Provides IntelliSense, projects, templates, debugging, interactive windows, and other support for Python developers.
    Razor (ASP.NET Core)   17.5.2.2316603+9f1b6856460af1e592d387ebef416eadddac453f
    Provides languages services for ASP.NET Core Razor.
    SQL Server Data Tools   17.2.40119.0
    Microsoft SQL Server Data Tools
    Test Adapter for Boost.Test   1.0
    Enables Visual Studio's testing tools with unit tests written for Boost.Test.  The use terms and Third Party Notices are available in the extension installation directory.
    Test Adapter for Google Test   1.0
    Enables Visual Studio's testing tools with unit tests written for Google Test.  The use terms and Third Party Notices are available in the extension installation directory.
    ToolWindowHostedEditor   1.0
    Hosting json editor into a tool window
    TypeScript Tools   17.0.20105.2003
    TypeScript Tools for Microsoft Visual Studio
    Visual Basic Tools   4.5.0-6.23128.14+651d32d8017cfcc60fcbd67383601fa9a3deb145
    Visual Basic components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.
    Visual C++ for Cross Platform Mobile Development (Android)   17.0.33312.129
    Visual C++ for Cross Platform Mobile Development (Android)
    Visual C++ for Linux Development   1.0.9.33414
    Visual C++ for Linux Development
    Visual F# Tools   17.5.0-beta.23053.5+794b7c259d9646a7eb685dad865aa27da7940a21
    Microsoft Visual F# Tools
    Visual Studio IntelliCode   2.2
    AI-assisted development for Visual Studio.
    Visual Studio Tools for Unity   17.5.1.0
    Visual Studio Tools for Unity
    VisualStudio.DeviceLog   1.0
    Information about my package
    VisualStudio.Mac   1.0
    Mac Extension for Visual Studio
    VSPackage Extension   1.0
    VSPackage Visual Studio Extension Detailed Info
    Xamarin   17.5.0.173 (d17-5@33e727c)
    Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.
    Xamarin Designer   17.5.3.46 (remotes/origin/d17-5@e4dd80b2bb)
    Visual Studio extension to enable Xamarin Designer tools in Visual Studio.
    Xamarin.Android SDK   13.2.0.0 (d17-5/797e2e1)
    Xamarin.Android Reference Assemblies and MSBuild support.
        Mono: 6dd9def
        Java.Interop: xamarin/java.interop/main@149d70fe
        SQLite: xamarin/sqlite/3.40.0@fdc1e34
        Xamarin.Android Tools: xamarin/xamarin-android-tools/main@9f02d77
              

    Hi @jjxtra. We have added the "s/needs-info" label to this issue, which indicates that we have an open question for you before we can take further action. This issue will be closed automatically in 7 days if we do not hear back from you by then - please feel free to re-open it if you come back to this issue after that time.

    Rebooted computer and I can deploy to emulator and it works fine. On device, when deploying debug build app crashes on launch. In release mode it works fine on device. So things are at least in a better state. I guess we can close this issue. Not sure why debug build crashes on device (definitely not the first time this has happened in debug) but I can at least move on with release builds for now.

    Why things got into a bad state I am not sure. But the log that I posted above no longer cycles endlessly with the parcel error and the browser is working.