设为首页 加入收藏

TOP

Android访问webservice.客户端登录注册(一)
2014-11-24 07:40:31 来源: 作者: 【 】 浏览:0
Tags:Android 访问 webservice. 客户端 登录 注册

今天把登录注册写了一下,百度解决了两个问题:


1.模拟器输入中文,就长按然后选择谷歌输入法就好


2.得到自定义的Dialog上的组件信息,主要要通过view获得,不能直接就用findviewbyid


之前的saveUser 和 findUserByName也简单的封装成了函数


界面如下,一切从简单处理


后台打印处理结果


关于这个对话框,处理逻辑比较麻烦。使用SharedPreferences保存一个变量来控制对话框的出现。第一次登陆的时候要出现,登录成功后,下次一次就不用弹出了,如果出现错误,这个对话框还要出现。



代码


package seu.xin.webservice;


import java.io.IOException;


import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParserException;


import seu.xin.entity.UserInfo;


import com.google.gson.Gson;


public class WebserviceActivity extends Activity {
/** Called when the activity is first created. */
private static final String NAMESPACE = "http://10.6.11.20/";
private static String URL = "http://10.6.11.20:8080/webservicedemo/services/webservice";
private static final String SAVE_METHOD_NAME = "save";
private static final String FIND_METHOD_NAME = "findUserByName";
private static String SOAP_ACTION = "http://10.6.11.20:8080/webservicedemo/services/";
AlertDialog loginRegDialog ;
SharedPreferences sp ;



@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
sp = this.getSharedPreferences("data",MODE_WORLD_READABLE);
boolean isFirst = sp.getBoolean("first", true);
if(isFirst){
showloginRegDialog();
return;
}else{
System.out.println("isFirst-------->"+isFirst);
}

}

public void showloginRegDialog() {
// TODO Auto-generated method stub
LayoutInflater factory = LayoutInflater.from(WebserviceActivity.this);
final View loginRegView = factory.inflate(R.layout.login, null);
AlertDialog.Builder builder = new AlertDialog.Builder(WebserviceActivity.this);
builder.setIcon(R.drawable.dialog_login)
.setTitle("Welcome to our app")
.setView(loginRegView)
.setPositiveButton("登陆", new DialogInterface.OnClickListener() {

@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
EditText etName = (EditText)loginRegView.findViewById(R.id.login_name);
EditText etPassword= (EditText) loginRegView.findViewById(R.id.login_password);
String name = etName.getText().toString();
String password = etPassword.getText().toString();
System.out.println("login name"+name+"password"+password);

UserInfo loginUser = new UserInfo();
loginUser = findUserByName(name);
if(name.equals("") || password.equals("")){
Toast.makeText(WebserviceActivity.this, "请输入用户名和密码", Toast.LENGTH_LONG).show();
System.out.println("请输入用户名和密码");
showloginRegDialog();
}else if(loginUser == null){
Toast.makeText(WebserviceActivity.this, "不存在此用户", Toast.LENGTH_LONG).show();
System.out.println("不存在此用户");
showloginRegDialog();
}else if(password.equals(loginUser.getPassword())){
Toast.makeText(WebserviceActivity.this, "登陆成功", Toast.LENGTH_LONG).show();
System.out.println("登陆成功");
Editor editor = sp.edit();
editor.putString("name", name);
editor.putString("password", password);
editor.putBoolean("first", false);
editor.commit();

}else{
Toast.makeText(WebserviceActi

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Shell编程检测监控MySQL的CPU占用.. 下一篇OK6410裸机简单的NAND FLASH驱动

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 并发工具类:提 (2025-12-25 20:25:44)
·Java面试技巧:如何 (2025-12-25 20:25:41)
·Java并发编程中的线 (2025-12-25 20:25:38)
·C 语言 - cppreferen (2025-12-25 19:50:27)
·《C 语言入门教程》 (2025-12-25 19:50:23)