Во-первых, позвольте мне представить вам блог : более простое использование мгновенных приложений , Создание набора приложений с мгновенной поддержкой и О пакетах приложений Android
dist:onDemand
| dist:instant
false
| true
= модуль мгновенного приложения, также будет включен в установленное приложение
false
| false
= установленный только модуль
true
| false
= модуль только для установки по требованию
Во-вторых, в новой модели вы заметите, что com.android.application
теперь является «базой». Ладно, просто, ваша "старая база", которая когда-то была com.android.feature
, теперь будет все внутри com.android.application
(сначала сбивает с толку, но теперь она по сути действует как библиотечный модуль ?? yep! )
Хорошо, я предполагаю, что ваш "Комбинированный" раньше был com.android.application
модулем? Вы можете поместить это в модуль динамических функций: false
| false
(установлен), это ограничит его установленным приложением.
Ваши модули "Feature_X", ранее не являющиеся базовыми com.android.feature
модулями, теперь все могут быть модулями динамических функций, включенными на мгновение: false
| true
(мгновенно).
Теперь активность по умолчанию для вас все та же, я думаю. MainActivity
вашего установленного приложения в "Комбинированном", верно? А Instant Apps всегда полагался на местоположение URL-адреса по умолчанию для его Try Now, где бы вы его ни установили. Итак, я думаю, что это все равно для вас?
Проблема " не может достичь " теперь заключается в том, что ни один из этих модулей не видит друг друга, кроме базы / приложения, находящихся в корне. В отличие от ранее, Combined / app мог по крайней мере видеть все функции в виде библиотек. Теперь вам нужно обратиться к ним по имени класса или по их фильтру намерений / URL-адресам или т. Д.
Точки входа? Это должна быть установка, аналогичная предыдущей:
- Как установлено приложение: база + в сочетании + a + b + c
- Как приложение для мгновенного использования: base + (a, b, c)
Но я неправильно прочитал? Ваши текущие функциональные модули старой модели содержат только «фрагменты» для вашего MainActivity
? Никакой собственной или индивидуальной активности, чтобы удерживать каждого? (Тогда как установленное приложение, эти действия будут игнорироваться, и будут собраны только фрагменты для действия одного установленного приложения?)
В любом случае, вы можете также изучить SplitInstall , чтобы использовать его в качестве мгновенного приложения. (да, вы также можете использовать эту разделенную установку на мгновенных модулях)