@Composable
fun MailRoomInScreen(
webView: WebView,
mailRoomViewModel: MailroomViewModel,
navController: NavHostController
) {
val context = LocalContext.current
val mailRoomLogs by mailRoomViewModel.mailRoomLogs.collectAsState()
val type = "inTab"
val appNavigationActions = AppNavigationActions(navController)
// Initialize the WebView
val webView = remember {
WebView(context).apply {
settings.javaScriptEnabled = true
settings.domStorageEnabled = true
addJavascriptInterface(
MailRoomListInterface(navController, mailRoomViewModel, this, context),
"Android"
)
webViewClient = object : WebViewClient() {
override fun onPageFinished(view: WebView?, url: String?) {
super.onPageFinished(view, url)
val jsonData = convertToJson(mailRoomLogs, type)
view?.evaluateJavascript("showList($jsonData)") { result ->
Log.d("Result", result)
}
}
}
loadUrl(BaseUrls.ListUrl)
}
}
// Dispose of the WebView when the composable is removed from the composition
DisposableEffect(Unit) {
onDispose {
webView.loadData("", "text/html", "base64")
webView.destroy()
}
}
// Load mail room logs when the composable is first composed
LaunchedEffect(Unit) {
mailRoomViewModel.getMailRoomLogs()
}
// Display the WebView
AndroidView(
factory = { webView },
modifier = Modifier.fillMaxSize()
)
}
Aber wenn ich den Tab-Bildschirm durch einen einfachen zusammensetzbaren Text ersetze, verschwindet das Problem. Als ich die Dokumentation überprüfte, wurde mir Android Native Crash angezeigt, aber ich konnte das Problem immer noch nicht lösen.
Ich wollte vom aktuellen Bildschirm zurück navigieren, aber während ich das tat, es kommt zu einem Absturz.
Immer wenn ich versuche, vom untenstehenden Bildschirm zurück zu navigieren, kommt es zu einem Absturz. [code]@OptIn( ExperimentalFoundationApi::class, ExperimentalMaterial3Api::class ) @Composable fun MailRoomScreen( navController: NavHostController, mailroomViewModel: MailroomViewModel = hiltViewModel() ) { val context = LocalContext.current val appNavigationActions = AppNavigationActions(navController) val webView = remember { WebView(context) } val tabs by mailroomViewModel.tabs.collectAsState() val pagerState = rememberPagerState( initialPage = 0, initialPageOffsetFraction = 0f, pageCount = { tabs.size } )
val scope = rememberCoroutineScope()
LaunchedEffect(tabs) { if (pagerState.currentPage !in tabs.indices) { pagerState.scrollToPage(0) } }
// Dispose of the WebView when the composable is removed from the composition DisposableEffect(Unit) { onDispose { webView.loadData("", "text/html", "base64") webView.destroy() } }
// Load mail room logs when the composable is first composed LaunchedEffect(Unit) { mailRoomViewModel.getMailRoomLogs() }
// Display the WebView AndroidView( factory = { webView }, modifier = Modifier.fillMaxSize() ) } [/code] Aber wenn ich den Tab-Bildschirm durch einen einfachen zusammensetzbaren Text ersetze, verschwindet das Problem. Als ich die Dokumentation überprüfte, wurde mir Android Native Crash angezeigt, aber ich konnte das Problem immer noch nicht lösen. Ich wollte vom aktuellen Bildschirm zurück navigieren, aber während ich das tat, es kommt zu einem Absturz.
Ich arbeite lokal an einer Django-App, die eine CSV-Datei als Eingabe verwenden und eine Analyse der Datei durchführen muss. Ich verwende Celery, RabbitMQ und den Webserver lokal. Wenn ich die Datei...
Ich versuche, eine Komponistin in einem Laravel -Projekt zu installieren, das aus Git kloniert ist.
, aber ich bekomme einige Fehler. Eine, die ich gelöst habe, war:
- phpunit/phpunit require...