Как сохранить сессию в Android Kotlin Webview - PullRequest
0 голосов
/ 09 июля 2019

У меня есть приложение Webview в Android Kotlin, в котором пользователь входит в систему и использует приложение.Проблема в том, что когда пользователь входит в систему и закрывает приложение, в следующий раз, когда он открывает приложение, он переходит на страницу входа, он должен войти в систему. Мне нужно поддерживать сеанс (или файл cookie), чтобы ему не нужно было входить в системуснова, если он не выйдет из системы.

У меня есть работающее приложение в JAVA, но оно настолько старое, что я не могу скопировать и вставить код.Я прошел через много ответов, но ничего не помогло.

1 Ответ

0 голосов
/ 09 июля 2019

Я обычно использую эту конфигурацию для проектов, для которых требуется WebView.

@SuppressLint("SetJavaScriptEnabled")
private fun configureWebView(webView: WebView?) {
    webView?.settings?.userAgentString = getUserAgent()
    webView?.settings?.cacheMode = WebSettings.LOAD_DEFAULT
    webView?.settings?.databaseEnabled = true
    webView?.settings?.domStorageEnabled = true
    webView?.settings?.javaScriptEnabled = true
    webView?.settings?.mediaPlaybackRequiresUserGesture = false
    webView?.settings?.allowFileAccessFromFileURLs = true
    webView?.settings?.allowUniversalAccessFromFileURLs = true
    webView?.webChromeClient = WebChromeClient()
    webView?.scrollBarStyle = WebView.SCROLLBARS_OUTSIDE_OVERLAY
    webView?.isLongClickable = false
    webView?.setOnLongClickListener {
        true
    }
    webView?.settings?.setSupportMultipleWindows(true)
}

Два основных метода, которые вы должны проверить, работают ли они для вас: databaseEnabled и domStorageEnabled, также если вы используете Javascript длячто вы должны проверить javaScriptEnabled тоже.

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...