Универсальное приложение Windows Phone 8.1 аварийно завершает работу при слишком быстрой прокрутке в WebView

Я пытаюсь загрузить html-контент из строки с помощью WebView.NavigateToString. Страница загружается нормально, но когда я прокручиваю до загрузки всего содержимого, приложение аварийно завершает работу. Отладчик в Visual Studio 2013 не обнаруживает сбой, вместо этого сообщает, что приложение завершилось нормально. Использование памяти приложением также низкое, около 50 МБ.

Это код, который я использовал для перехода на страницу с помощью WebViewer.

MainPage.cs

public MainPage()
    {
        this.InitializeComponent();

        this.NavigationCacheMode = Windows.UI.Xaml.Navigation.NavigationCacheMode.Required;
    }


    private void article1_Click(object sender, RoutedEventArgs e)
    {
        Frame.Navigate(typeof(webviewpage),"<!doctype html><html><head><style>img {display: block;margin-left: auto;margin-right: auto;margin-top: 20px; margin-bottom: 20px; width: 100%; height: auto} li { font-size: 2em; } ul { font-size: 25px; } iframe { width: 950; height: 720; display: block;margin-left: auto;margin-right: auto} blockquote { font-size: 3em; font-style:italic; }</style></head><body><p><b>[Vídeo] Os melhores jogos gratuitos para Windows Phone #3</b></p><p style=\"text-align: justify;\">Hoje temos mais uma vez uma dica de 5 games gratuitos para Windows Phone. Se o seu jogo favorito não aparecer nesta seleção, confira os <a href=\"http://www.wpmania.com.br/2014/06/26/video-5-jogos-gratuitos-estilo-plataforma-01/\" target=\"_blank\">outros vídeos</a> pois ele pode estar lá e, caso não esteja, deixe o nome dele nos comentários para que o nosso parceiro Marcos possa fazer o vídeo com a dica para os demais leitores!</p><p style=\"text-align: justify;\"><strong>Sem mais delongas, confira o vídeo abaixo: </strong></p><p><iframe src=\"https://www.youtube.com/embed/rDiL8Z_nz0k\" width=\"640\" height=\"360\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"></iframe></p></body></html>");            
    }

webviewpage.cs

public webviewpage()
    {
        this.InitializeComponent();
    }

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        browser.NavigateToString(e.Parameter.ToString());
    }

webviewpage.xaml

<Page
x:Class="App2.webviewpage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App2"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

<Grid>
    <WebView Name="browser"></WebView>
</Grid>

The complete solution can be downloaded here: http://speedy.sh/aedfb/App2.rar .The app crashes less often when using the emulator compared to a real device (Lumia 520 in my case). Pick an article an article and scroll down as fast as you can and the app will crash.

Мой вопрос в том, что вызывает сбой приложения, или кто-нибудь знает, как я могу отладить сбой? Даже если html не содержит изображений или фреймов, он все равно падает.


person UrbRang    schedule 15.08.2014    source источник
comment
Я испытываю ту же ошибку. Никаких исключений не возникает. И никаких сообщений об ошибках при загрузке в магазин (как бета-приложение).   -  person tobi.at    schedule 22.08.2014
comment
Я снял видео о том, как сделать так, чтобы приложение вылетало youtu.be/-hUfrD8ke7o.   -  person UrbRang    schedule 28.08.2014


Ответы (1)


По-видимому, ошибка в Windows Phone 8.1, о которой сообщается, что она работает с версии 8.10.14176.xx.

Полное обсуждение см. по адресу: http://social.msdn.microsoft.com/Forums/windowsapps/en-US/854abfa2-5312-4583-92d9-26430c7f5d9c/universal-app-webview-crashing.-when-scrolling-windows-phone-81?forum=wpdevelop#2344d0b6-f32c-4ff7-b0a5-b41d04c26e2c

person Markus Nordstrønen    schedule 05.10.2014