Я пытаюсь написать правильный фильтр намерений.
Я в основном знаком с намерениями, они отлично работают в моем приложении, но я хочу знать, как лучше это сделать. Вот что мне нужно сделать:
У меня есть приложение, которое владеет некоторыми данными. (данные с ЭБУ, блока управления двигателем) Есть два действия: одно действие может отображать данные в виде цифр, а другое может отображать их в виде графиков.
Давайте посмотрим на первое упражнение.
Второе действие почти такое же, но третий пункт отличается: он отображает данные в виде графиков.
ТакЯ хочу иметь возможность отправлять намерение, которое указывает всю информацию, например, « Эй, Android, мне нужно отобразить данные ECU в виде цифр », а затем следует открыть первое действие.
И я также хочу иметь возможность отправлять намерение, которое указывает только первые два элемента, например, « Эй, Android, мне нужно отобразить данные ECU », а затем Android должен спросить пользователя, какую активность следует открыть.
Мое приложение также должно быть в состоянии реагировать на другие приложения.
Как лучше всего достичь всего этого?
ОБНОВЛЕНИЕ: Вот мой xml. Что я должен указать в
?
<activity
android:name=".MyActivity"
>
<intent-filter >
<!-- what should i specify here? -->
</intent-filter>
</activity>
UPDATE 2: Вот что я пытаюсь сделать: у меня есть приложение с Service
, которое взаимодействует через Bluetooth с удаленным устройством и получает данные ECU. Есть несколько простых действий, которые могут отображать эти данные: как я уже сказал, один может отображать цифры, другой может отображать графики.Это приложение предоставляет интерфейс AIDL
для любого другого приложения, чтобы иметь возможность получать данные ECU.
Как я уже сказал, эти действия довольно просты, они предоставляют только базовый пользовательский интерфейс.
Скажем, один человек хочет, чтобы эти данные отображались как индикатор движуго указателя. Нет проблем: он может написать свою собственную Activity
, которая будет связывать мои Service
, получать из нее данные и отображать так, как он хочет.
Затем, если я отправляю Intent
например: « Эй, Android, мне нужно отобразить данные ECU », то Android должен спросить меня, какую активность следует открыть, и я хочу иметь возможность увидеть эту новую Activity
тоже.