Java 如何使用Android通过HTTP连接简单登录Google?

Java 如何使用Android通过HTTP连接简单登录Google?,java,android,http,login,Java,Android,Http,Login,我看到了一些关于如何登录谷歌的问题,但所有的答案都是关于身份验证和谷歌api的。我想要一个简单的谷歌登录,只是为了检查用户是否存在(我不打算对用户帐户做任何事情(访问电子邮件等…)。当用户通过http连接登录时,用户填写电子邮件和密码。 问题是,即使我输入了错误的电子邮件或密码,它仍会继续登录。我不知道我是否使用了错误的谷歌网站登录或是什么 以下是函数调用和google登录网站: new LoginIntoGoogle().execute(new String[] {"https://accou

我看到了一些关于如何登录谷歌的问题,但所有的答案都是关于身份验证和谷歌api的。我想要一个简单的谷歌登录,只是为了检查用户是否存在(我不打算对用户帐户做任何事情(访问电子邮件等…)。当用户通过http连接登录时,用户填写电子邮件和密码。 问题是,即使我输入了错误的电子邮件或密码,它仍会继续登录。我不知道我是否使用了错误的谷歌网站登录或是什么

以下是函数调用和google登录网站:

new LoginIntoGoogle().execute(new String[] {"https://accounts.google.com/ServiceLogin?"});
这就是代码所做的:

private class LoginIntoGoogle extends AsyncTask<String, Void, String> {
    @Override
    protected String doInBackground(String... url) {
        // Start HTTP connection and send the database to the web server
        DefaultHttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost(url[0]);

        try {
            // Add your data
            List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
            nameValuePairs.add(new BasicNameValuePair("Email", ""+userEmail));
            nameValuePairs.add(new BasicNameValuePair("Passwd", ""+passtext.getText().toString().trim()));
            nameValuePairs.add(new BasicNameValuePair("signIn", "Login"));

            // Execute HTTP Post Request
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            HttpResponse response = httpclient.execute(httppost);

            if (response.getStatusLine().getStatusCode() < 300 && response.getStatusLine().getStatusCode() >= 200) {
               System.out.println(response.getStatusLine().getStatusCode());

               Editor editor = mPrefs.edit();
               editor.putString("login_status", "Logged into your google account");
               editor.commit();

               return "Logged into your google account";
            }
            else {
               Editor editor = mPrefs.edit();
               editor.putString("login_status", "Problem to login into your google account");
               editor.commit();

               return "Problem to login into your google account";
            }
私有类LoginToLogle扩展了AsyncTask{
@凌驾
受保护的字符串doInBackground(字符串…url){
//启动HTTP连接并将数据库发送到web服务器
DefaultHttpClient httpclient=新的DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(url[0]);
试一试{
//添加您的数据
List nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“电子邮件”,“用户电子邮件”);
添加(新的BasicNameValuePair(“Passwd”和“+passtext.getText().toString().trim());
添加(新的BasicNameValuePair(“登录”);
//执行HTTP Post请求
setEntity(新的UrlEncodedFormEntity(nameValuePairs));
HttpResponse response=httpclient.execute(httppost);
if(response.getStatusLine().getStatusCode()<300&&response.getStatusLine().getStatusCode()>=200){
System.out.println(response.getStatusLine().getStatusCode());
Editor=mPrefs.edit();
putString(“登录状态”,“登录到你的谷歌账户”);
commit();
返回“登录到您的谷歌帐户”;
}
否则{
Editor=mPrefs.edit();
putString(“登录状态”,“登录你的谷歌账户有问题”);
commit();
返回“登录您的google帐户时出现问题”;
}

您必须使用加密,因为您正在通过internet传输个人数据


您应该查看最近发布的Google playstore服务。请阅读。 看看这个

希望这有帮助