我使用模拟器开发了 WP7 应用程序。一切都很棒。为了与服务器通信,我使用了 WebClient 和 RestClient。但是要在真实设备上测试应用程序 - 我大吃一惊。
1)
private void LoadData()
{
var webClient = new WebClient();
webClient.DownloadStringCompleted += DownloadStringCompleted;
webClient.DownloadStringAsync(new Uri(Constants.Url1));
//Point_1
}
private void DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
//Point_2
}
在 Point_1 和 Point_2 之间的模拟器上 0.8-1.2 秒。在 Point_1 和 Point_2 之间的真实设备 (HTC Radar WP7.8) 上 15-20 秒。
2)
var request = new RestRequest(url) {Method = Method.POST};
//Point_3
RestClient.ExecuteAsync(request, response =>
{
//Point_4
}
在 Point_3 和 Point_4 之间的模拟器上 0.3-0.5 秒。在 Point_3 和 Point_4 之间的真实设备 (HTC Radar WP7.8) 上 18-22 秒。
我的电脑和手机在同一个无线网络中。我有三个问题:
第一:正常吗?
第二:为什么会这样?
第三:我该如何解决?