我有一个基于谷歌地图的应用程序,我正在使用意图打开路线规划器。但是,当应用程序启动时,它会向用户提示默认浏览器和地图选项的对话框。但是,我希望在应用程序启动时,它应该默认在地图中打开。下面我发布了我的代码。
public class RoutePlannerActivity extends MapActivity {
public static final String TAG = "Route planner";
MapView mapView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mapView = (MapView)findViewById(R.id.mapView);
mapView.setBuiltInZoomControls(true);
Log.d(TAG, "onCreate");
Intent intent = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse("http://maps.google.com/maps?saddr=28.6667,77.2167&daddr=28.5700,77.3200"));
startActivity(intent);
}//onCreate
protected boolean isRouteDisplayed() {
Log.d(TAG, "Route displayed");
return true;
}//isRouteDisplayed
}//class
答案 0 :(得分:2)
如果你想摆脱对话框,你可以给意图一个关于你想要使用哪个包的提示。在startActivity()之前加上这个:
intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
致this previous post的积分。我建议在发布之前进行搜索。
答案 1 :(得分:1)
尝试使用此代码删除对话框..
Intent intent = new Intent(Intent.ACTION_VIEW,Uri.parse("http://maps.google.com/maps?" + "saddr=23.0286423,72.5580967&daddr=23.0559485,72.5423041"));
intent.setClassName("com.google.android.apps.maps","com.google.android.maps.MapsActivity");
startActivity(intent);