2012-05-25 2 views
0

У меня есть приложение, основанное на картах Google, в которых я начинаю планировать маршрут с использованием намерений. Но, когда приложение запускается, оно запрашивает диалоговое окно для пользователя с опцией браузера и карт по умолчанию. Но я хочу, чтобы при запуске приложения он по умолчанию открывался на картах. Ниже я отправляю свой код.Открытие карт по умолчанию

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 

ответ

2

Если вы хотите избавиться от диалога, вы можете дать намек на какой пакет вы хотите использовать. Перед тем, как startActivity() добавить следующее:
intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");
Кредиты this previous post. Я предлагаю выполнить поиск перед публикацией.

+0

+1 для последней строки ответа .. –

+0

@Urban, спасибо ... это сработало. – Nitish

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); 
Смежные вопросы