我正在开发一个 Windows Phone 7 应用程序,它能够在没有互联网连接的情况下工作,但如果网络可用,则可以选择从 Web 加载一些内容。
在没有 Internet 连接的情况下,如何在 Phone Emulator 中测试此应用程序?
主菜单中有一个Settions
选项,但与真实设备不同,没有禁用数据连接的选项。我想出的唯一解决方案是禁用我的开发笔记本电脑的 WiFi 适配器,但这似乎是一个终极选择。有没有办法强制模拟器在断开连接的环境中运行?
我正在开发一个 Windows Phone 7 应用程序,它能够在没有互联网连接的情况下工作,但如果网络可用,则可以选择从 Web 加载一些内容。
在没有 Internet 连接的情况下,如何在 Phone Emulator 中测试此应用程序?
主菜单中有一个Settions
选项,但与真实设备不同,没有禁用数据连接的选项。我想出的唯一解决方案是禁用我的开发笔记本电脑的 WiFi 适配器,但这似乎是一个终极选择。有没有办法强制模拟器在断开连接的环境中运行?
另一种选择是使用NetLimiter
您不仅可以关闭与应用程序的连接,还可以更改速度以模拟连接不良并查看应用程序的行为。NetLimiter 和 Fiddler 是很好的工具。
就像你说的,每当我想在没有互联网连接的情况下测试 wp7 应用程序时,我都会断开我的开发计算机与互联网的连接。你不能从模拟器中强制它,但你可以使用代码将它关闭,但这对我来说似乎工作量太大。
另一个StackOverflow 帖子。
来自WP7 应用程序中心。
看看这个问题。它有一些关于同一问题的信息。另请查看这篇文章。
您可以在代码中使用此方法来检测 Internet 连接。如果你把它作为一个静态方法放在一个静态类中,它工作得很好。
private bool InternetIsAvailable()
{
var available = !NetworkInterface.GetIsNetworkAvailable();
#if DEBUG
available = false;
#endif
if (!available)
{
MessageBox.Show("No internet connection is available. Try again later.");
return false;
}
return true;
}
有一个简单的方法...
如果您的应用不需要在线登录...桌面,请打开“Internet Explorer”>“设置”>“连接”并设置一个当然无效的代理。保存更改。现在,您应该无法再浏览网站了。完成这些步骤后,启动模拟器...