Обеспечить создание и выполнение действий в текущем процессе Android
Давайте предположим, что есть 3 действия, а именно ActivityA, ActivityB и ActivityC.
<activity
android:name=".ActivityA" />
<activity
android:name=".ActivityB"
android:process=":process2" />
<activity
android:name=".ActivityC" />
Процесс создания экземпляров действий выглядит следующим образом:
- ActivityA выполняется в основном процессе приложения.
- ActivityA запускает ActivityB.
- ActivityB создается и запускается в process2 (для него установлен атрибут android:process)
- ActivityB теперь запускает ActivityC.
- ActivityC создается и запускается в основном процессе приложения (по умолчанию основной процесс)
Требование:
Всякий раз, когда компонент Android (Activity, Service и т. Д.) Создается из другого компонента в process2, убедитесь, что эти компоненты создаются и выполняются только в process2 (даже если для этих компонентов android:process не определены в файле манифеста). Например: в приведенном выше случае необходимо создать ActivityC для создания и запуска в Process2.
Основания для требования:
- Выполнение ActivityB и ActivityC должно быть изолированно, и любые проблемы, связанные с ними, не должны влиять на основной процесс. Поэтому требуется выполнить их в отдельном процессе - process2.
- ActivityC определяется в стороннем коде SDK. Таким образом, нет никакого контроля над установкой атрибута Android: процесс для этого действия.
Я искал на разных форумах и не смог получить ответ на этот вопрос. Пожалуйста, дайте мне знать, как это может быть достигнуто.