您的位置:首页 > 移动开发 > Android开发

Android登陆页面的客户端逻辑

2017-04-06 21:34 267 查看
原文网址:https://www.oschina.net/code/snippet_1022046_45660

package com.amaker.wlo;
 
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import com.amaker.util.HttpUtil;
import com.amaker.util.LoginEncryption;
 
publicclass
LoginActivity
extends Activity {
    /**
     * 登陆界面
     * @author shichengwu
     */
     
    // 声明登录按钮
    private
Button loginBtn;

    // 声明用户名、密码输入框
    private
EditText userEditText,pwdEditText;

    @Override
    publicvoid
onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        EndAllActivity.getInstance().addActivity(this);
         
        // 为美观,暂不设置标题
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        // 设置当前Activity界面布局
        setContentView(R.layout.activity_login);
         
        // 通过findViewById方法实例化组件
        loginBtn = (Button)findViewById(R.id.login);
        // 通过findViewById方法实例化组件
        userEditText = (EditText)findViewById(R.id.userEditText);
        // 通过findViewById方法实例化组件
        pwdEditText = (EditText)findViewById(R.id.pwdEditText);
         
         
         
        loginBtn.setOnClickListener(new
OnClickListener() {

            @Override
            publicvoid
onClick(View v) {

                 
                //登录
                if(validate()){
                    if(login()){
                        Intent intent =new
Intent(LoginActivity.
this,MainMenuActivity.class);
                        startActivity(intent);
                        finish();
                    }
                    else{
                        showDialog("用户名或者密码错误,请重新输入!");
                        }
                      }
                      }
             
             });
    }
     
     
    // 登录方法
    privateboolean
login(){

        // 获得用户名称
        String username = userEditText.getText().toString();
        // 获得密码
        //MD5加密后与数据库进行对比
        String pwd = LoginEncryption.string2MD5(pwdEditText.getText().toString());
        // 获得登录结果
        String result=query(username,pwd);
        if(result!=null&&result.equals("0")){
            returnfalse;
        }else{
            saveUserMsg(result);
            returntrue;
        }
    }
     
    // 将用户信息保存到配置文件
    privatevoid
saveUserMsg(String msg){

        // 用户编号
        String id ="";
        // 用户名称
        String name ="";
        // 获得信息数组
        String[] msgs = msg.split(";");
        int
idx = msgs[
0].indexOf("=");
        id = msgs[0].substring(idx+1);
        idx = msgs[1].indexOf("=");
        name = msgs[1].substring(idx+1);
        // 共享信息
        SharedPreferences pre = getSharedPreferences("user_msg",
MODE_WORLD_WRITEABLE);

        SharedPreferences.Editor editor = pre.edit();
        editor.putString("id",
id);

        editor.putString("name",
name);

        editor.commit();
    }
     
    // 验证方法
    privateboolean
validate(){

        String username = userEditText.getText().toString();
        if(username.equals("")){
            showDialog("用户名称是必填项!");
            returnfalse;
        }
        String pwd = pwdEditText.getText().toString();
        if(pwd.equals("")){
            showDialog("用户密码是必填项!");
            returnfalse;
        }
        returntrue;
    }
    privatevoid
showDialog(String msg){

        AlertDialog.Builder builder =new
AlertDialog.Builder(
this);
        builder.setMessage(msg)
               .setCancelable(false)
               .setPositiveButton("确定",new
DialogInterface.OnClickListener() {

                   publicvoid
onClick(DialogInterface dialog,
int id) {
                   }
               });
        AlertDialog alert = builder.create();
        alert.show();
    }
    // 根据用户名称密码查询
    private
String query(String username,String password){

        // 查询参数
        String queryString ="username="+username+"&password="+password;
        // url
        String url = HttpUtil.BASE_URL+"servlet/LoginServlet?"+queryString;
        // 查询返回结果
        return
HttpUtil.queryStringForPost(url);

    }  
}

如果本文对你有帮助的话,麻烦在左侧点个赞,谢谢支持。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android 登录