带有AngularJS的Windows Phone 10 UWP随机崩溃

时间:2016-03-17 08:54:39

标签: angularjs win-universal-app winjs

我已经使用带有AngularJS的WinJS为Windows Phone 10编写了两个应用程序。使用的版本: AngularJS 1.4.9(我也试过降级到1.3.20) WinJS 4.4.0 Angular.WinJS 4.4.0

现在,应用程序在模拟器上运行良好,但在设备本身上随机崩溃。我在设备上启用了dev模式来查看崩溃转储。这是我得到的:

Dump File:  Ring Times - 32507DG-InfoTec.RingTimes with exception C0000194 on 3-17-2016 07.36.dmp : Ring Times - 32507DG-InfoTec.RingTimes with exception C0000194 on 3-17-2016 07.36.dmp
Last Write Time:    17.03.2016 07:36:26
Process Name:   wwahost.exe : wwahost.exe
Process Architecture:   ARM
Exception Code: 0xC0000194
Exception Information:  
Heap Information:   Present

可悲的是,没有给出异常信息。多次尝试但在每个转储文件中都缺少异常信息。

我将额外的异常处理添加到应用程序中捕获AngularJS异常并将它们写入文件,然后在全局WinJS错误处理(WinJS.Application.onerror)之后捕获所有内容并将其写入文件但在两种情况下都没有文件写的。 有时您只需在设备上打开应用程序,10-20秒后应用程序崩溃。在此期间没有任何事情发生,没有用户交互而后台服务没有运行任何东西。

任何经历过相同或类似情况的人,或者能指出正确的方向吗?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

好的我自己修好了。我不确定究竟是什么造成了这种情况,但我可以将其缩小范围。这就是我所做的。

  • 降级为AngularJS版本1.3.10。我之前使用过1.4.9。 AngularJS-WinJS库不适用于1.5.x版本。由transclude指令引起的已知错误将ng-transclude =“true”添加到元素中。我不相信这是因为我降级了,但我想提及它,因为我觉得应用程序现在表现得更稳定。
  • 删除了AngularJS的手动引导。我之前在两个应用程序中所做的是在WinJS应用程序的onactivated事件中手动引导AngularJS。我删除了所有代码并将ng-app指令添加到标记中。

正如我之前所说,我不知道究竟是什么导致了随机崩溃,但上述两点似乎有很多帮助。从那时起没有崩溃。 希望它可以帮助别人