gpt4 book ai didi

c# - MonoDroid HttpWebRequest 和 WebClient 不可靠?

转载 作者:太空狗 更新时间:2023-10-29 21:51:21 25 4
gpt4 key购买 nike

我在 MonoDroid 中使用 Webrequests 时遇到了很多麻烦,并且随机超时。我的代码工作正常,但有时所有请求都超时并且不起作用。

我已确认我的请求中使用的网络服务没有问题。

这里是一些代码的例子,我可以用它来使用 MonoDroid 从网络服务请求一些数据:

bool bolOk = false;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create ("http://www.website.com/service/");
request.Timeout = 20000;
request.Credentials = gv_objCredentials;

using (HttpWebResponse response = (HttpWebResponse)request.GetResponse ()) {
bolOk = response.StatusCode == HttpStatusCode.OK;
}

如您所见,这是基本的东西。我总是在使用 ThreadPool.QueueUserWorkItem 或 TaskFactory 的 UI 的另一个线程上使用上述代码。

我注意到,如果请求从我的应用程序开始超时,并且我将其插入我的计算机,然后从 MonoDevelop 调试该应用程序,则请求不会超时。我不确定这是否意味着什么。这类似于在与手机相同的网络上使用浏览器从我的计算机测试 Web 服务。 Web 服务始终可以正常工作。

从 MonoDroid 发出 Web 请求的最佳方式是什么?

如果网络服务运行正常,我如何确保我的请求始终成功并且不会超时?

最佳答案

我在 Xamarin 4.2.6 和 4.2.8 上遇到了问题。

感谢 Xamarin 的支持,他们发现了这个问题,并建议我在我的项目属性中将我的构建定位到 armeabi-v7a 而不是 armeabi(描述了一些多核处理器问题 here)

根据您是否计划支持多核处理器,您应该查看我们的 this post并且可能需要手动编辑您的 .csproj 文件。

关于c# - MonoDroid HttpWebRequest 和 WebClient 不可靠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11111163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com