Как запустить предварительный просмотр функций компоновки без сборки всего APK в модуле :appAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как запустить предварительный просмотр функций компоновки без сборки всего APK в модуле :app

Сообщение Anonymous »

У меня многомодульный проект, и все предварительные просмотры в модуле :compose выполняются быстро, но когда я пробую то же самое в модуле :app, он всегда собирает весь APK даже если создание текста — это очень простая текстовая функция:

Код: Выделить всё

:compose
модуль

Код: Выделить всё

@Composable
fun MyComposable() {
Text("this runs fast in the compose module")
}

@Preview
@Composable
fun MyComposablePreview() {
MyComposable()
}
модуль

Код: Выделить всё

@Composable
fun MyComposableScreen() {
Text("this should run fast in the app module as well, but instead the entire app APK is being generated every time Run Preview is  pressed")
}

@Preview
@Composable
fun MyComposableScreenPreview() {
MyComposableScreen()
}
Если я нажму кнопку «Запустить предварительный просмотр» в окне предварительного просмотра Android Studio
Изображение

для MyComposablePreview, тогда он запускает этот предварительный просмотр только сам по себе, без какой-либо другой зависимости, просто отлично, это означает, что ничего больше, кроме этого предварительного просмотра, не будет выполнено.
Однако, если я сделаю то же самое в своем модуле :app с MyComposableScreenPreview, то он создаст весь APK-файл приложения вместе с самим экраном предварительного просмотра.
При каждом запуске всегда требуется столько же времени, сколько требуется для создания всего APK-файла приложения. Это может занять несколько минут для каждого «Запустить предварительный просмотр» или дольше, если приложение больше. Запуск их в модуле :compose занимает максимум 2 секунды.
Это большая проблема, поскольку приложение также имеет много сложной логики перед его вводом (экран маршрутизация, этап входа в систему, этап настройки сервера и т. д.), что делает упомянутый выше практичный предварительный просмотр компоновки практически бесполезным, учитывая, что если правильная настройка/конфигурация не существует, предварительный просмотр не отображается или перенаправляется на другой экран. .
Я пытался найти способ НЕ собирать весь APK при запуске предварительного просмотра компоновки в модуле :app, но пока ничего не нашел.
Есть ли какой-нибудь способ это сделать? Я настроил его так, чтобы он не создавал весь APK при запуске предварительного просмотра в модуле :app?
ПРИМЕЧАНИЕ. Просто не запускать предварительный просмотр в модуле :app будет не будет жизнеспособным решением, поскольку это уже было достигнуто (как я уже упоминал выше). Это требование позволяет мне запускать предварительный просмотр с логикой, которая существует только в модуле :app, а не в модуле :compose.

Подробнее здесь: https://stackoverflow.com/questions/793 ... apk-in-app
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»