与ASP.NET MVC4的Android连接

时间:2013-05-07 12:27:05

标签: android asp.net-mvc database login connection

我刚刚创建了一个MVC4 WebApplication。此应用程序使用数据库(由CodeFirst创建),其中包含用户信息(aspnet Membership)和所有其他信息。

我现在正在尝试制作一个使用与MVC4 Web应用程序相同的数据库的Android应用程序。但我不知道如何实现登录系统。

我正在考虑使用用户名和密码向服务器(当前是本地)发送帖子请求。 (稍后将加密)。但我不知道如何做到这一点。

任何人都可以帮我解决登录系统问题吗? 我应该对Web应用程序进行一些更改以实现我的目标吗?

提前致谢!


更新 我现在尝试以下方法: 我刚刚编写了以下按下按钮时运行的功能

android:onClick="login"

我的java函数:

public void login(){
    String userName = "Isf";
    String password = "admin123!";

    HttpClient httpClient = new DefaultHttpClient();

    //I run my MVC Application local
    //Logon page: http://localhost:2657/Account/LogOn
    HttpPost httpPost = new HttpPost("http://10.0.2.2/Account/LogOn");

    try {
          List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);

          nameValuePairs.add(new BasicNameValuePair("username", userName));
          nameValuePairs.add(new BasicNameValuePair("password", password));

          httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
          // Response from the Http Request
          HttpResponse response = httpClient.execute(httpPost);

       } catch (IOException e) {
          Log.e("Exception", "IOException", e);
       } catch (Exception e) {
          Log.e("Exception", "General Exception", e);
       }
}

但是当我运行我的MVC项目并在Android上按下我的登录按钮时,我收到以下消息: “应用程序登录(proces com.example.login)意外停止。请再试一次。” (我用我的手机和模拟器试了一下) 有谁知道我做错了什么?

2 个答案:

答案 0 :(得分:2)

您使用的是asyncTasks吗?请求无法在主线程中发送,asynctask将创建一个新线程。 Android上的开发者网站上有一些很好的文档:asynctask

答案 1 :(得分:0)