免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持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需多少钱
在数字化时代,几乎每个公司和商家都拥有自己的网站以及移动应用程序,这对于品牌推广和市场营销非常重要。做一个适应移动时代的网站和移动应用程序早已成为了一种主流趋势,但是如何在项目开发期间确定初步投资预算呢?通常来说,网站和移动应用的成本取决于下面三个要素:1
2023-05-18
做一个app和做一个网页哪个简单
做App和做网页,都是需要掌握一定的编程和设计技术,然而在实际操作中两者有很大不同,以下将从技术难度、用户习惯、操作系统等方面进行比较,就哪一个更简单给出答案。1. 技术难度做网页相对而言比较简单,只需要掌握HTML、CSS、JavaScript等基本技术
2023-05-18
中国使用ionic做app
Ionic是一个快速构建混合移动应用的开源框架,它基于HTML、CSS、和JavaScript。Ionic的使用非常广泛,特别是在中国。在中国,许多公司和开发者在采用Ionic来构建业务应用和个人应用。下面我们将为大家介绍中国使用Ionic做app的原理和
2023-05-18
怎么用html5做app
使用HTML5做移动应用程序被称为混合移动应用程序开发,与传统的原生应用程序开发相比,它具有许多优点。 HTML5与JavaScript和CSS3一起使用,可以创建适用于iPhone、iPad和Android设备的面向Web的应用程序。以下是如何使用HTM
2023-05-18
在线做app的网站文档介绍内容
在现今的移动互联网时代,App已成为人们生活中必不可少的一部分。许多人想要拥有自己的App,但是由于学习成本和技术困难导致许多人望而却步。针对这个问题,有些在线做App的网站应运而生。本文将为大家介绍在线做App的网站是如何运作的。在线做App的网站其原理
2023-05-18
营销型网站app建设做的比较好的有哪些
营销型网站和App建设涉及到的具体内容非常多,需要从多个方面考虑和梳理。下面,我们从用户体验、设计理念、技术选型等多个方面来分析和介绍一些做的比较好的营销型网站和App。一、用户体验用户体验是影响网站和App成功与否的一个重要因素。一个能提供良好用户体验的
2023-05-18
网页加壳做成app
网页加壳可以将一个网页包装成一个独立的应用程序(App),使其具有更好的用户体验和高度的可扩展性。网页加壳的原理就是将网页资源打包在应用程序中,然后通过Webview控件来展示网页内容。Webview是Android系统提供的用于在应用程序中展示网页的控件
2023-05-18
如何把手机网页做得像app
现在越来越多的网站都有了自己的移动端网页,但是将网页转化为app依然是许多企业和互联网人士所感兴趣的话题。因为在手机应用市场推出一款app需要受到审核等限制,而将网页转化为app可以在一定程度上避免这些限制。思路上,将网页转化为app有两种方法:一种是把网
2023-05-18
哪个app做免费h5模板
在现代互联网中,开发一个网站或者应用程序是非常困难的。设计过程中需要涉及许多方面的技术,否则可能会导致困难或错误。因此,为了让开发人员更容易使用的同时提高开发效率,各种工具和框架应运而生。在这里我们将介绍如何使用一个名为「易企秀」的APP来创建H5模板。一
2023-05-18
可打包网页做成app
将网页打包成应用程序,这是一种常见的做法,可以让用户更方便地访问和使用网页内容。将网页打包成应用程序能够提供更好的用户体验,使得用户像使用原生应用程序一样使用网页。本文将介绍两种最常见的将网页打包成应用程序的方法:1. 使用Apache Cordova 打
2023-05-18
html5做的app
HTML5是一种可用于开发基于Web的应用程序的技术。使用HTML5来构建应用程序的主要好处之一是,可以支持各种设备上的应用程序,而不需要为每个设备构建单独的版本。HTML5也使开发更容易,因为它使用HTML,CSS和JavaScript等基本Web技术。
2023-05-18
app比网站难做吗
App(应用程序)和网站都是现代数字化时代人们无法离开的两种不同的技术产品。然而,由于App中涉及更多的机密性和可编程性问题,可能会使其难度比网站开发更大。 下面将对App和网站的区别以及在这些方面的难度进行详细介绍。1. 应用程序与网站的区别应用程序是程
2023-05-18
©2015-2021 智电瑞创 蜀ICP备17039183号