2017-06-03 61 views
0

我有一个根页面,其中包含一个SplitView它包含rootFrame。我在这个框架中显示我的应用程序的页面。在UWP应用程序导航导致内存泄漏

<SplitView DisplayMode="Overlay"> 
    <SplitView.Pane> 
     <Grid/> 
    </SplitView.Pane> 
    <Frame x:Name="rootFrame"/> 
</SplitView> 

我从一个页面导航到另一个与此代码

myRootPage.rootFrame.Navigate(typeof(MySecondPage)); 

的问题是,经过几个导航来回内存使用率增加和最终应用程序崩溃!

在Visual Studio中使用Memory Profiler时,我注意到导航回来后发生了巨大的增加。但我不知道我应该在报告中看到什么原因。

如何避免这种情况?任何帮助深表感谢。

+0

哦坏消息!这是因为Microsoft Ad SDK! – Blendester

回答

0

设置NavigationCacheModeNavigationCacheMode.Required,因此该应用就不会在每次您导航到,但只在第一次时间为您创建页面的新实例:

<Page <!-- some unrelated XAML code --> 
     NavigationCacheMode="Required" 
     >