我正在尝试使用起点和终点 gps 坐标构建一个字符串,以用于谷歌地图绘制。我需要做的第一件事是获取我当前位置的 gps 坐标,因为这是原点。然后,我需要将这些坐标连接成一个更大的字符串,用于获取方向。
我有获取这些坐标的代码,还有将它们连接成正确字符串格式的代码。但是,我的问题是我的字符串构建代码首先运行,这给我留下了空指针问题,因为字符串正在引用尚未处理的 gps 坐标。
这里是。gotLocation() 方法来自于在这篇文章中实现建议:
Public class DirectionsActivity extends Activity {
String myLat, myLng;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Parser parser;
LocationResult locationResult = new LocationResult(){
@Override
public void gotLocation(final Location location){
try {
Double lat = location.getLatitude();
Double lng = location.getLongitude();
if (lat != 0.0 && lng != 0.0) {
myLat = Double.toString(lat);
myLng = Double.toString(lng);
String gps_location = myLat + " " + myLng;
Toast.makeText(getBaseContext(), "First Message", Toast.LENGTH_SHORT).show();
}
}catch (Exception e) {
}
}
};
MyLocation myLocation = new MyLocation();
myLocation.getLocation(this, locationResult);
Toast.makeText(getBaseContext(), "Second Message", Toast.LENGTH_LONG).show();
buildString();
setContentView(R.layout.activity_directions);
}
我运行时的吐司输出是“第二条消息”,然后是“第一条消息”。它们应该以相反的顺序显示。