Closed captainjono closed 3 years ago
Apart from the attached logs, i cant provide anymore info.
The crashing process com.apple.WebKit.WebContent
is from Apple, not Microsoft.
It's no doubt related on how your code is interacting with WKWebView but you are providing us no details about it.
Can i please get help on debugging this issue?
Apple are the only ones who can provide more details about what could cause the crash inside their process.
To get help you should, minimally, file a feedback issue with Apple [1].
Better yet would the to file a DTS [2], which might not be free but developer accounts usually get 2 free "tickets".
[1] https://feedbackassistant.apple.com [2] https://developer.apple.com/support/technical/
If you get some details, from Apple, and can share more details about what your code is doing then we might be able to guess some possible causes. However there's not enough details in your report to even start guessing what this could be.
Sigh. I got better feedback from the CEF forums. @chamons recommended we switch to Xamarin forms / WebView to get better stability and support. i sold that to my company, WHAT A FOOL i was! its like no one has ever used this platform before for anything but calling aspnet.
In 1 breath you tell me to provide more info, and in the other, you tell me that only Apple can tell me...I didnt come in here with guns blazing looking to blame, I came here as a cross platform Dev who is onboarding platforms rapidly, seeing weird behavior that doesnt replicate anywhere but WKWebView, and is quickly learning about how Apple WebKit is differs from Chrome WebKit.
Im reaching out for support and its not unreasonable to ask for advice on this complex issue that is occurring for no good reason.
It's no doubt related on how your code is interacting with WKWebView but you are providing us no details about it.
There is no documentation explaining anything i need to be aware of in any guide. No NOTEs, WARNINGs, or HINTs
Our app is as basic as it gets:
Testing:
I will be opening an Apple support ticket and i'll start investigating Unity as a backup plan.
CC @davidortinau
This is the best advice I could give you with what you provided. A crash report from an Apple application is not helpful for us to diagnose a problem, nor suggest any type of action, recommendation or guidance.
If you can provide us with a test case that reproduce the issue then we'll have another look at the issue. It might be related to the SDK (in which case we might be able to help) or simply something specific to Apple's WKWebKit (and your ticket with them should help).
@spouliot The WebKit team have confirmed that this is a bug with WkWebView. Thank you for your effort in reviewing here.
I'm glad the root issue was identified. Thanks for closing the loop with us!
Steps to Reproduce
Inside of a WkWebView (Xamarin forms custom reneder) I am loading a SPA. The SPA uses a ServiceWorker which calls indexDb, crypto, performs offline caching and other services.
I have been debugging this issue for multiple weeks but cannot find a solution. At first i thought WkWebView was hitting well-known memory limits, so i offloaded the crypto to my host App and used the JS bridge to transfer results BUT this only had the effect of pushing the crash to my indexDb calls about 10 lines south (i do many many indexDb calls before this successfully). So it kind of feels memory related.
The renderer process crashes and recovers itself.
didTerminate
gets called. Apart from the attached logs, i cant provide anymore info. Can i please get help on debugging this issue? Am i not holding onto a variable i should be? CAn i get anymore details on the types of things in the JS world that can cause memory pressure or types of code that could leak if this is WkWebView specific?This code does not crash on Chrome based browsers. Im attempting to switch from Chrome to WkWebView and this a hard blocker.
Expected Behavior
WebContent process does not crash and JS calls succeed
Actual Behavior
Crash everytime, no matter the memory pressure on the device.
Environment
Build Logs
Example Project (If Possible)