服务器在Tomcat上,安卓上需要访问,一点登录就崩溃了,代码如下:
崩溃在
package com.example.queryresults;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
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 android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView resultsTV = (TextView)findViewById(R.id.t1);
EditText Num = (EditText)findViewById(R.id.Num);
EditText Key = (EditText)findViewById(R.id.Key);
Button OK = (Button)findViewById(R.id.OK);
final String num = Num.getText().toString();
final String key = Key.getText().toString();
OK.setOnClickListener(new OnClickListener(){
public void onClick(View v){
String results = "";
HttpClient httpclient = new DefaultHttpClient();
HttpPost httpRequest = new HttpPost("http://100.78.23.200:8080/QueryResults/Login");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("Num",num));
params.add(new BasicNameValuePair("Key",key));
try {
httpRequest.setEntity(new UrlEncodedFormEntity(params,"utf-8"));
/*这里出错,是不是地址的问题,在虚拟机上抛的*/
HttpResponse httpResponse = httpclient.execute(httpRequest);
if(httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK){
results += EntityUtils.toString(httpResponse.getEntity());
}else{
results = "请求失败!";
}
resultsTV.setText(results);
} catch (UnsupportedEncodingException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
崩溃在
HttpResponse httpResponse = httpclient.execute(httpRequest);