HttpWebRequest粉碎应用程序Debug Release配置

时间:2014-11-22 09:03:17

标签: android xamarin httpwebrequest

我正在编写http请求以使用安全API从Web服务器检索信息(json)。 当我在AVD或设备上调试应用程序时,应用程序工作正常,但是当我发布应用程序并尝试运行已安装的.apk时,它会崩溃。 我设置了Internet权限。

非常感谢您的任何建议。 这是我的代码:

System.Net.ServicePointManager.ServerCertificateValidationCallback =
new System.Net.Security.RemoteCertificateValidationCallback(delegate { return true; });
string username = "******";
string password = "******";
string url = String.Format("https://......");

var req = (HttpWebRequest)WebRequest.Create(url);
req.Credentials = new NetworkCredential(username, password);
var response = req.GetResponse();

using (StreamReader reader = new StreamReader(response.GetResponseStream()))
    {
    var content = reader.ReadToEnd();
    MyList = JsonConvert.DeserializeObject<List<Comp>>(content);
    }

1 个答案:

答案 0 :(得分:2)

每当我在代码的调试版本和发布版本之间看到不同的行为时,我怀疑是一个链接问题。

尝试更改链接选项:项目选项&gt; Android Build&gt;链接标签。更改Release配置匹配以匹配Debug配置(我猜它是Don&#tt Link)。你不想以这种方式真正发布 - 这只是为了解决这个问题。然后在发布模式下构建并运行应用程序。如果它现在有效,那么问题就是相关的问题。

相反,您可以更改Debug配置以匹配Release配置(仅可能是Link SDK程序集)卸载应用程序,执行干净构建,然后构建并运行Debug版本以查看是否出现问题。如果它现在失败了,那么问题就是相关的问题。

有关链接的帮助,请参阅:请参阅:http://developer.xamarin.com/guides/android/advanced_topics/linking/