-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Blazor Hybrid not working on MacOS 15.0 [Potential fix] #23390
Comments
Hi I'm an AI powered bot that finds similar issues based off the issue title. Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it. Thank you! Closed similar issues:
|
Further InvestigationContinuing my investigation on DevToys side, I found that StartUrlSchemeTask is never invoked. A Potential Solution for DevToys and .NET MAUIAfter some time, I kind of dumbly decided to change the app host address from I suspect a fix for MAUI is similar. Please try changing this line to ConsiderationNow I'm concerned with the retro compatibility with older MacOS version. I will try getting out of MacOS 15 Beta and test on MacOS 14. While my problem is fixed, .NET MAUI Blazor Hybrid still doesn't work at all on MacOS 15, so I will leave this issue open for now and will let you decide what to do with it :-) |
I am seeing the same using MAUI blazor on iOS 18 beta 2 as well. |
We experience the same issue with iOS 18 Beta 2 as well (was working on Beta 1). A workaround is to set the base url using reflecting as first action in the MauiProgram.cs
Then the app works like before, so I can confirm the above workaround works with Maui Blazor as well. |
FYI @Eilon @mkArtakMSFT we probably want to fix this before Sept! |
Workaround works on macos 15 sequoia maui blazor hybrid, saved my life, i was going to format the mac and revert to sonoma |
While investigating further, we noticed some strange behavior when fetching data via JavaScript. One possible cause could be that the check in the following method now is never true, as we cannot change the To my understanding this check, redirects the request back to the app basically. Thus, the proposed workaround is not really working anymore :/ We tested with localhost on both iOS 17 and 18 devices, and besides the above issue had no other problems. |
Hello there, I'm experiencing the same of behaviour in my NET8.0-iOS app running on iOS 18.3 Beta. The app crashes on launch while showing the splashscreen. In the stacktrace of the crash no leads are to be found. Did someone experience the same thing? The solution described above isn't applicable for my app unfortunately. |
Alright I'm like this --> <-- close to getting macOS 15 Beta installed on my Mac. Thank you for all the investigations and feedback. Hopefully this is an easy fix! |
Alright all it took was getting a different Mac and downloading 40GB of updates 😁 But I can repro this on my Mac on iOS 18 Simulator - the BlazorWebView just doesn't show up at all. I'll confirm that the suggested workaround works as a start. But then we'll need to make sure we have a solution that works on both iOS 17 and older, but also iOS 18 and newer, and the respective MacCatalyst versions (for running on macOS desktop). |
Thanks @Eilon ! For what it worth, on MacOs at least, I released an update of DevToys with my own fix and so far, customers are happy. |
I've got a PR here that I think should fix the issue: #23906 |
Thank you again to everyone for the reports, investigations, and the tip on how to fix it! The PR was merged so this will be available in the next .NET MAUI 8 service release, and also will be ported to the .NET MAUI 9 branches. As an aside, if anyone can find docs from Apple on this change of behavior I'd love to learn more. I couldn't find any release notes or info from Apple about changes to the iOS/MacCatalyst WebView that are relevant to this (I found other notes, but nothing about this). We'd love to catch these types of things by reading release notes as opposed to finding out after it's already not working. |
I saw this article, maybe it's helpful https://www.oligo.security/blog/0-0-0-0-day-exploiting-localhost-apis-from-the-browser |
@Eilon even after updating to maui |
Wow fascinating! Perhaps we should do an even broader fix for the next patch because it sounds like maybe this could affect all platforms in the future? |
Hmm I checked that release and it seems to have the fix in it. Some questions/ideas:
Hopefully we can figure this out! |
Thanks for confirming you got it working! That's definitely odd. @Kebechet if you or anyone else sees this again please let me know! If you do still have the 'broken' IPK (or whatever file it was), it could be interesting to look inside it to see which DLLs made it into the package and see what version they are stamped with. |
I am also having this same error on my maui/blazor hybrid app. It sounds like the maui worklaod 8.0.80 may have the correct fix. However, my system is not updating past: |
@sdonoghue76 can you try manually updating the reference in your app's CSPROJ file from: <PackageReference Include="Microsoft.AspNetCore.Components.WebView.Maui" Version="$(MauiVersion)" /> To: <PackageReference Include="Microsoft.AspNetCore.Components.WebView.Maui" Version="8.0.80" /> And see if that updates the version in the app? |
Thank you @Eilon . Thanks again. |
I would agree that a patch to change the default to Edit: Further, it appears to already be in the dev channel for Chrome on Android - https://chromestatus.com/feature/5106143060033536 |
@nwestfall very good point, I logged #24363 to track that work. Please comment on the other issue if you have thoughts on various proposals. |
This brings in a bug fix, resolving the issue where basemix was unusable on iOS 18 due to it booting up and immediately displaying a white screen with no controls See dotnet/maui#23390
This works for MAC. Do you know any similar work around for Windows as well? |
I'm not aware of any current issue like this for Windows. This bug was specific to iOS and Mac due to a change made by Apple for those operating systems. If you're experiencing an issue on Windows it is likely unrelated, so please file a new issue with detailed information so that we can investigate. Thanks! |
There is no such issue regarding this in the windows I am facing. |
For BlazorWebView we patched .NET 8 and have the fix in for .NET 9 to use the address So it's the same address on all platforms going forwards. (There's an optional switch you can use to use the legacy In the future we're considering enabling using a custom address. |
@Eilon do you know if we will get the latest fix (using 0.0.0.1 on all platforms) in a .net 8 release? I know we have the first fix attempt already in 8.0.82+ (just 0.0.0.0 when targeting ios 18), but would like to go ahead and set up our other platforms for success in a .net 8 release (w/o waiting .net 9 in a month). |
@gerneio yes the fix will be in a patch for all platforms in .NET 8 to make everything consistent, and the same code will be in .NET 9 as well. |
@Eilon Yes. It is available in .Net 8. |
.NET MAUI 6 is no longer supported so there are no more patches for it available. The only current supported version is .NET MAUI 8, and then soon .NET MAUI 9 when it comes out later this year. |
Description
Hi,
I believe I found that Blazor Hybrid does not work at all on MacOS 15.0 Beta (Sequoia).
For context, I'm the author of DevToys, which is not a MAUI app, but a AppKit app made in C#, and it use a fork of .NET MAUI's BlazorWebView to work. The app has 300k users on Windows and about 40k on MacOS.
A customer reported that on MacOS 15.0, the app is blank. I do reproduce the issue, and out of curiosity, I tried a new MAUI Blazor Hybrid app to see if the issue reproduces too, and it does, hence my ticket here.
The issue is very easy to reproduce.
Steps to Reproduce
Expectation:
A nice Blazor Hybrid app running
Actual:
A bank page
Early Investigation:
It seems like the web browser does not find Blazor. It also seems like the page is
about:blank
instead ofwwwroot/index.html
. It seems like somehow BlazorWebView fails to navigate toindex.html
fromapp://0.0.0.0
.Link to public reproduction project repository
https://github.com/DevToys-app/DevToys
Version with bug
8.0.61 SR6.1
Is this a regression from previous behavior?
No, this is something new
Last version that worked well
Unknown/Other
Affected platforms
macOS, I was not able test on other platforms
Affected platform versions
MacOS 15 Beta (Sequoia)
Did you find any workaround?
Not yet. Will post an update if I find one.
Relevant log output
No response
The text was updated successfully, but these errors were encountered: