[Android] 解决addJavascriptInterface混淆的bug

转载 2015年11月18日 14:12:03
现在android下应用开发的界面用html5+css3写,交互用javascript和java沟通,但是用上混淆后发现javascript调用java类定义的方法老说找不到这个方法。
一番折腾后发现是用proguard混淆后java定义的类变了名字,不仅如此,这个类定义的方法不知所踪,所以才导致javascript找不到这个方法。
假设我们定义的java类为:

点击(此处)折叠或打开

  1. public class JSNotify {

  2.         public void notify ( String url ) {
  3.             if ( null != mBrowser ) {
  4.                 mBrowser.loadUrl(url);
  5.             }
  6.         }
  7.     }
在主类中和javascript的勾结代码为:

点击(此处)折叠或打开

  1. // install callback function
  2.         mBrowser.addJavascriptInterface(new JSNotify(), "external");
混淆文件加上这段就没问题了:

点击(此处)折叠或打开

  1. -keep public class <Package Name>.MainActivity$JSNotify {
  2. public void notify(java.lang.String);
  3. }

Android4.2下 WebView的addJavascriptInterface漏洞解决方案

最近接到公司安全部门提出的关于app js调用的一个安全漏洞,这个漏洞是乌云平台(http://www.wooyun.org)报告出来的。 mWebView.addJavascriptInterfa...

android js互相调用的方法,混淆后js无效,addJavascriptInterface使用注意事项

1,java和js互相调用的演示代码 1.1,JSAndroidActivity 代码package com.homer.jsandroid;import java.text.RuleBasedCo...
  • codehxy
  • codehxy
  • 2016年07月16日 19:55
  • 3089

android软件开发之webView.addJavascriptInterface循环渐进【一】

代码 由于这里是第一阶段的webView所我就写个最简单的文章,这样大家可以循环渐进的来了解addJavascriptInterface这句话是怎么用的。 在这里我们引用Google的一个事例下面...
  • HiJson
  • HiJson
  • 2016年10月27日 21:00
  • 294

Android软件开发之webView.addJavascriptInterface循环渐进【一】

转自:http://blog.csdn.net/kingsollyu/article/details/6656865 首先必要的啰嗦几句,这几天写VC写的累的要死,突然间不想再写想VC了,手里面有一...
  • cesborn
  • cesborn
  • 2011年08月17日 21:29
  • 452

Android WebView 中 addJavascriptInterface 接口无效问题

说点题外话吧,从 Cocos2d-x 技术支持部门调到 Cocos Play 部门已经不知觉半年了。半年中,大概一天都是当成两天来用,完全没有时间做点自己的事情。最近正统的 Andorid 代码已经写...

Android混合开发之Activity类与html页面之间的相互跳转之Android:如何使用addJavaScriptInterface

概述:addJavaScriptInterface是一个非常有用的功能,帮助我们从一个网页传递值到Android XML视图(反之亦然)。 说明 本文将和大家分享Android中的 a...

android软件开发之webView.addJavascriptInterface循环渐进【二】

新建工程 为了让大家更容易的理解,所以我这里就尽量的将代码缩短,这是我的工程的配置 创建好工程之后,然后将界面调整为下面这样 添加代码 首先将两个button和webview添...
  • HiJson
  • HiJson
  • 2016年10月27日 21:07
  • 218

android webview addJavascriptInterface 的方法不能调用

以前一直觉着用html5做android app是一件很鸡肋的事(勿喷,请恕小的见识少)。 后来又发现很多大公司做的app中都或多或少的使用了html元素,比如微信、qq之类。 最近在网上闲逛发现一个...
  • xiealan
  • xiealan
  • 2014年12月04日 11:45
  • 3430

Android:如何使用addJavaScriptInterface

说明 本文将和大家分享Android中的 addJavaScriptInterface方式。这个类主要能帮助调用你的JavaScript函数中的任意活动方式。其中有如下一些需要注意的地方: a...

Android开发中java与javascript交互:PhoneGap插件vs addJavascriptInterface

1.        前言 在《用PhoneGap+jQueryMobile开发Android应用实例》中,我们讲到PhoneGap(以下称Cordova)开发环境的搭建,以及如何整合出一个基本的An...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[Android] 解决addJavascriptInterface混淆的bug
举报原因:
原因补充:

(最多只允许输入30个字)