【发布时间】:2016-03-04 09:08:24
【问题描述】:
我的 WinRT 应用程序(仅限 Windows Phone)遇到了这个奇怪的问题。该应用程序由多个页面组成,它使用动画来显示模仿 W10M 中的汉堡菜单的侧面菜单。应用程序首次启动时动画和应用程序性能非常好,但在导航到某些页面(例如 3 或 4 个页面)后,应用程序性能变得越来越差。我没有任何代码在 UI 线程或任何其他线程的后台运行。
我缺少关于 WinRT 中导航的内容吗?这真的很奇怪,我不知道是什么原因造成的。
【问题讨论】:
-
您是否尝试查看诊断工具 CPU 配置文件?
-
删除所有动画(可能一个一个)。可能会有一个动画狂奔或两个动画互相争斗。通过更改可见性来显示/隐藏菜单,而不是精确定位“邪恶”动画(如果这是问题)你在 Load/Loaded/Navigated 和类似的事件处理程序中有任何代码吗?
-
@FilipSkakun 在手机上调试应用程序时,我的诊断工具无法正常工作,因为当应用程序关闭后 VS 开始构建报告时出现空异常,但在模拟器中,它们只能工作美好的。但是在模拟器上使用它们就不好了,因为计算机的 CPU 速度更快,而且模拟器中不会出现性能问题。
-
好吧,如果你泄露了一些东西 - 你很可能会在手机和 PC 上泄露,所以内存诊断可能会有所帮助。
-
@FilipSkakun 我在模拟器上全新安装应用程序时运行了内存分析,最大内存使用量为 60MB(每次加载所有页面两次后)我还说 GC 启动并声明内存将其降至 45-50MB 左右。所以我认为我的应用程序没有泄漏问题。
标签: c# xaml windows-runtime winrt-xaml