全部。我正在基于Web视图的android应用程序上工作,需要访问一个已获得Windows身份验证(协商,NTLM)保护的URL。 我做了一些代码,并使其在模拟器上工作。 但不幸的是,它不适用于设备。 我测试了三星s8(Android 9.0),三星Tab A(Android 8.1)
下面是我尝试在应用程序中集成Web视图的代码。 如前所述,它可以在模拟器上正常运行,但不能在设备上运行
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = findViewById(R.id.activity_main_webview);
// Enable Javascript
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setDefaultTextEncodingName("utf-8");
// REMOTE RESOURCE
mWebView.loadUrl("https://palmerston.wheelers.co/account/logon");
mWebView.setWebViewClient(new MyWebViewClient());
}
--> MyWebViewClient
@Override
public void onReceivedHttpAuthRequest(WebView view, HttpAuthHandler handler, String host, String realm) {
String username="123";
String userpass="123";
handler.proceed(username, userpass);
}
我想知道是否还有其他配置,或者是什么原因导致身份验证在设备Webview上停止。 如果您之前遇到过此类问题,请帮助我解决此问题。 谢谢。