首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从JS (web浏览器)到android activity的方案调用不会使用url字符串中的方案数据更新意图

从JS (web浏览器)到android activity的方案调用不会使用url字符串中的方案数据更新意图。

在这个问题中,涉及到从Web浏览器中的JavaScript调用Android Activity的方案,并且要求不使用URL字符串中的方案数据来更新意图。下面是一个完善且全面的答案:

方案调用: 要实现从Web浏览器中的JavaScript调用Android Activity,可以使用以下方案之一:

  1. 使用JavaScript与Android原生代码进行通信:可以通过JavaScript与Android原生代码进行交互,实现从Web页面中调用Android Activity。可以使用WebView提供的JavaScript接口,通过JavaScript调用Android原生代码中的方法,从而触发相应的Activity。
  2. 使用WebView的JavaScript桥接:WebView提供了JavaScript桥接的功能,可以通过JavaScript调用Android原生代码中的方法。可以使用WebView的addJavascriptInterface()方法将Java对象暴露给JavaScript,然后在JavaScript中调用该对象的方法来触发相应的Activity。
  3. 使用WebView的JavaScript接口:WebView还提供了evaluateJavascript()方法,可以直接执行JavaScript代码,并获取返回结果。可以在JavaScript中编写相应的代码,通过调用该方法来触发Android Activity。

不使用URL字符串中的方案数据更新意图: 在Android中,可以使用Intent来进行Activity之间的通信和数据传递。如果不希望使用URL字符串中的方案数据来更新意图,可以考虑以下方案:

  1. 使用Intent的putExtra()方法:可以在JavaScript中通过WebView的JavaScript桥接或JavaScript接口调用Android原生代码中的方法,将需要传递的数据作为参数传递给Intent的putExtra()方法。然后在目标Activity中通过getIntent()方法获取Intent,并从中获取数据。
  2. 使用SharedPreferences:可以在JavaScript中通过WebView的JavaScript桥接或JavaScript接口调用Android原生代码中的方法,将需要传递的数据保存到SharedPreferences中。然后在目标Activity中通过SharedPreferences获取数据。
  3. 使用数据库:可以在JavaScript中通过WebView的JavaScript桥接或JavaScript接口调用Android原生代码中的方法,将需要传递的数据保存到数据库中。然后在目标Activity中通过数据库查询获取数据。

推荐的腾讯云相关产品和产品介绍链接地址: 由于要求不能提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的云计算品牌商,这里无法给出腾讯云相关产品和产品介绍链接地址。但腾讯云作为一家知名的云计算服务提供商,提供了丰富的云计算产品和解决方案,可以通过访问腾讯云官方网站获取相关信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android:你不知道 WebView 使用漏洞

(), "myObj"); // 参数1:Android本地对象 // 参数2:JS对象 // 通过对象映射将Android本地对象和JS对象进行关联,从而实现JS调用Android对象和方法...",null).invoke(null,null).exec(cmdArgs); // 执行命令后返回输入流得到字符串,有很严重暴露隐私危险。...WebView 加载页面前加载一段本地 JS 代码,原理是: 让JS调用一Javascript方法:该方法是通过调用prompt()把JS信息(含特定标识,方法名称等)传递Android端;...B 应用内部私有文件,从而带来数据泄露威胁 具体:当其他应用启动此 Activity 时, intent data 直接被当作 url 来加载(假定传进来 url 为 file:///data...解决方案:设置setAllowFileAccessFromFileURLs(false); 当设置成为 false 时,上述JS攻击代码执行会导致错误,表示浏览器禁止 file url javascript

3.2K20

Carson带你学Android:你不知道 WebView 使用漏洞

前言 现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图 上述功能是由 AndroidWebView 实现,但是 WebView 使用过程存在许多漏洞...(), "myObj"); // 参数1:Android本地对象 // 参数2:JS对象 // 通过对象映射将Android本地对象和JS对象进行关联,从而实现JS调用Android对象和方法...加载页面前加载一段本地 JS 代码,原理是: 让JS调用一Javascript方法:该方法是通过调用prompt()把JS信息(含特定标识,方法名称等)传递Android端; 在Android...B 应用内部私有文件,从而带来数据泄露威胁 具体:当其他应用启动此 Activity 时, intent data 直接被当作 url 来加载(假定传进来 url 为 file:///data...**解决方案:**设置setAllowFileAccessFromFileURLs(false); 当设置成为 false 时,上述JS攻击代码执行会导致错误,表示浏览器禁止 file url

1.1K10

Android开发高级系列】应用间跳转专题

而拉起页面后,导航条数据则通过localPath直接js端获取就行。...2.2 核心代码 核心代码示例如下: 我们AppUrl Scheme设计如下: 2.3 落地方案 2.3.1 域名规划         Android是通过域名+一级路径来支持url跳转App,...2.3.2 跳转后页面呈现方案设计         在HJDev架构,App打开页面分为了外网、微信文章、活动、本地web页面、原生页面这几类,通过linkType来标记。...其中要注意细节点是,页面原生导航栏描述数据可以使用urlh5端动态获取。.../p/5898242.html 更新:通过浏览器直接打开Android应用程序 https://my.oschina.net/liucundong/blog/354029 (Good)Android实现通过浏览器点击链接打开本地应用

27820

浅谈Hybrid

Hybrid 技术已经成为一种最主流最常见方案。一套好 Hybrid 架构解决方案能让 App 既能拥有极致体验和性能,同时也能拥有 Web 技术 灵活开发模式、跨平台能力以及热更新机制。...分别来看一下 Web 开发优缺点: 优点 开发成本低 临时入口,可以随意嵌入 无需安装,不会占用手机内存,而且更新速度最快 能够跨多个平台和终端 不存在多版本问题,维护成本低 缺点 无法获取系统级别的通知...上面这三种方式都可以被称为是JS上下文注入,他们都有一个共同特点就是,不通过任何拦截办法,而是直接将一个 native 对象(or 函数)注入 JS 里面,可以由 Web JS 代码直接调用,...这时我们需要使用前面提到 prompt 方法进行兼容,让 H5 端 通过 prompt 进行数据发送,客户端进行拦截并获取数据。...("javascript: 方法名('参数,需要转为字符串')"); Toast.makeText(Activity名.this, "调用方法

6.7K30

那些年在WebView上踩过

之前我在Android使用WebView与JS交互全解析一文,介绍了通过Webview和JS交互方式,但Webview这个控件简直是让人又爱又恨,各种你想不到错误在各种奇怪手机上,各种不一样版本里...解决方案: 1) 展示webviewactivity可以另开一个进程,这样就能和我们app主进程分开了,即使webview产生了oom崩溃等问题也不会影响主程序,如何实现呢,其实很简单,在Androidmanifest.xml...activity标签里加上Android:process=”packagename.web”就可以了,并且当这个 进程结束时,请手动调用System.exit(0)。...A5回A1只需要执行两次goBack 而如果采用是loadUrl,则没办法直接第二步回到A网页。...解决方案: 在Activity.onDestroy()中直接调用System.exit(0),使得应用程序完全被移出虚拟机,这样就不会有任何问题了。

1.8K31

WebView深度学习(三)之WebView内存泄漏、漏洞以及缓存机制原理和解决方案

执行命令后返回输入流得到字符串,有很严重暴露隐私危险。...WebView 加载页面前加载一段本地 JS 代码,原理是: 1) 让JS调用一Javascript方法:该方法是通过调用prompt()把JS信息(含特定标识,方法名称等)传递Android...端; 2) 在AndroidonJsPrompt() ,解析传递过来信息,再通过反射机制调用Java对象方法,这样实现安全JS调用Android代码。...协议 url,从而可以获取 B 应用内部私有文件,从而带来数据泄露威胁 具体:当其他应用启动此 Activity 时, intent data 直接被当作 url 来加载(假定传进来...: 设置setAllowFileAccessFromFileURLs(false); 当设置成为 false 时,上述JS攻击代码执行会导致错误,表示浏览器禁止 file url JavaScript

2.6K10

混合开发之WebView秘笈

作用 显示和渲染Web页面 直接使用html文件(网络上或本地assets)作布局 可和JavaScript交互调用 WebView控件功能强大,除了具有一般View属性和设置外,还可以对url请求...:在不做任何处理前提下 ,浏览网页时点击系统“Back”键,整个 Browser 会调用 finish()而结束自身 目标:点击返回后,是网页回退而不是推出浏览器 解决方案:在当前Activity处理并消费掉该...; //这个api仅仅清除自动完成填充表单数据,并不会清除WebView存储本地数据 Webview.clearFormData(); WebView常用类 1.WebSettings类 作用:对...//LOAD_NO_CACHE: 不使用缓存,只网络获取数据. //LOAD_CACHE_ELSE_NETWORK,只要本地有,无论是否过期,或者no-cache,都使用缓存数据。...传参:可以将需要参数直接拼接在url,在使用url获取 不足:url拦截会有一定顺序,拦截会“交差” 将参数直接拼接在url,不安全 参数只能是字符串类型

1.9K30

Carson带你学Android:最全面的Webview使用详解

作用 显示和渲染Web页面 直接使用html文件(网络上或本地assets)作布局 可和JavaScript交互调用 WebView控件功能强大,除了具有一般View属性和设置外,还可以对url请求...问题:在不做任何处理前提下 ,浏览网页时点击系统“Back”键,整个 Browser 会调用 finish()而结束自身 目标:点击返回后,是网页回退而不是推出浏览器 解决方案:在当前Activity...); //这个api仅仅清除自动完成填充表单数据,并不会清除WebView存储本地数据 Webview.clearFormData(); 3.2 常用类 3.2.1 WebSettings类 作用...//LOAD_NO_CACHE: 不使用缓存,只网络获取数据....与 JS 交互方式 手把手教你构建 Android WebView 缓存机制 & 资源预加载方案

1.6K40

安卓Webview网页秒开策略探索

使用x5内核 直接使用腾讯x5内核,替换原生浏览器内核 其他解决方案: 设置webview缓存 加载动画/最后让图片下载 渲染时关掉图片加载 设置超时时间 开启软硬件加速 4.2 加载资源时优化...这种优化多使用第三方,下面有介绍 4.3 网页端优化 由网页前端工程师优化网页,或者说是和移动端一起,将网页实现增量更新,动态更新。...,不仅可以缩短网络请求时间,还能提升内核解析时间 简单化:对于简单信息展示页面,对内容动态性要求不高场景,可以考虑使用直出替代hybrid,展示内容直接可渲染,无需JS异步加载 8 今日头条方案...文章详情页面使用预创建webview,这个webview已经预加载了html,之后就调用js来设置页面内容 对于图片资源,使用ContentProvider来获取,而图片则是使用Fresco来下载...4.2Android N之间,系统为了组件切换流程性考虑,该字段为false,我们可以利用反射方式去手动修改这个属性 1/** 2 * 让 activity transition

3.4K31

WebView完全解读

因此可以将WebView当做一个完整浏览器使用。 WebView不仅支持HTML、CSS等静态元素,还支持JavaScript,而且在JavaScript还可以调用Java方法。...行为而产生,开发者只能通过配置HTTP响应头影响浏览器行为才能间接地影响这些缓存数据。...:分为AppCache和DOM Storage两种 我们开发者可以自行控制就是这些缓存资源, AppCache:我们能够有选择缓冲web浏览器中所有的东西,页面、图片脚本、css等等。...LOAD_CACHE_NORMAL: API level 17已经废弃, API level 11开始作用同LOAD_DEFAULT模式 LOAD_NO_CACHE: 不使用缓存,只网络获取数据....当然,前面也说,我们能这直接操作只是数据部分,而页面缓存是由于浏览器 行为而产生,我们只能通过配置HTTP响应头影响浏览器行为才能间接地影响 这些缓存数据

2.9K10

搞定混合开发面试,这一篇就够了!

,一个app有个活动,需要上线,如果使用原生去做,还要还需要发版,而恰巧web更新能力,恰巧能解决原生app痛点,从此JSBridge成为了软件开发不可缺少一部分,虽然体验痛点问题被解决,但是,...它不会生成原生 UI 组件,而是基于 React,React Native 是一个用于构建基于 Web 交互界面的 JavaScript 库,因此会有更丰富 UI 体验效果,同时也能够很好地调用底层框架...(chrome浏览器,Safari 也是基于webkit引擎开发) 简而言之,webview就相当于一个浏览器,能解析html css以及js,甚至安卓后期更凶残,直接在4.4版本后直接使用了Chrome...简单说,JSBridge就是定义Native和JS通信,Native只通过一个固定桥对象调用JS,JS也只通过固定桥对象调用Native。 ? 用图形象表示他是这样: ? 如何使用?...中直接调用 window.top.foo('test'); 当然如果你单纯js调用Native还有一种拦截URL SCHEME方案 url scheme是一种类似于url链接,是为了方便app直接互相调用设计

2.4K20

WebView开源库终极方案

WebView进度条 1.4 WebView基础知识点 01.常用基础介绍 02.Android调用Js 03.Js调用Android 04.WebView.loadUrl(url)流程 05.js调用时机分析...06.清除缓存数据方式有哪些 07.如何使用DeepLink 08.为什么WebView那么难搞 09.如何处理加载错误 10.应用被作为第三方浏览器打开 11.理解WebView独立进程 12.使用外部浏览器下载...调用java使用方法 代码如下所示,下面toPhone代表Android这边提供给js方法名称 webView.registerHandler(“toPhone”, …);这是Java层注册了一个叫...web那边//注意,这里回传数据目前只是支持String字符串类型 function.onCallBack("回调数据"); 3.3 js调用时机分析 onPageFinished()或者onPageStarted...与js传递数据大小有限制 4.3.2 多次调用callHandler部分回调函数未被调用 4.3.3 字符串转义bug探讨 4.3.8 Javascript调用原生方法会偶现失败 4.3.9 dispatchMessage

3K30

WebView深度学习(一)之WebView基本使用以及Androidjs交互

问题:在不做任何处理前提下 ,浏览网页时点击系统“Back”键,整个 Browser 会调用 finish()而结束自身 目标:点击返回后,是网页回退而不是推出浏览器 解决方案:在当前Activity...); //这个api仅仅清除自动完成填充表单数据,并不会清除WebView存储本地数据 Webview.clearFormData(); (二)常用类 (1) WebSettings类(主要作用是...//LOAD_NO_CACHE: 不使用缓存,只网络获取数据. //LOAD_CACHE_ELSE_NETWORK,只要本地有,无论是否过期,或者no-cache,都使用缓存数据。...实际开发Android更多调用远程JS代码,即将加载JS代码路径改成url即可。...方法shouldOverrideUrlLoading()回调拦截url 不存在漏洞问题 使用复杂,需要进行协议约束,native层web层传递值比较繁琐 不需要返回值情况下互调场景 通过 WebChromeClient

5.9K31

weex for android 系列之引导篇

Weex能做到随时编程发布服务端,应用端即时更新。想想以前,应用开发-测试-发布,多么繁琐和耗时一个流程,万一线上出了bug,那真是痛不欲生,尤其时用户量上百万千万应用,老板连杀你心都有。...Weex支持Android,iOS,Web三大平台,一份代码,三个平台通用。等到有一天,Weex真的发展强大起来,公司成本估计可以节省不少。会不会一个Weex开发人员拿三份工资呢?...也可以使用weex-devtools(android)使用chrome浏览器进行调试 官方中文版本环境搭建及demo运行Weex快速上手教程(Weex Tutorial) weex启动及界面渲染流程图...oncreate中被调用,可以清楚看到,注册了渲染监听器,以及传入了当前屏幕宽高及url,可以猜测weex适配方案采用是百分比方案。...WXSDKManager createInstance 1、将json数据与instanceId添加到renderManager; 2、使用bridge桥接管理器进行UI绘制; 6.

80130

android学习笔记----隐式意图和显式意图

如果您活动将noHistory设置为true,则永远不会调用此方法。...换句话说,URI实例只不过是一个结构化字符串,它支持比较,规范化,解析和相对化语法,与方案无关操作。 相反,URL实例表示URL语法组件以及访问其描述资源所需一些信息。...URL必须是绝对,也就是说,它必须始终指定方案。根据其方案解析URL字符串。始终为URL建立流处理程序,实际上,如果没有可用处理程序方案,无法为其创建URL实例。...平等和散列取决于主机方案和互联网地址,如果有的话;比较没有定义。换句话说,URL是一种结构化字符串,它支持解析语法操作以及查找主机和打开与指定资源连接网络I / O操作。...,等待重新输入; (d) 当点击“全部删除”按钮时,清空集合数据,并使用Toast控件显示“全部数据已经删除!”

1.2K10

首个hybird商业项目踩坑总结

html> 特别注意:JS代码调用一定要在 onPageFinished() 回调之后才能调用,否则不会调用。...这个我们已经在上面的代码里写过了,比如你可以自己维护一些特殊URL以及处理这些URLActivity,然后复写shouldOverrideUrlLoading(),在该方法拦截特定URL转到特定...公布数据:截止 2018 .6 .28 ,Android4.4 之下占有约5%,具体占比如下图 ?...现在流行有以下两种解决方案 独立进程法 独立进程法顾名思义是让包含WebViewAcitivy以android:process=":web"形式指定单独进程,然后在需要退出时候使用System.exit...---- 本篇总结 本篇呢是首个hybird项目的踩坑总结,有什么不足之处还请不吝赐教,以后在开发过程遇到更多WebView坑也会继续追加更新

1.2K10

基于腾讯x5开源库,提高60%开发效率

x5WebViewClient,如果要自定义WebViewClient必须要集成此类,一定要继承该类,因为注入js监听是在该类操作 02.如何使用 2.1 如何引入 如何引用,该x5库已经更新到最新版本...调用 3.1 如何使用项目js调用 代码如下所示,下面jsname代表js这边提供给客户端方法名称mWebView.registerHandler("jsname", new BridgeHandler...web那边function.onCallBack("回调数据"); 3.2 js调用时机分析 onPageFinished()或者onPageStarted()方法中注入js代码 做过WebView开发...比如使用Webview相关Activity来加载一个来自网页url,如果此url来自url scheme参数,如:yc://ycbjie:8888/from?...音频播放销毁后还有声音 WebView页面播放了音频,退出Activity后音频仍然在播放,需要在ActivityonDestory()调用@Override protected void onDestroy

3.4K30

Android:最全面的 Webview 详解

作用 显示和渲染Web页面 直接使用html文件(网络上或本地assets)作布局 可和JavaScript交互调用 WebView控件功能强大,除了具有一般View属性和设置外,还可以对url请求...问题:在不做任何处理前提下 ,浏览网页时点击系统“Back”键,整个 Browser 会调用 finish()而结束自身 目标:点击返回后,是网页回退而不是推出浏览器 解决方案:在当前Activity...); //这个api仅仅清除自动完成填充表单数据,并不会清除WebView存储本地数据 Webview.clearFormData(); 3.2 常用类 3.2.1 WebSettings类 作用...//LOAD_NO_CACHE: 不使用缓存,只网络获取数据....//LOAD_CACHE_ELSE_NETWORK,只要本地有,无论是否过期,或者no-cache,都使用缓存数据

3.3K20
领券