2017-02-15 2 views
0

Я планирую разработать приложение, которое отправляет уведомления на головной блок автомобиля с помощью MirrorLink.Отображение уведомлений в MirrorLink

Я установил приложение MirrorLink Test Application и отображает действие для генерации уведомлений. Но он не может отправить уведомление в головной блок. (Отображает сообщение об ошибке) Я просмотрел документы разработчиков и не смог найти подходящего метода для реализации функции уведомления.

Я очень благодарен, если кто-то может показать простой пример показа уведомлений с помощью MirrorLink или объяснение того, как уведомления работают в MirrorLink. Спасибо

+0

Вы можете показать свое приложение в приборной панели автомобиля? –

ответ

1

Поддержка уведомлений на устройствах MirrorLink не является обязательной, поэтому возможно, что головной блок или телефон не поддерживают уведомления, предоставленные головным устройством. Симулятор клиента MirrorLink делает, телефон, который вы используете, может и не быть.

Вы можете проверить, поддерживает ли телефон уведомления с помощью getEventMappingManager (в ICommonAPIService.aidl). Если он возвращает null, он не поддерживается. Или boolean getNotificationEnabled() в INotificationManager.aidl.

В основном, уведомления работают довольно стандартно: вы вызываете уведомление с подсказкой, названием, значком и списком действий (в виде пакета). Он возвращается с индексом выбранного действия.

Код приложения Common API Test (представлен на сайте разработчика MirrorLink) показывает пример вызова уведомления: Список действийList = Arrays.asList (actionListText.getValue(). Split (",")); Uri iconUrl = Uri.parse (iconUrlListText.getValue());

   List<Bundle> actions = new ArrayList<Bundle>(); 

       for (int i=0;i<actionList.size();i++) 
       { 
        Bundle action = new Bundle(); 
        action.putInt(Defs.Action.ACTION_ID, i+1); 
        action.putString(Defs.Action.ACTION_NAME, actionList.get(i)); 
        action.putBoolean(Defs.Action.LAUNCH_APP, false); 

        actions.add(action); 
       } 




       int response = notificationManager.sendClientNotification(notificationTitle.getValue(), notificationBody.getValue(), iconUrl, actions); 
       if (response == 0) 
       { 
        Toast.makeText(getBaseContext(), "Sending notification failed." , Toast.LENGTH_LONG).show(); 
       } 

Не могли бы вы привести пример того, что вы делаете?

Примечание: В целом вы не можете полагаться на систему уведомлений, доступную в большинстве сеансов. Поэтому, если это важно для работы, вам придется иметь «резервное» решение, используя встроенные уведомления в Android.

+0

Спасибо! То, что я на самом деле пытаюсь, заключается в отправке уведомлений на основе местоположения транспортного средства. Например, напоминание о событиях, когда автомобиль приближается к определенным местам. (Давайте проигнорируем проблемы с драйверами.) У меня есть две проблемы Ed, 1. Будут ли уведомления отображаться поверх других приложений? Кроме того, драйверы должны открывать приложение для получения уведомлений. 2. Можно ли отправлять голосовые уведомления? – javatar

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