qq简单登陆界面 的学习

本功能主要实现了   qq号以及密码的保存,使用了sharedpreferences来实现,主要用到了一些sharedpreferences 的一些写入及读取,以及MD5简单的加密算法

接下来上代码

1 登陆代码

package com.djf.qqlogin;

import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {
private EditText et_number;
private EditText et_password;
private Button   okButton;
private Button   cancelbutton;
private CheckBox mycBox;
private SharedPreferences sp;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		et_number = (EditText) findViewById(R.id.et_number);
		et_password = (EditText) findViewById(R.id.et_password);
		okButton = (Button) findViewById(R.id.ok);
		cancelbutton = (Button) findViewById(R.id.cancel);
		mycBox = (CheckBox) findViewById(R.id.cb);
		//完成sp的初始化
		 sp = getSharedPreferences("config", MODE_PRIVATE);
		 String qqString1 = sp.getString("qq", "");
		 String password1 = sp.getString("password", "");
		 et_number.setText(qqString1);
		 et_password.setText(password1);
	}
	
	public  void  ok(View view) {
		String qqString = et_number.getText().toString().trim();
		String password = et_password.getText().toString().trim();
		if (TextUtils.isEmpty(qqString)||TextUtils.isEmpty(password)) {
			Toast.makeText(this, "qq号或者密码不能为空", 0).show();
		}
		else {
			if (mycBox.isChecked()) //把用户名和密码记下来
			{
				Editor editor = sp.edit();
				editor.putString("qq", qqString);
				editor.putString("password", MD5utils.encode(password));
				editor.commit();
				Toast.makeText(this, "保存成功", 0).show();
			}
		}
	}
}

 2加密代码

package com.djf.qqlogin;

import java.security.MessageDigest;

public class MD5utils {
	public static String encode(String password) {
		try {
			MessageDigest digest = MessageDigest.getInstance("md5");
			byte[] results = digest.digest(password.getBytes());
			StringBuilder sb = new StringBuilder();
			for(byte b : results){
				int number = b&0xff;
				String hex = Integer.toHexString(number);
				if(hex.length()==1){
					sb.append("0");
				}
				sb.append(hex);
			}
			return sb.toString();
		} catch (Exception e) {
			e.printStackTrace();
			return "";
		}
	}
}

 

posted @ 2014-10-17 15:54  jiefeiduan  阅读(376)  评论(0编辑  收藏  举报