我想在模拟器/模拟器中运行时与其他服务器通话。
看起来像用于提及模拟器的device.platform,但知道它只是说" iOS"。用户代理似乎也无法区分。
理想情况下,该解决方案适用于所有平台,但我会使用Android和iOS,或者事实上任何有用的东西!
答案 0 :(得分:3)
对于iOS我只检查模型 - 如果匹配/ x86 /那么它是模拟器(直到Apple发布英特尔iOS设备)。
function isRunningInSimulator(device) {
// Only valid after deviceReady
return device && device.model.match(/x86/);
}
答案 1 :(得分:2)
在最新版本的设备插件(https://www.npmjs.com/package/cordova-plugin-device)中,现在有一个isVirtual属性来表示这一点。
答案 2 :(得分:1)
我不知道是否可以检测到。一个“解决方法”是使用任务管理器(grunt,gulp,无论如何)将配置文件从文件夹复制到其他文件夹。然后,不是在命令行运行“cordova run android”(示例),而是运行从一个特定文件夹(即:开发或生产)复制配置文件的任务,应用程序读取复制的文件。 / p>
您可以在“替换文字取决于环境”
部分查看http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/