我收到了“geo:0,0?q = + adress”格式的地址,我需要从中获取GeoPoint。有没有办法做到这一点?
谢谢!
答案 0 :(得分:1)
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.show3);
Dataset = (Gps_mapApplicationDataset) getApplicationContext();
dbHelper = Dataset.getDbHelper();
Dcalcuation = new DistanceCalculator();
mapview = (MapView) findViewById(R.id.show_mapview);
mapview.setSatellite(false);
mapview.setBuiltInZoomControls(true);
mapOverlays = mapview.getOverlays();
locMan = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (locMan.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
locMan.requestLocationUpdates(LocationManager.GPS_PROVIDER, 100, 0,
this);
curLocation = locMan
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Log.v("Gps", "on");
} else if (locMan.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
locMan.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,
100, 0, this);
curLocation = locMan
.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
Log.v("network", "on");
} else {
Log.v("setting", "on");
final Intent poke = new Intent();
poke.setClassName("com.android.settings",
"com.android.settings.widget.SettingsAppWidgetProvider");
poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
poke.setData(Uri.parse("3"));
sendBroadcast(poke);
locMan.requestLocationUpdates(LocationManager.GPS_PROVIDER, 100, 0,
this);
curLocation = locMan
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
}
if (curLocation != null) {
clat = curLocation.getLatitude();
clng = curLocation.getLongitude();
Log.v("TAG ", clat + " " + clng);
GeoPoint srcgeopoint = new GeoPoint((int) (clat * 1E6),
(int) (clng * 1E6));
Drawable marker = getApplicationContext().getResources()
.getDrawable(R.drawable.pin1);
mapview.getController().animateTo(srcgeopoint);
MapAddressOverlay itemizedOverlay = new MapAddressOverlay(marker);
itemizedOverlay.addOverlay(this, clat, clng);
mapview.getOverlays().add(itemizedOverlay);
mapview.invalidate();
} else {
Toast.makeText(new_map.this, "No Location Find", Toast.LENGTH_SHORT);
}