Android Ionic仿真ios仅适用于--livereload

Android Ionic仿真ios仅适用于--livereload,android,ios,ionic-framework,ionic,Android,Ios,Ionic Framework,Ionic,我正在构建一个简单的ionic应用程序,当我使用ionic serve--lab进行测试时,一切看起来都很棒,然而,当我尝试使用ionic Simulate ios或ionic Simulate android在模拟器上进行模拟时,该应用程序不会加载(似乎所有的JS都没有通过)。我能够附加调试器,并且没有任何控制台错误 但是,当我尝试使用ionic Simulate ios运行应用程序时,livereload似乎一切正常 我从头开始尝试了另一个示例应用程序,排除了我的机器环境,效果很好 关于如何

我正在构建一个简单的ionic应用程序,当我使用
ionic serve--lab
进行测试时,一切看起来都很棒,然而,当我尝试使用
ionic Simulate ios
ionic Simulate android
在模拟器上进行模拟时,该应用程序不会加载(似乎所有的JS都没有通过)。我能够附加调试器,并且没有任何控制台错误

但是,当我尝试使用ionic Simulate ios运行应用程序时,livereload似乎一切正常

我从头开始尝试了另一个示例应用程序,排除了我的机器环境,效果很好


关于如何让模拟器在没有livereload的情况下工作,有什么想法吗?

我今天也遇到了同样的问题。我通过删除ios构建未检测到的某些角度依赖项来解决此问题。检查jslint是否有任何警告,这些警告可能提供有关哪些依赖项可能被错误注入或丢失的更多信息


有关更多信息,请参见爱奥尼亚论坛。

在我的案例中,死亡的白色屏幕是由对鲍尔组件的错误引用引起的

对于我们的构建过程,bower组件的相对位置与应用程序打包到“www”(bower组件复制到根目录)时的相对位置“源”不同

提供应用程序时,以下参考有效(如果您将鼠标悬停在Chrome inspector中的链接上,“.”将被删除),但在设备/模拟器上启动时不起作用:

<script src="../bower_components/angular/angular.js"></script>

实时重新加载之所以有效,是因为设备的文件系统没有为应用程序提供服务。相反,Ionic从主机为其提供服务,可能在浏览器中进行测试时,错误的相对路径(“..”)会被默默忽略

按照问题中的解决方法修复以下路径:

<script src="bower_components/angular/angular.js"></script>

悬而未决的问题是为什么应用程序的任何组件都不会抛出明显的错误。

1。发现错误 像这样开始你的模拟

 $ ionic emulate android -l -c
这将通过livereload进行模拟,并登录到您的控制台

现在,您应该看到导致错误的原因,登录到终端

2.缺少Cordova白名单插件? 通常缺少Cordova白名单插件。如您所知,只需执行以下步骤即可使该插件正常工作

$ ionic plugin add https://github.com/apache/cordova-plugin-whitelist.git
如果尚未添加

在项目根目录中打开
config.xml
,并将此行添加到
标记中

<allow-navigation href="*" />


在我的例子中,问题是由于在我的index.html中有一个
,它没有阻止爱奥尼亚查找本地托管的文件(通过--livereload),但完全阻止爱奥尼亚在捆绑的iOS或Android应用程序中查找文件。

我也有同样的问题,但似乎没有人对此问题有任何经验。我的第一个检查始终是
爱奥尼亚平台删除ios
爱奥尼亚平台添加ios
。尝试过?你在模拟之前尝试过构建吗?我也遇到了这个问题,在浏览器中运行良好,无需实时重新加载,当我在模拟器中尝试时,只有一个白色屏幕,但我可以将文本添加到正在加载的文件中。。。似乎是JS错误,但日志中没有解决问题?