Android 登陆功能的实现。
来源:互联网 发布:it行业 云计算 编辑:程序博客网 时间:2024/05/01 05:22
做android开发时间不长,与服务器打交道基本不会,花了二天时间才把登陆功能实现。下面讲一下实现过程。
s首先,导入两个包:volley 框架包和gson包
compile files('libs/volley_source.jar')compile 'com.google.code.gson:gson:2.8.0'
z再次,核心代码:
private void init() { loginAccount = (EditText) findViewById(R.id.login_account); loginPassword = (EditText) findViewById(R.id.login_password); loginBtn = (Button) findViewById(R.id.login_btn); loginBtn.setOnClickListener(new Button.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub String account = loginAccount.getText().toString();//账号 String password = loginPassword.getText().toString();//密码// 判断输入是否为空 if (!TextUtils.isEmpty(account) && !TextUtils.isEmpty(password) ) { HashMap map = new HashMap<String, String>(); map.put("UserName", account); map.put("UserPass", password); loginRequest(Request.Method.POST, UrlConstance.APP_URL, map); } else { Toast.makeText(LoginActivity.this, "账号或者密码有误", Toast.LENGTH_SHORT).show(); } } }); } String resultCode; // post方法 url地址 参数 private void loginRequest(int post, final String appUrl, final HashMap map) { StringRequest stringRequest = new StringRequest( post, appUrl, new Response.Listener<String>() { @Override public void onResponse(String s) { if (map != null) {// Gson 直接解析 UserBaseInfo类 这个类包含一个code和 一个msg实体类 msg中包含用户的信息// 如果map(输入框输入的不为空) 进入Gson解析 try { JSONObject jsonObject = new JSONObject(s); resultCode = jsonObject.getString("code"); } catch (JSONException e) { e.printStackTrace(); } if (resultCode.equals("1")){// 如果userBaseInfo.getCode().equals(1)则再次解析对msg解析 这次是 UserBaseInfo info = new Gson().fromJson(s, new TypeToken<UserBaseInfo>(){ }.getType());// Intent intent = new Intent(LoginActivity.this,MainActivity.class); startActivity(intent); }else { Toast.makeText(getApplicationContext(), "用户名或密码错误1", Toast.LENGTH_LONG).show(); } }else { Toast.makeText(getApplicationContext(), "用户名或密码错误2", Toast.LENGTH_LONG).show(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { Log.e("LoginActivity", "volleyError:" + volleyError); } }) { @Override protected Map<String, String> getParams() throws AuthFailureError { return map; } }; mQueue.add(stringRequest); }
1 0
- Android 登陆功能的实现。
- android端登陆功能实现
- Servlet登陆功能的实现
- 登陆功能的代码实现
- android实现登陆注册记住密码功能
- Servlet小的登陆功能的实现
- 登陆界面软件自动更新功能的实现
- 图片登陆验证功能的实现
- javaWeb注册,登陆,注销功能的实现
- Tomcat__实现简单的登陆功能
- 安卓登陆功能的实现
- ios ShareSDK 分享、登陆功能的实现
- JSP的登陆验证功能实现
- 无xml的springmvc实现登陆功能
- 第三方登陆功能的实现
- 基于Struts2和Android的简单登陆注册功能的设计与实现(待完善)
- Volley实现登陆功能
- android的登陆界面实现
- MySQL 教程
- Servlet学习之五分页算法
- 1.给出一个Person类里面包含姓名、年龄、成绩,声明5个Person对象数组,要求对数组中的内容进行排序,排序规则如下:按成绩由高到低排序,如果成绩一样,按年龄由高到低排序。
- Sublime Text 2 快捷键
- Spinner的简单使用
- Android 登陆功能的实现。
- ios项目打包
- shader Cg 基本数据类型
- Mysql中的load语句对null的处理
- HYSBZ 2588Spoj 10628. Count on a tree
- numa distance 2
- 数组中出现次数超过一般的数字
- 《C++ Primer Plus(第六版)》(5)(第四章 复合类型 答案2)
- 连续输入密码错误3次,第二天才能登录