【问题标题】:Unknown URL Scheme [closed]未知的 URL 方案 [关闭]
【发布时间】:2019-02-21 15:59:00
【问题描述】:

我有一个 android WebView,它使用意图打印到收据打印机。使用 chrome 浏览器可以正常工作,但是当我打开尝试使用 WebView 打印时,它会给我一条错误消息,如下所示

Webpage not available.
The webpage at
intent://....
net::ERR_UNKNOWN_URL_SCHEME.

我已经看到了以下链接,但我不确定如何实现它。 how-to-fix-unknown-url-scheme-in-android-webview

我不是安卓开发者。任何建议表示赞赏。

【问题讨论】:

    标签: android android-intent webview


    【解决方案1】:

    解决方案在您提供的链接中。

    WebView 通常会识别httphttps,除了 这些,例如 - intent://,market://,app://,mail:// 等不会 除非我们添加 handler 来处理这些 url,否则被 WebView识别 方案或通过禁用这些方案并且仅加载 httphttps 计划。

    在您的 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;
          }
        });
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-19
      • 1970-01-01
      • 2018-06-20
      • 2023-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-28
      相关资源
      最近更新 更多