QQ登陆实现数据保存

来源:互联网 发布:java零基础入门书籍pdf 编辑:程序博客网 时间:2024/04/30 19:50

1.模拟QQ登陆,实现数据保存到内存中

package com.itheima28.qqlogin;import java.util.Map;import android.app.Activity;import android.os.Bundle;import android.text.TextUtils;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.CheckBox;import android.widget.EditText;import android.widget.Toast;import com.itheima28.qqlogin.utils.Utils;import com.itheima28.qqlogin.utils.UtilsOfSharedPreferences;public class MainActivity extends Activity implements OnClickListener {private static final String TAG = "MainActivity";private EditText etNumber;private EditText etPassword;private CheckBox cbRemerberPWD;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);etNumber = (EditText) findViewById(R.id.et_number);etPassword = (EditText) findViewById(R.id.et_password);cbRemerberPWD = (CheckBox) findViewById(R.id.cb_remerber_pwd);Button btnLogin = (Button) findViewById(R.id.btn_login);btnLogin.setOnClickListener(this);// 回显数据Map<String, String> userInfoMap = Utils.getUserInfo();if(userInfoMap != null) {etNumber.setText(userInfoMap.get("number"));etPassword.setText(userInfoMap.get("password"));}}@Overridepublic void onClick(View v) {// 执行登录的操作// 1. 取出号码和密码String number = etNumber.getText().toString();String password = etPassword.getText().toString();if(TextUtils.isEmpty(number) || TextUtils.isEmpty(password)) {// 弹出吐司Toast.makeText(this, "请正确输入", Toast.LENGTH_SHORT).show();return;}// 2. 判断记住密码是否被选中, 如果被选中, 存起来if(cbRemerberPWD.isChecked()) {// 当前需要记住密码Log.i(TAG, "记住密码: " + number + ", " + password); boolean isSuccess = Utils.saveUserInfo(number, password); if(isSuccess) { Toast.makeText(this, "保存成功", 0).show(); } else { Toast.makeText(this, "保存失败", 0).show(); }}// 3. 登陆成功Toast.makeText(this, "登录成功", 0).show();}}


 

 

public static boolean saveUserInfo(String number, String password) {try {String path = "/data/data/com.itheima28.qqlogin/itheima28.txt";FileOutputStream fos = new FileOutputStream(path);// 307966990##123123String data = number + "##" + password;fos.write(data.getBytes());fos.flush();fos.close();return true;} catch (Exception e) {e.printStackTrace();}return false;}


 

 

/** * 返回用户信息 * @return */public static Map<String, String> getUserInfo() {try {String path = "/data/data/com.itheima28.qqlogin/itheima28.txt";FileInputStream fis = new FileInputStream(path);// 字符流对象BufferedReader reader = new BufferedReader(new InputStreamReader(fis));// 307966990##123123String text = reader.readLine();if(!TextUtils.isEmpty(text)) {String[] split = text.split("##");Map<String, String> userInfoMap = new HashMap<String, String>();userInfoMap.put("number", split[0]);userInfoMap.put("password", split[1]);return userInfoMap;}} catch (Exception e) {e.printStackTrace();}return null;}


 

 

2.实现数据保存到SD卡

package com.itheima28.qqlogin.utils;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.InputStreamReader;import java.util.HashMap;import java.util.Map;import android.content.Context;import android.os.Environment;import android.text.TextUtils;public class UtilsOfSDCard {/** * 保存用户信息到sd卡 * @param number * @param password * @return true 成功 */public static boolean saveUserInfo(Context context, String number, String password) {try {// 判断当前的手机是否有sd卡String state = Environment.getExternalStorageState();if(!Environment.MEDIA_MOUNTED.equals(state)) {// 已经挂载了sd卡return false;}File sdCardFile = Environment.getExternalStorageDirectory();File file = new File(sdCardFile, "itheima28.txt");FileOutputStream fos = new FileOutputStream(file);String data = number + "##" + password;fos.write(data.getBytes());fos.flush();fos.close();return true;} catch (Exception e) {e.printStackTrace();}return false;}/** * 到sd卡获取用户信息 * @return */public static Map<String, String> getUserInfo(Context context) {try {// 判断当前的手机是否有sd卡String state = Environment.getExternalStorageState();if(!Environment.MEDIA_MOUNTED.equals(state)) {// 已经挂载了sd卡return null;}File sdCardFile = Environment.getExternalStorageDirectory();File file = new File(sdCardFile, "itheima28.txt");BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file)));String text = br.readLine();br.close();if(!TextUtils.isEmpty(text)) {Map<String, String> userInfoMap = new HashMap<String, String>();String[] split = text.split("##");userInfoMap.put("number", split[0]);userInfoMap.put("password", split[1]);return userInfoMap;}} catch (Exception e) {e.printStackTrace();}return null;}}


 

 

 

 

 

 

 

 

 

 

 

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 华为手机相片多怎么办? 违章照片看不了怎么办 被造谣毁名誉怎么办 眼睛得了麦粒疹怎么办 公告牌证作废怎么办 宝宝吃了护臀膏怎么办 八字五行同类强怎么办? 重装系统出现两个系统盘怎么办 看视频手机发烫怎么办 dhcp获取ip失败怎么办 苹果笔记本打不出数字怎么办 系统盘读不出来怎么办 waifai密码忘了怎么办 window xp忘记密码怎么办 winxp密码忘了怎么办 xp电脑密码忘记怎么办 xp桌面图标有阴影怎么办 联想电脑忘记登录密码怎么办 xp系统忘掉密码怎么办 xp密码忘记了怎么办 电脑忘记开机密码怎么办 注销了win7用户名怎么办 xp启动后黑屏怎么办 开机要按esc怎么办 excel产品激活失败怎么办 米粉卡激活失败怎么办 电脑死机ppt保存怎么办 电脑装系统黑屏怎么办 电脑c盘无法访问怎么办 d盘变成ntfs怎么办 系统重装卡住了怎么办 系统关机没反应怎么办 232串口打开失败怎么办 逆水寒cpu不支持怎么办 显卡被禁用了怎么办 vmvare注册错了怎么办 电脑主机未成功启动怎么办 主机未成功启动怎么办 电脑主机未能成功启动怎么办 虚拟机没有自带怎么办 错误连接为720怎么办