This is accurate on a lot of levels. The Windows Runtime (WinRT) is borderline non-deterministic for projects written in .NET, relying on the ABI wrappers, as object lifetime/garbage disposal can take place "at the wrong time" internally within standard UWP components all on their own. Essentially your app can instantiate for example a virtualized ListViewItem which spins up internal UWP visual elements, app suspends for a while, a GC occurs within WinRT, and then the app crashes with a COM access violation immediately upon app restore. Microsoft's recent Modern C++ push has been by and large a welcome development. The syntax is nice and asynchronous barriers between portions of background/UI code I actually like a lot better than C#'s "async" keyword + obligatory ".ConfigureAwait(true|false)" for whether to return on the UI thread or not .. it's too easy to miss a ConfigureAwait(false) line and then call something on the UI or perhaps a method which you don't immediately know off hand (until tested 10 minutes later) whether it actually demands a UI context. Example: Launcher.LaunchUriForResultsAsync(..). Has nothing to do with a dispatcher/UI? should be safe to call from any thing thread, huh? It sure isn't.
But hey! At least crashes are caught and reported automatically with all the telemetry, so it's easy to find issues out in the wild? You would think. Unfortunately everything is basically enforcing async patterns from start to finish under UWP. Good for saturating CPU cores and responsiveness, but your call stack is now non-existent. The sum total for a crash report in the field (including stack data) winds up as:
Unhandled exception: The text associated with this error code could not be found.
System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been returned from a call to a COM component.
Good luck!
The only UWP app I bothered to put out I opted to *not* put in the store and let people sideload it instead. Thankfully Microsoft have made inroads in allowing us to let people download codesigned *.appxbundle files which will even ping your own server and deliver updates gracefully, on newer Win 10 builds at least. I regret releasing the UWP app, should have just used Win32, but I wanted to run it on my WinPhone though (since it's a wifi-only phone replacement.) It'd be great except the Windows Broker Infrastructure has a bug with regards to "energy debt" calculations even when an app is configured to "Always allow in background"... so this particular app doesn't fuckin ring reliably when an SMS/Call arrives anyway. Actually explains why skype never worked on it reliably either. Unfortunately the windows phone team have given up on life so I don't see it being addressed ever.