我正在开发一个移动应用程序,向用户显示网络视图。在 android 7.1.1 及更高版本中,所有 url 都渲染得很好,但在 android 6 中,我遇到了一些 url 问题。例如,如果我渲染 https://www.amazon.com,它在我的 android 6 模拟器中运行良好:
但是如果我尝试使用其他一些网址,例如 https://slack.com/intl/es-ar/,我会得到一个空白屏幕:
我的 kotlin 代码如下:
package com.example.webview
import android.os.Bundle
import android.webkit.WebView
import android.webkit.WebViewClient
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
class MainActivity : AppCompatActivity() {
private lateinit var webView: WebView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main)
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main)) { v, insets ->
val systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars())
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom)
insets
}
webView = findViewById(R.id.webView)
webView.webViewClient = WebViewClient()
webView.loadUrl("https://slack.com/intl/es-ar/")
webView.settings.javaScriptEnabled = true
webView.settings.domStorageEnabled = true
webView.settings.setSupportZoom(true)
}
}
我不确定可能是什么问题。
Slack 使用 Let's Encrypt 来获取 SSL 证书(至少对于该网站而言),并且 Let's Encrypt 仅支持 Android 7.0 及更高版本。