TGTGInsighttelegram intelligenceLIVE / telegram public index
← Android Broadcast
Android Broadcast avatar

TGINSIGHT POST

Post #9985

@android_broadcast

Android Broadcast

Vues7,860Nombre de vues
Publiéil y a 28 jours07/05/2026 11:07
Contenu

Contenu du post

🚀Вышел AndroidX WebKit 1.16.0. Забирай в работу интеграции 👉 minSdk поднят до 24 (Android 7.0) — учитывайте при апгрейде. 👉 Async-старт WebView вышел из experimental. startUpWebView вместе с ProcessGlobalConfig позволяют прогреть WebView в фоне до того как он понадобится UI. Эту штуку давно ждали в стабильной версии — для меня самое ценное обновление этого релиза. 👉 Navigation API тоже стабильный. Больше не надо @OptIn — addNavigationListener даёт колбэки на разных стадиях навигации, ошибку загрузки через Navigation.webResourceError, URL текущей страницы через Page. Главное — теперь FCP и LCP метрики прилетают напрямую из WebView без инъекции JS: // Перед использованием проверь // WebViewFeature.isFeatureSupported(WebViewFeature.NAVIGATION_LISTENER) WebViewCompat.addNavigationListener(webView, object : NavigationListener { override fun onFirstContentfulPaintMillis(page: Page, millisFromNavStart: Long) { analytics.report("FCP", millisFromNavStart, page.url) } override fun onLargestContentfulPaintMillis(page: Page, millisFromNavStart: Long) { analytics.report("LCP", millisFromNavStart, page.url) } override fun onNavigationCompleted(navigation: Navigation) { navigation.webResourceError?.let { err -> Log.w("WV", "load failed: ${err.errorCode}") } } }) На один WebView можно вешать несколько листенеров и прокидывать свой Executor если нужны колбэки в фоновом потоке. 👉WebViewCompat.saveState теперь умеет ограничивать размер state. Если ловили TransactionTooLarge при сохранении состояния — это для вас. 👉 Подвезли addJavaScriptOnEvent для инъекции JS на загрузку документа и инъекцию скриптов в isolated worlds без конфликтов со страницей. Гибридным приложениям пригодится. 👉 [EXPERIMENTAL] BackForwardCacheSettings полностью переписали. Если использовали старый Builder через WebSettingsCompat.setBackForwardCacheSettings — ловите ошибку компиляции при апгрейде. Теперь так: val settings = WebSettingsCompat.getBackForwardCacheSettings(webView.settings) settings.setMaxPagesInCache(5) 👉Profile.setSpeculativeLoadingConfig депрекейтнут, замена через Profile.setMaxPrerenders плюс PrefetchCache.setMaxPrefetches и setPrefetchTtlSeconds (тоже experimental). #Android#Webview#Web#AndroidDev