最近没事,想用做个andriod应用,登陆学校教务系统,然后查找课程成绩,可刚刚在网上找代码时,自己改了下,可是没反应,我会点java,求解释,代码有问题吗?
package cn.yzz.AndroidLogin;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;import java.util.ArrayList;
import java.util.List;import org.apache.http.HttpResponse;
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.cookie.Cookie;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;public class AndroidLoginActivity extends Activity {
//属性
private EditText username;
private EditText password;
private Button login;
private Intent intent;
List<Cookie> cookies; //保存获取的cookie
HttpClient client = new DefaultHttpClient();
HttpResponse httpResponse;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//添加登录按钮监听
login = (Button)findViewById(R.id.userlogin);
login.setOnClickListener(ocl);
}
//创建按钮监听器对象
OnClickListener ocl = new OnClickListener(){
public void onClick(View arg0) {
String uriAPI = "http://bkjw.xznu.edu.cn/Login.aspx";
username = (EditText)findViewById(R.id.username);
password = (EditText)findViewById(R.id.password);
/* 建立HTTP Post连线 */
HttpPost httpRequest = new HttpPost(uriAPI);
List<NameValuePair> params = new ArrayList<NameValuePair>();
/**
* 以下三个数据就是我们的之前在POST里的数据,不用在意验证码
*/
params.add(new BasicNameValuePair("Account",username.getText().toString()));
params.add(new BasicNameValuePair("PWD",password.getText().toString()));
try {
// 发出HTTP request
httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
// 取得HTTP response
httpResponse = client.execute(httpRequest); //执行
// 若状态码为302 ok
if (httpResponse.getStatusLine().getStatusCode() == 302) { //返回值正常
System.out.println("登录成功");
intent = new Intent(AndroidLoginActivity.this, SencondActivity.class);
//启动Activity
startActivity(intent);
}
else {
Toast.makeText(AndroidLoginActivity.this,"用户登录信息错误" , Toast.LENGTH_SHORT).show();
}
} catch (Exception e) {
e.printStackTrace();
}
}
};
}
package cn.yzz.AndroidLogin;import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;import java.util.ArrayList;
import java.util.List;import org.apache.http.HttpResponse;
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.cookie.Cookie;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;public class AndroidLoginActivity extends Activity {
//属性
private EditText username;
private EditText password;
private Button login;
private Intent intent;
List<Cookie> cookies; //保存获取的cookie
HttpClient client = new DefaultHttpClient();
HttpResponse httpResponse;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//添加登录按钮监听
login = (Button)findViewById(R.id.userlogin);
login.setOnClickListener(ocl);
}
//创建按钮监听器对象
OnClickListener ocl = new OnClickListener(){
public void onClick(View arg0) {
String uriAPI = "http://bkjw.xznu.edu.cn/Login.aspx";
username = (EditText)findViewById(R.id.username);
password = (EditText)findViewById(R.id.password);
/* 建立HTTP Post连线 */
HttpPost httpRequest = new HttpPost(uriAPI);
List<NameValuePair> params = new ArrayList<NameValuePair>();
/**
* 以下三个数据就是我们的之前在POST里的数据,不用在意验证码
*/
params.add(new BasicNameValuePair("Account",username.getText().toString()));
params.add(new BasicNameValuePair("PWD",password.getText().toString()));
try {
// 发出HTTP request
httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
// 取得HTTP response
httpResponse = client.execute(httpRequest); //执行
// 若状态码为302 ok
if (httpResponse.getStatusLine().getStatusCode() == 302) { //返回值正常
System.out.println("登录成功");
intent = new Intent(AndroidLoginActivity.this, SencondActivity.class);
//启动Activity
startActivity(intent);
}
else {
Toast.makeText(AndroidLoginActivity.this,"用户登录信息错误" , Toast.LENGTH_SHORT).show();
}
} catch (Exception e) {
e.printStackTrace();
}
}
};
}
解决方案 »
- 在服务中使用Timer为何出错
- 100分求解:列举出系统中所有的SD(TF)卡,不管是内置的还是外置的
- contentprovider中如何更新单条数据
- 请教几个比较基础的Android的问题。
- android中如何用指定的apn连接网络
- asmack获取roster时如何获取用户的更多信息比如性别,个性签名等
- 求解决一个利用HttpClient4用post连接服务器的问题,已经可以读服务器,服务器却不能收到post参数
- android开发真机通过局域网连接本地服务器测试的问题?
- android wheelview滚轮实现有滑动效果
- 请问关于主界面的底部菜单问题
- sdcard看不到任何文件目录,求大神!
- 如何让android的service一直运行
//创建按钮监听器对象
OnClickListener ocl = new OnClickListener(){
public void onClick(View arg0) {
Thread thread = new Thread(){
public void run(){
String uriAPI = "http://bkjw.xznu.edu.cn/Login.aspx";
username = (EditText)findViewById(R.id.username);
password = (EditText)findViewById(R.id.password);
/* 建立HTTP Post连线 */
HttpPost httpRequest = new HttpPost(uriAPI);
List<NameValuePair> params = new ArrayList<NameValuePair>();
/**
* 以下三个数据就是我们的之前在POST里的数据,不用在意验证码
*/
params.add(new BasicNameValuePair("Account",username.getText().toString()));
params.add(new BasicNameValuePair("PWD",password.getText().toString()));
try {
// 发出HTTP request
httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));
// 取得HTTP response
httpResponse = client.execute(httpRequest); //执行
// 若状态码为302 ok
if (httpResponse.getStatusLine().getStatusCode() == 302) { //返回值正常
System.out.println("登录成功");
intent = new Intent(AndroidLoginActivity.this, SencondActivity.class);
//启动Activity
startActivity(intent);
}
else {
Toast.makeText(AndroidLoginActivity.this,"用户登录信息错误" , Toast.LENGTH_SHORT).show();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
};
thread.start();
};
我怎么记得返回值是200才表示正常