我主要使用 C# 并开始使用 Java 进行开发。我无法启动线程 :(
public class GetLocationInfo implements Runnable{
String address;
double latitude;
double longitude;
public void run() {
HttpGet httpGet = new HttpGet("http://maps.google.com/maps/api/geocode/json?latlng=42.993504,-79.239167&sensor=false");
//HttpGet httpGet = new HttpGet("http://maps.google.com/maps/api/geocode/json?latlng="+latitude+","+longitude+"&sensor=false");
HttpClient client = new DefaultHttpClient();
HttpResponse response;
try {
response = client.execute(httpGet);
HttpEntity entity = response.getEntity();
InputStream stream = entity.getContent();
JsonReader reader = new JsonReader(new InputStreamReader(stream, "UTF-8"));
reader.beginObject();
while (reader.hasNext()) {
String name = reader.nextName();
if (name.equals("formatted_address")) {
address = reader.nextString();
} else
reader.skipValue();
}
reader.endObject();
} catch (ClientProtocolException e) {
} catch (IOException e) {
}
}
public String GetAddress(double lat, double lng) {
latitude = lat;
longitude = lng;
Thread thread = new Thread(this);
thread.start();
return address;
}
}
我在覆盖的 run() 方法中设置了断点,但似乎没有在此方法中执行任何内容。如果你们能帮我解决这个问题,我将不胜感激。
干杯
最佳答案
不建议使用这种获取位置的方式,我会用谷歌服务在这里做一个很好的例子。
http://www.tutorialspoint.com/android/android_location_based_services.htm
如果您确定要使用该代码,我建议您使用 AsyncTask http://developer.android.com/reference/android/os/AsyncTask.html
关于java - (Java) 线程不会执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27449985/