android Webview 实现js调用java代码实现Activity跳转
今天有了一个需求,在android里webview加载的html页面,要求点击html页面的按钮实现Activity的跳转。
咱是是菜鸟,webview的接触不多,于是就和度娘来了次亲密接触。在其中也发现了一些问题。现在做个笔记:
首先:
- //返回到指定的Activity
- @JavascriptInterface
- public void go(final String destActivity) {
- mHandler.post(new Runnable() {
- @Override
- public void run() {
- if (TextUtils.isEmpty(destActivity)) {
- finish();
- } else {
- String reqActivity=getPackageName()+"."+destActivity;
- try{
- Intent checkActivity = new Intent();
- checkActivity.setClassName(getPackageName(),reqActivity);
- startActivity(checkActivity);
- finish();
- }catch(Exception e){
- Toast.makeText(DetailActivity.this, "对不起,跳转页面出现异常", Toast.LENGTH_SHORT).show();
- }
- }
- }
- });
- }
mHandler.post();这个是必要的,在UI线程执行
另外,关于Intent的跳转问题,我没有找到很好的途径。所以做了个字符串的拼接reqActivity。有别的好的方法的话,希望能告诉我,不胜感激。
这里要说一下 setCacheMode,清除缓存。解决从js传过来的参数一直都是最初的值。
html
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
- <script type="text/javascript" src="../js/jquery-1.7.2.min.js"></script>
- <title></title>
- </head>
- <body>
- <input type="button" value="返回安卓的某一个界面" onclick="window.gotoPointedActivity.go('')"/>
- </body>
- </html>
android Webview 实现js调用java代码实现Activity跳转的更多相关文章
- Android的WebView通过JS调用java代码
做项目时候会遇到我们用WebView 打开一个web,希望这个web可以调用自己的一些方法,比如我们在进一个web页面,然后当我们点击web上的某个按钮时,希望能判断当前手机端是否已经登录,如果未登录 ...
- android webView开发之js调用java代码示例
1.webView设置 webView.getSettings().setJavaScriptEnabled(true);//设置支持js webView.addJavascriptInterface ...
- js调用java代码返回解决方案
版权声明:本文为楼主原创文章,未经楼主允许不得转载,如要转载请注明来源. 今天封装一个加密标签,遇到一个问题,我需要对页面上的数据调用java后台代码进行解密,而标签里只能通过js获取到数据,所以就遇 ...
- 六、Android学习笔记_JNI_c调用java代码
1.编写native方法(java2c)和非native方法(c2java): package com.example.provider; public class CallbackJava { // ...
- Android学习笔记_JNI_c调用java代码
1.编写native方法(java2c)和非native方法(c2java): package com.example.provider; public class CallbackJava { // ...
- Xamarin Android Webview中JS调用App中的C#方法
参考链接:https://github.com/xamarin/recipes/tree/master/Recipes/android/controls/webview/call_csharp_fro ...
- Android webview js 调用java方法报错"Uncaught TypeError: Object [object Object] has no method xx
webview开发,在Android4.4下js调用java方法报错"Uncaught TypeError: Object [object Object] has no method,同样的 ...
- android控件之webview和js与java交互
首先添加权限:<uses-permission android:name="android.permission.INTERNET"/> 布局文件: <Relat ...
- Android 使用js调用Java
效果如: 主要用到一个接口类:MyObject package com.example.jsdemo; import android.content.Context; import android.s ...
随机推荐
- Python的程序结构[5] -> 模块/Module[0] -> 内建模块 builtins
builtins 内建模块 / builtins Module 在Python的模块中,有一种特殊模块,无需导入便可以使用,其中包含了许多内建函数与类. builtins 模块内容 / builtin ...
- 洛谷——P1755 斐波那契的拆分
P1755 斐波那契的拆分 题目背景 无 题目描述 已知任意一个正整数都可以拆分为若干个斐波纳契数,现在,让你求出n的拆分方法 输入输出格式 输入格式: 一个数t,表示有t组数据 接下来t行,每行一个 ...
- 什么是IIS并发连接数
http://blog.csdn.net/leftfist/article/details/38407223 https://wk.baidu.com/view/2962d073f242336c1e ...
- Android - toolbar navigation 样式
1.修改title 边距 修改边距使用系统的app属性来引入使用,即: xmlns:app="http://schemas.android.com/apk/res-auto" 1 ...
- 使用Intent调用内置应用程序
布局代码如下: <?xml version="1.0" encoding="utf-8" ?> <LinearLayout xmlns:and ...
- NPM安装报错:WARN PACKAGE.JSON, NO REPOSITORY FIELDS
今天在安装npm包时遇到了这个错误,出现如下提示: npm WARN package.json xxx@0.0.0 No repository field. npm WARN package.json ...
- DELLR720 独立显卡DVI转VGA问题
第一种情况:DELLR720默认不接独立显卡,直接用板载VGA输出,不需要调system blos 第二种情况:DELLR720接独立显卡,需要DVI输出,需要更改系统blos system blos ...
- 【Hadoop】Flink VS Spark?Drill VS Presto?
参考资料: drill 官网:http://drill.apache.org/ drill安装使用:https://segmentfault.com/a/1190000002652348 drill简 ...
- [转载]Elasticsearch Java API总汇
from: http://blog.csdn.net/changong28/article/details/38445805#comments 3.1 集群的连接 3.1.1 作为Elasticsea ...
- How is javascript asynchronous AND single threaded?
原文: https://www.sohamkamani.com/blog/2016/03/14/wrapping-your-head-around-async-programming/ ------- ...