我做了一个GPS程序。我想将当前地址发送到服务器。我陷入了弦乐部分。你能纠正它吗?我的代码是:
try {
Geocoder mGC = new Geocoder(this, Locale.ENGLISH);
addresses = mGC.getFromLocation(mLocation.getLatitude(),
mLocation.getLongitude(), 1);
if (addresses != null) {
Address currentAddr = addresses.get(0);
StringBuilder mSB = new StringBuilder("Address:\n");
for (int i = 0; i < currentAddr.getMaxAddressLineIndex(); i++) {
mSB.append(currentAddr.getAddressLine(i)).append("\n");
String a=mSB.toString();
if(a!=null){
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(
"URL");
try {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(
1);
nameValuePairs.add(new BasicNameValuePair(
"data",a));
httppost.setEntity(new UrlEncodedFormEntity(
nameValuePairs));
HttpResponse response = httpclient
.execute(httppost);
Toast.makeText(getBaseContext(),
response.toString(),
Toast.LENGTH_LONG).show();
continue;
}
答案 0 :(得分:0)
1-不确定,但http连接不应该是循环
2-您创建了mSB但未使用
StringBuilder mSB = new StringBuilder("Address:\n");
for (int i = 0; i < currentAddr.getMaxAddressLineIndex(); i++) {
mSB.append(currentAddr.getAddressLine(i)).append("\n");
} <----------------- loop should end here
String a= mSB.toString() ;<-------------------------- carete string from mSB