背景:
我建立了一个在浏览器上正常工作的Angular应用程序。在前端,我有HTML / CSS / Angular / Bootstrap,后端是Web API。因此它是完全分离的。
我把前面的代码压缩了,使用Phonegap来构建android应用。当我运行它时,我可以看到网站的第一个屏幕。我确认那里的角度代码有效,因为我可以根据用户未登录的事实看到它过滤了导航。但是当我尝试转到应用程序的任何其他页面时,我得到了一个空白屏幕,因此尝试使用PG远程调试器对其进行远程调试。每当我尝试加载除主页以外的任何内容时,我都会与目标失去连接。我没有在控制台中看到任何JS错误。
这是日志中的唯一内容:
"exception firing pause event from native"
"exception firing resume event from native"
我是否错过了可能导致此行为的某些配置部分,或者是否有另一种方法可以调试此问题?
由于您使用的是angularJS,我猜您正在本地使用网络服务器来使应用程序在浏览器上运行,因此一切似乎都可以正常工作
尽管PhoneGap使用来在file server
上运行您的应用WebView
,这类似于在没有网络服务器的浏览器上打开index.html。最重要的是,如果您可以通过只打开没有Web服务器的index.html来使您的应用程序在桌面浏览器上运行,那么当您将其构建为PhoneGap应用程序时它将可以使用。
Cross-Origin
在浏览器上测试应用程序时,您可能会遇到问题,如果您的应用程序正在进行REST API调用,或者如果您从另一个.html文件加载angularJS模板,则会发生这种情况,这些跨域限制在PhoneGap构建中会得到注意。因此,在本地浏览器上进行测试时,您可能希望在禁用网络安全性的情况下打开Chrome 。
如果您是使用网络服务器开发的应用程序进行测试,则可能具有用于加载资产或href的绝对URL,则必须将其更改为relative URL paths
。
例如,变化<a href="/#/next-page">
到<a href="#/next-page">
,或<img src="/images/logo.png">
至<img src="images/logo.png">
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句