C# Xamarin Android-网络客户端

C# Xamarin Android-网络客户端,c#,php,mysql,xamarin,webclient,C#,Php,Mysql,Xamarin,Webclient,不过,我正在尝试为android(学校项目(技术))构建一个应用程序, 我不断地在网上发现一个错误,没有回答。所以我在这里问你 我安装并运行了一台MySQL 5.6服务器,它可以正常工作。PHP单机版和Xampp用于文件目录,在浏览器中一切正常。错误发生在箭头上,异常错误是关于访问的(我想)。如果需要,我可以上传PHP文件。 第一个是按钮,第二个是下载完成时触发的事件 private void LoginButton_Click(object sender, EventArgs e) {

不过,我正在尝试为android(学校项目(技术))构建一个应用程序, 我不断地在网上发现一个错误,没有回答。所以我在这里问你

我安装并运行了一台MySQL 5.6服务器,它可以正常工作。PHP单机版和Xampp用于文件目录,在浏览器中一切正常。错误发生在箭头上,异常错误是关于访问的(我想)。如果需要,我可以上传PHP文件。 第一个是按钮,第二个是下载完成时触发的事件

private void LoginButton_Click(object sender, EventArgs e)
    {
        TextView userName = FindViewById<TextView>(Resource.Id.editTextUsername);
        TextView userPass = FindViewById<TextView>(Resource.Id.editTextPassword);

        client = new WebClient();
        url = new Uri(@"http://127.0.0.1/memento/accountcheck.php");
        //url = new Uri(@"http://127.0.0.1/memento/phpinfo.php");

        /*
        NameValueCollection parameters = new NameValueCollection();

        parameters.Add("Username", userName.Text);
        parameters.Add("Password", userPass.Text);
        */

        client.DownloadDataCompleted += Client_DownloadDataCompleted;
        client.DownloadDataAsync(url);

    }

private void Client_DownloadDataCompleted(object sender, DownloadDataCompletedEventArgs e)
    {
        Console.WriteLine(e.Result); // <------
    }
private void login按钮单击(对象发送者,事件参数e)
{
TextView用户名=FindViewById(Resource.Id.editTextUsername);
TextView userPass=findviewbyd(Resource.Id.editTextPassword);
客户端=新的WebClient();
url=新Uri(@“http://127.0.0.1/memento/accountcheck.php");
//url=新Uri(@“http://127.0.0.1/memento/phpinfo.php");
/*
NameValueCollection参数=新的NameValueCollection();
参数。添加(“用户名”,Username.Text);
添加(“密码”,userPass.Text);
*/
client.DownloadDataCompleted+=client_DownloadDataCompleted;
client.DownloadDataAsync(url);
}
私有无效客户端\u DownloadDataCompleted(对象发送方,DownloadDataCompletedEventArgs e)
{

Console.WriteLine(e.Result);//您能发布错误/异常并标记抛出的行吗?当它告诉您“检查InnerException以获取异常详细信息”时。这正是您应该做的。还要注意,您使用的是环回地址,这不起作用,因为您的服务器和android应用程序运行在不同的机器上(即使您使用的是Android emulator,它也不会共享主机的IP)。您需要使用实际的外部IP或服务器名称。Jason,非常感谢!它似乎使用了我的本地IP而不是localhost/127.0.0.1。它解决了问题!我想,它运行在同一个单元上,共享相同的IP。更通用的解决方案是通过使用DNS解析本地主机来请求当前IP地址,如图所示。您可以吗u发布错误/异常并标记抛出该错误/异常的行?当它告诉您“检查InnerException以获取异常详细信息”时。这正是您应该做的。还要注意,您使用的是环回地址,这将不起作用,因为您的服务器和安卓应用程序运行在不同的机器上(即使您使用的是Android emulator,它也不会共享主机的IP)。您需要使用实际的外部IP或服务器名称。Jason,非常感谢!它似乎使用了我的本地IP而不是localhost/127.0.0.1。它解决了问题!我想,它运行在同一个单元上,共享相同的IP。更通用的解决方案是通过使用DNS解析本地主机来请求当前IP地址,如图所示。