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

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

Сообщение Anonymous »

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

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

:compose
модуль

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

@Composable
fun MyComposable(state: MyState) {
// compose content
}

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

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

@Composable
fun MyComposableScreen(viewModel: MyViewModel : viewModel()) {

val state = viewModel.state.collectAsStateWithLifecycle()

MyComposable(state)

}

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

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

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

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

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

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

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

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