当前位置: 首页 > 知识库问答 >
问题:

在Web视图中点击链接时检测自定义URL

楮景明
2023-03-14

在我的Android应用程序中,必须使用API级别23到27,我显示了一个带有我的正确网站URL的web视图。当页面加载时,我能够成功地观察到“shouldOverrideUrlLoading,onPageStarted和onPageFinished”。< br >但在我的网站中,有一个必须在我的应用程序中处理的自定义URL。我的自定义网址是这样的“tvloc://lat:123.45,lng:456.78”。当我在web视图中点击自定义url链接时,它没有调用任何观察者。< br>
如何解决检测自定义URL的问题。这是我的代码:< br >

        client = new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            Log.v(TAG, "shouldOverrideUrlLoading -> " + url);
            return checkURL(url);
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
            String url = request.getUrl().toString();
            return checkURL(url);
        }

        private boolean checkURL(String url) {
            Log.v(TAG, "shouldOverrideUrlLoading -> " + url);
            if (url.startsWith(urlPrefix)) {

                return true;
            }

            return false;
        }

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
            Log.v(TAG, "onPageStarted -> " + url);
            if (!progressDialog.isShowing()) {
                progressDialog.show();
            }
        }

        @SuppressLint("JavascriptInterface")
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);

            if (progressDialog.isShowing()) {
                progressDialog.dismiss();
            }

            Log.v(TAG, "onPageFinished -> " + url);
        }
    };

    webView.setWebViewClient(client);

共有1个答案

皇甫学海
2023-03-14

WebView可能无法检测到“tvloc://lat:123.45,lng:456.78“作为URL。尝试更改为”http://tvloc=lat:123.45,液化天然气:456.78“。

 类似资料:
  • 当div使用selenium web驱动程序与FakeAnchor类链接时,无法单击自定义链接 在我的Ajax应用程序中,我们在div中有一个下拉链接(Customize),我想单击以自定义链接。我有定位器,它在使用旧selenium定制链接时运行良好,但在最新的web驱动程序中没有。有谁能告诉我这个问题或建议一些方法让它起作用吗? 单击自定义链接将打开“受尊重”选项(它实际上会打开对话框)。 下

  • 我正在使用Java SDK在HarmonyOS中创建一个自定义组件,在那里我必须双击一些任务。但我无法检测到双击事件。 在Android中,借助GestureDetector类,我们可以检测双击事件,如下所示: 在HMOS中,我尝试使用Component.TouchEventListener检测双击,如下所示: 但是,它没有检测到双击。在双击也有打印单点击检测。

  • 提前致谢 下面是我的plugin.xml

  • 我试图用RobolectRic2.1.1运行单元测试,但我无法让它膨胀自定义布局(例如,ViewPagerIndicator类)。假设这是我的布局: 其结果是: 我的最后一招是尝试使用影子类: 并使用。这再次导致 你们能给我指出正确的方向吗?我没主意了。多谢了。

  • 英文原文:http://emberjs.com/guides/views/customizing-a-views-element 视图在页面上表现为一个单一的DOM元素。通过修改tagName属性,可以改变视图生成的元素的类型。 1 2 3 App.MyView = Ember.View.extend({ tagName: 'span' }); 另外,还可以通过设置一个字符串数组到clas

  • 问题内容: 我正在FireFox中使用Selenium的IDE进行一些测试,我希望Selenium单击第二个链接(Text2)。知道我该怎么做吗?不幸的是,我无权访问HTML并且无法对其进行修改。记录功能似乎没有注册点击。 该代码附在下面。提前致谢! 问题答案: 硒也支持定位器。如果您知道确切的链接文本,则可以使用此定位器,但不能使用其他定位器。因此,对于上述示例:或。(有关其他定位器,请参见此网