Неявное намерение открыть Waze или Google, а затем начать навигацию
Вот чего я хочу достичь: у меня есть объект LatLng. Пользователь нажимает кнопку, и он позволяет пользователю выбрать waze или googlemap для навигации (если у пользователя есть только один из них, просто зайдите в приложение и запустите навигацию)(если у вас есть приложение Waze и googlemap, покажите пользователю и там также должны быть опции: только один раз и установить значение по умолчанию. Затем пользователь нажимает кнопку, он запускает конкретное навигационное приложение и запускает навигацию) Я знаю, как создать намерение для одного из них, но не знаю создать неявное намерение для выявления двух из них. Пожалуйста, помогите мне спасибо.
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
LatLng location= new LatLng(34,118); // just for example
String urlWaze = "https://waze.com/ul?ll="+location.latitude+","+location.longitude;
Intent intentWaze = new Intent(Intent.ACTION_VIEW, Uri.parse(urlWaze));
intentWaze.setPackage("com.waze");
String uriGoogle = "google.navigation:q=" + location.latitude + "," + location.longitude;
Intent intentGoogleNav = new Intent(Intent.ACTION_VIEW, Uri.parse(uriGoogle));
intentGoogleNav.setPackage("com.google.android.apps.maps");
}
}
1 ответ
Вы можете использовать App Chooser, но если вы запускаете другое приложение из своего приложения, вы можете показать стандартное или пользовательское Dialog
с выбором и сделать intentWaze
или же intentGoogleNav
на ответ пользователя.