免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

webview做跳转app的逻辑

Webview是Android系统中用于将网页嵌入到应用程序中的控件。在移动应用中,有时需要跳转到应用的某个页面或执行某个操作,这时就可以使用Webview的跳转功能。

Webview跳转app的原理如下:

1. 通过JS交互通信

Webview可以通过JavaScript桥接(WebView.addJavascriptInterface(Object object, String name)方法)与页面中的JavaScript进行通信,这样就可以将被跳转的APP的信息通过JavaScript在Webview中传递。同时需要在Webview中重写shouldOverrideUrlLoading方法,可以在这个方法中实现跳转逻辑,对检测到的原生协议做处理,如tel、mailto等,避免页面被跳转到其他应用或浏览器。代码示例如下:

```

WebView webView = findViewById(R.id.webView);

webView.getSettings().setJavaScriptEnabled(true);

webView.addJavascriptInterface(new JSInterface(), “Android”);

webView.setWebViewClient(new WebViewClient(){

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

if (url.startsWith("app://")) {

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));

startActivity(intent);

return true;

}

return false;

}

});

class JSInterface{

@JavascriptInterface

public void jumpToNative(String params){

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(params));

startActivity(intent);

}

}

```

2. 通过拦截URL Scheme实现跳转

URL Scheme是iOS和Android平台都支持的APP间相互跳转的协议,可以在应用程序中定义 URL Scheme,在需要调用 APP 的地方通过调用这些定义好的 URL Scheme 来触发 APP 的行为。同样需要在Webview中重写shouldOverrideUrlLoading方法,然后通过Intent启动被跳转APP。代码示例如下:

```

WebView webView = findViewById(R.id.webView);

webView.setWebViewClient(new WebViewClient(){

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url) {

if (url.startsWith("app://")) {

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));

startActivity(intent);

return true;

}

return false;

}

});

```

以上两种方法都需要在App和H5页面的协作下实现。通过在WebView中嵌入具有相应业务逻辑的HTML5应用,用户可以在原有 WebView 业务的基础上,通过一定的操作使应用跳转到其他原生应用程 序中进行业务处理。


相关知识:
做翻译有没有网站的app
翻译已经成为日常生活中不可或缺的一环,无论我们是职场人士还是学生,都会经常需要翻译各种语言的文本。出差旅游、交流协商、学习阅读等都需要拥有良好的翻译能力。为了方便大家在日常生活中高效地进行翻译,越来越多的翻译网站和应用程序被开发出来,让我们来详细了解一下这
2023-05-18
专门做评测app的网站整理中
随着智能手机越来越普及,移动应用程序也随之蓬勃发展。每天都有新的应用推出,不仅在应用商店中展示,还有各种第三方网站和平台进行评测和推广。但是,对于用户来说,如何找到值得信赖的评测网站是一个非常关键的问题。因此,本文将为大家介绍一些做评测app的网站,以帮助
2023-05-18
织梦web做成手机app
织梦web是一个非常流行的网站建设平台,它拥有强大的功能和丰富的插件,可以帮助人们快速构建自己的网站。随着智能手机的普及和移动互联网的发展,越来越多的人开始关注如何将自己的网站变成手机app,以提高用户体验和方便访问。下面我们就来探究一下如何将织梦web做
2023-05-18
用浏览器做网站app
随着移动互联网的发展,越来越多的网站也开始建立自己的移动应用程序,称为App。但是,对于一些小型的网站或者个人网站来说,开发一个完整的应用程序是不现实的,因为这需要大量的时间和资金投入。因此,使用浏览器做网站App是一个非常不错的解决方案。浏览器做网站Ap
2023-05-18
为什么app不做成网页
App和网页都是互联网上的展示形式,但是两者的本质却有很大不同。App是安装在设备上的本地应用,而网页是通过互联网访问的在线平台。虽然两者都提供了丰富的信息和功能,但是在实际的应用场景中它们的差异性就显而易见了。下面将从原理和详细介绍两个方面来说明为什么A
2023-05-18
如何把手机网页做得像app
现在越来越多的网站都有了自己的移动端网页,但是将网页转化为app依然是许多企业和互联网人士所感兴趣的话题。因为在手机应用市场推出一款app需要受到审核等限制,而将网页转化为app可以在一定程度上避免这些限制。思路上,将网页转化为app有两种方法:一种是把网
2023-05-18
但想为网站做app
为网站做App的原理和方法在当今社会信息化的背景下,移动互联网的普及使得手机端上的应用程序越来越多,成为了人们最为常用和便捷的信息交流途径之一。作为一名网站博主,如果想要更好地服务于用户,或者提高用户的黏性,就可以考虑为自己的网站开发一个APP。那么,为网
2023-05-18
vue做app单选框radio选中
在Vue中使用单选框(radio)非常简单,可以使用v-model指令将单选框的值绑定到一个变量上,当选中的单选框改变时,变量的值也会相应地更新。以下是一个例子:``` 男性 女性 您选择的性别
2023-05-18
html做的app
HTML(超文本标签语言)是一种用于创建网页的标记语言。近年来,由于HTML语言具有灵活性和易操作性等优点,逐渐被应用于移动应用程序的制作。HTML做的APP的实现原理主要是利用HTML5技术,将Web页面封装成可以在移动设备上安装和运行的应用程序。一、H
2023-05-18
h5网页做成app
随着移动设备的普及,越来越多的企业选择将网页转化成APP,以提高用户体验和品牌影响力。而将H5网页转化成APP也是一种常见方式,下面将详细介绍如何将H5网页做成APP的原理和步骤。一、原理介绍将H5网页转化成APP的原理可以说是非常简单,就是将H5网页嵌入
2023-05-18
h5做app封壳
HTML5是一种开放标准的网站开发语言,它已逐渐成为移动应用程序开发的一种主流选择。而将HTML5应用封装为APP,则是一种较为流行的选择。在封装之后,APP可以像原生APP一样在移动设备上运行,用户可以无需通过浏览器访问应用,同时开发者也可以通过应用商店
2023-05-18
app前端开发是做什么
APP前端开发是一项复杂的技术,它可以实现各种各样的功能和呈现效果。在这个数字化时代,APP前端开发已成为一个越来越重要的技术领域。它是指通过HTML、CSS、JavaScript等技术开发出APP的界面和用户交互效果。那么,APP前端开发到底是做什么呢?
2023-05-18
©2015-2021 智电瑞创 蜀ICP备17039183号-1