我有一个带有WebView的应用程序。我最近改变了主机,新的主机出现了新的SSL,由于某些原因SSL不受webview的信任,并且想知道如何解决这个问题。主要活动在这里下来。 SSL没有任何问题,因为它在chrome等工作正常。另外如果你有一个代码,代码的“导入”将是可爱的!
public class MainActivity extends AppCompatActivity {
private WebView wb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
wb = (WebView) findViewById(R.id.webView);
WebSettings webSettings = wb.getSettings();
webSettings.setJavaScriptEnabled(true);
wb.loadUrl("https://www.example.com/");
wb.setWebViewClient(new WebViewClient());
}
@Override
public void onBackPressed() {
if (wb.canGoBack()) {
wb.goBack();
} else {
super.onBackPressed();
}
}
}
答案 0 :(得分:0)
我花了一天的时间解决同样的问题,并最终弄清了为什么会这样。此问题的主要问题是在apache服务器上设置ssl(在我的情况下,使用apache)。要使用https(ssl)协议,我在服务器端放置了一些证书文件(root_bundle.crt,.crt,.key),并在httpd-ssl.conf文件中设置了文件的路径。我按照Google的指示进行操作,大多数指南只说了大约2个文件,而不是“ bundle.crt”文件。我意识到该文件也很重要。 我们应该在httpd-ssl.conf文件的“ SSLCertificateChainFile”变量中设置证书链束文件的路径。
因此设置应如下所示。
SSLCertificateFile“ D:/wamp/bin/apache/apache2.4.23/conf/key/somedomain_name.crt” SSLCertificateKeyFile“ D:/wamp/bin/apache/apache2.4.23/conf/key/somedomain_name.key” SSLCertificateChainFile “ D:/wamp/bin/apache/apache2.4.23/conf/key/root_bundle.crt”
我引用了this。