Поддержка уведомлений на устройствах 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.
Вы можете показать свое приложение в приборной панели автомобиля? –