最代码广告位
首页>代码>android手机软件android-PSS进销存管理系统源代码下载>/android-pss进销存系统/android项目/AllInHand_CosmeticManager/src/allinhand/example/cosmeticmanager/LoginActivity.java
package allinhand.example.cosmeticmanager;

import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
import org.json.JSONObject;

import allinhand.example.service.StockAlarmService;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.NotificationManager;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;

public class LoginActivity extends Activity implements OnClickListener{
	Button loginButton;
	EditText nameEditText;
	EditText pwdEditText;
	ImageView savepwd;
	int flag=0;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		setContentView(R.layout.loginpage);
		AuthorityChange.AuthorityChangegetIntance().AddActivity(this);
		loginButton=(Button)findViewById(R.id.login_btn_login);
		loginButton.setOnClickListener(this);
		nameEditText=(EditText)findViewById(R.id.login_edit_account);
		pwdEditText=(EditText)findViewById(R.id.login_edit_pwd);
		savepwd=(ImageView)findViewById(R.id.login_cb_savepwd);
		nameEditText.addTextChangedListener(new TextWatcher() {
			
			public void onTextChanged(CharSequence s, int start, int before, int count) {
				// TODO Auto-generated method stub
				
			}
			
			public void beforeTextChanged(CharSequence s, int start, int count,
					int after) {
				// TODO Auto-generated method stub
				
			}
			
			public void afterTextChanged(Editable s) {
				// TODO Auto-generated method stub
				pwdEditText.setText("");
				savepwd.setImageResource(R.drawable.btn_check_off);
				flag=0;
				
			}
		});
		//获取当前Activity的Preferences对象
		SharedPreferences sp = getPreferences(MODE_PRIVATE);
		//从Preferences对象中获取登录信息并显示到EditText中
		nameEditText.setText(sp.getString("loginname", ""));
		pwdEditText.setText(sp.getString("password", ""));
		if (!sp.getString("password", "").equals("")) {
			savepwd.setImageResource(R.drawable.btn_check_on);
			flag=1;
		}

	}
	//记住密码事件
	public void onimgClick(View v){
		if (flag==0) {
			savepwd.setImageResource(R.drawable.btn_check_on);
			flag=1;
		}else {
			savepwd.setImageResource(R.drawable.btn_check_off);
			flag=0;
		}
		
	}
	public void onClick(View v) {
		switch (v.getId()) {
		//登录按钮事件
		case R.id.login_btn_login:
			String name=nameEditText.getText().toString();
			String pwd=pwdEditText.getText().toString();
			//获取HttpClient
			HttpClient client=new DefaultHttpClient();
			//要访问的URL
			String url="http://10.0.2.2:8080/CosmeticService/LoginByNameAndPwd.do";
			//POST提交数据
			HttpPost post=new HttpPost(url);
			JSONObject jo=new JSONObject();
			try {
				jo.put("name",name);
				jo.put("pwd", pwd);
				//客户端提交数据集合
				List<NameValuePair> params=new ArrayList<NameValuePair>();
				params.add(new BasicNameValuePair("stockJson", jo.toString()));
				//将客户端数据封装到实体中
				HttpEntity entity=new UrlEncodedFormEntity(params,"utf-8");
				//将实体添加到请求中
				post.setEntity(entity);
				//执行请求与服务器交互
				HttpResponse response=client.execute(post);
				//判断交互结果,进行处理
				if (response.getStatusLine().getStatusCode()==HttpStatus.SC_OK) {
					String result=EntityUtils.toString(response.getEntity());
					//System.out.println(result);
					if (result.trim().equals("fail")) {
						Toast.makeText(this,"用户名或密码不正确",Toast.LENGTH_LONG).show();
						}else {
							JSONObject jb=new JSONObject(result);
							Intent intent=new Intent();
							String authorityString=String.valueOf(jb.optInt("userauthority"));
							String userId=String.valueOf(jb.optString("userid"));
							String username=String.valueOf(jb.optString("username"));
							Intent serviceIntent=new Intent();
							intent.setClass(LoginActivity.this,MainActivity.class);
							AuthorityChange auth=(AuthorityChange)getApplication();
							auth.setUserId(userId);
							startActivity(intent);
							serviceIntent.setClass(LoginActivity.this,StockAlarmService.class);
							startService(serviceIntent);
							//假如用户是管理员
							if (authorityString.equals("0")) {
								AuthorityChange authorityChange=(AuthorityChange)getApplication();
								authorityChange.setAuthoritytype(0);
								authorityChange.setIslogin(true);
							}
							//假如用户是销售员
							if (authorityString.equals("1")) {
								AuthorityChange authorityChange=(AuthorityChange)getApplication();
								authorityChange.setAuthoritytype(1);
								authorityChange.setUsername(username);
								authorityChange.setIslogin(true);
							}
							//假如用户是采购员
							if (authorityString.equals("2")) {
								AuthorityChange authorityChange=(AuthorityChange)getApplication();
								authorityChange.setAuthoritytype(2);
								authorityChange.setIslogin(true);
							}
							//假如用户是库管员
							if (authorityString.equals("3")) {
								AuthorityChange authorityChange=(AuthorityChange)getApplication();
								authorityChange.setAuthoritytype(3);
								
							}
							
							
							//获取SharedPreferences.Editor对象
							SharedPreferences.Editor editor=getPreferences(MODE_PRIVATE).edit();
							String namestr=nameEditText.getText().toString();
							editor.putString("loginname", namestr);
							if (flag==1) {
								
								String pwdstr=pwdEditText.getText().toString();
								editor.putString("password",pwdstr);
								
							}else {
								editor.remove("password");
							}
							//提交信息
							editor.commit();
							
					}
				}
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
			break;
			
			}
	}
	
	@Override
	public boolean onKeyDown(int keyCode, KeyEvent event) {
		// TODO Auto-generated method stub

		if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
			dialog();
			return false;
		}
		return false;
	}
	protected void dialog() {
		AlertDialog.Builder builder = new Builder(LoginActivity.this);
		builder.setMessage("确定要退出吗?");
		builder.setTitle("提示");
		builder.setPositiveButton("确认",
				new android.content.DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						dialog.dismiss();
//						LoginActivity.this.finish();
//						System.exit(0);
						NotificationManager noManager=(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
						noManager.cancel(1);
						stopService(new Intent(LoginActivity.this,StockAlarmService.class));
						AuthorityChange.AuthorityChangegetIntance().exit();
						
						
						
					}
				});
		builder.setNegativeButton("取消",
				new android.content.DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						dialog.dismiss();
					}
				});
		builder.create().show();
	}
}
最近下载更多
julydd LV811月3日
月亮月亮
xzgg12 LV111月2日
星星
小白新手code LV110月20日
星星
fghjkl LV99月8日
月亮月亮星星
inson LV27月23日
星星星星
gwt爱学习 LV157月15日
月亮月亮月亮星星星星星星
吃鱼的猫 LV47月10日
月亮
kirito976 LV16月23日
星星
314197600 LV16月20日
星星
weareworld LV56月10日
月亮星星
最近浏览更多
natism LV8前天
月亮月亮
2496719412 LV111月22日
星星
Demo1111 LV2011月20日
太阳月亮
1194837897 LV311月17日
星星星星星星
linhe27 LV611月11日
月亮星星星星
15693227534 LV211月9日
星星星星
julydd LV811月3日
月亮月亮
xzgg12 LV111月2日
星星
陌小宋 LV210月25日
星星星星
irivn007 LV1410月24日
月亮月亮月亮星星星星
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友