我有一个android webview,可使用意图将其打印到收据打印机。使用chrome浏览器可以正常工作,但是当我打开尝试使用webview进行打印时,它给我一条错误消息,如下所示
该网页不可用。 网页位于 意图://.... 网址:: ERR_UNKNOWN_URL_SCHEME。
我看过以下链接,但不确定如何实现。 how-to-fix-unknown-url-scheme-in-android-webview
我不是Android开发人员。任何建议表示赞赏。
答案 0 :(得分:1)
解决方案位于您提供的链接中。
WebView通常会识别
http
和https
,除了 例如intent://
,market://
,app://
,mail://
等 除非我们添加 handler 来处理这些网址,否则WebView会识别 方案或禁用这些方案,并且仅加载 http 和 https 方案。
在您的MainActivity中对此进行测试。尝试使用WebView
public class MainActivity extends AppCompatActivity {
String url = "http://www.google.com";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.webactivity);
final WebView webview = (WebView) findViewById(R.id.web1);
webview.loadUrl(url);
webview.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
if (url.startsWith("http") || url.startsWith("https")) {
return true;
} else {
webview.stopLoading();
webview.goBack();
Toast.makeText(MainActivity.this, "Unknown Link, unable to handle", Toast.LENGTH_SHORT).show();
}
return false;
}
});
}
}