3

Я ищу способ получить инструкции из Maps Navigation. В настоящее время я думаю, что единственный возможный способ - прочитать данные уведомления, расположенные в верхней части Карты навигации. Моя причина в том, что это единственный способ исходить из этого post. Я пытался получать данные с OnNotificationPosted методом, но я не могу найти направление данных в объекте StatusBarNotification ...Получить инструкции по навигации на Google Картах

Кто-нибудь есть решение или более полное представление о том, как достичь этого

+0

Возможный дубликат: http://stackoverflow.com/questions/14495030/get-driving-directions-using- Google-карта-апи-v2/15053901 # 15053901. Кроме того, вот демонстрационное приложение: https://github.com/akexorcist/Android-GoogleDirectionLibrary –

+1

К сожалению, это не то, что я ищу. Я могу получить объект указаний и т. Д. Из Google, но я ищу способ получить в реальном времени поворот в повороте на основе геолокации. –

+0

Я ищу то же самое в течение нескольких дней. Но я не думаю, что эта информация доступна. –

ответ

0

Вы можете реализовать NotificationListenerService чтобы получить содержимое маршрута карты Google Maps. К сожалению, Карты не используют общие атрибуты в StatusBarNotification. Однако для отображения контента используются RemoteViews. Вы можете отправить эти данные через Broadcast к деятельности и в конечном итоге добавить содержимое в существующем виде:

RemoteViews remoteView = intent.getParcelableExtra(id); 
if (remoteView != null) { 
    ViewGroup frame = (ViewGroup) findViewById(R.id.layout_navi); 
    frame.removeAllViews(); 
    View newView = remoteView.apply(getApplicationContext(), frame); 
    newView.setBackgroundColor(Color.TRANSPARENT); 
    frame.addView(newView); 
} 
+0

Thnx для решения! У меня есть один вопрос об этом. С вашим решением я мог бы создать фрейм для отображения решения в другом месте? Или я также могу увидеть, говорят ли карты Google влево или вправо? Потому что я хотел бы использовать эти инструкции в коде. –

+0

Нет, вы также можете пройти через «NewView» ViewGroup и получить содержимое своих дочерних элементов: «Просмотреть viewImage = ((ViewGroup) newView) .getChildAt (0);' и текст внутри: 'View outerLayout = ((ViewGroup) newView) .getChildAt (1); ', а затем перейдите через' outerLayout', чтобы получить текстовое содержимое. – droiddude

Смежные вопросы