Как исправить неполный веб-стиль в Compose WebView?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как исправить неполный веб-стиль в Compose WebView?

Сообщение Anonymous »

Я разрабатываю приложение для Android с помощью Jetpack Compose и планирую реализовать встроенную функцию просмотра веб-страниц. Ниже приведен мой основной код. Я обнаружил, что мой код работает нормально (как по стилю, так и по макету) при доступе к большинству веб-сайтов. Однако при посещении m.bilibili.com стиль не загружается полностью. Я также протестировал его с помощью системного браузера на моем Samsung S24, и он отображается правильно.
В ходе отладки я обнаружил, что при загрузке веб-страницы с помощью WebView не запрашиваются 4 файла таблицы стилей, и я понятия не имею, почему.
Как мне изменить свой код, чтобы он отображался правильно?
Вот результаты при доступе к сайту с помощью моего WebView и встроенного браузера телефона соответственно:
Изображение

Изображение


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

@Composable
fun WebViewPage(
) {
println("[recomposable] - WebViewPage")

var webViewSource: WebView? by remember { mutableStateOf(null) }

LaunchedEffect(Unit) {
delay(2000)
webViewSource!!.loadUrl("https://m.bilibili.com/")
}

AndroidView(
modifier = Modifier
.fillMaxSize(),
factory = { context ->
webViewSource = WebView(context).apply {
CookieManager.getInstance().setAcceptThirdPartyCookies(this, true)

settings.javaScriptEnabled = true
settings.domStorageEnabled = true
settings.mixedContentMode = WebSettings.MIXED_CONTENT_ALWAYS_ALLOW
settings.loadsImagesAutomatically = true

webViewClient = object : WebViewClient() {

}

loadUrl("about:blank")
}
webViewSource!!
},
update = { webView ->
}
)

}



Подробнее здесь: https://stackoverflow.com/questions/798 ... se-webview
Ответить

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

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

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

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

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