zoukankan      html  css  js  c++  java
  • android apk打包之后js调用失效的解决办法

    现在android下应用开发的界面用html5+css3写,交互用javascript和java沟通,但是用上混淆后发现javascript调用java类定义的方法老说找不到这个方法。
    一番折腾后发现是用proguard混淆后java定义的类变了名字,不仅如此,这个类定义的方法不知所踪,所以才导致javascript找不到这个方法。
    假设我们定义的java类为:
    点击(此处)折叠或打开
    public
    class JSNotify {

            public void notify ( String url ) {
           
        if ( null != mBrowser ) {
                    mBrowser.loadUrl(url);
        
           }
            }
        }
    在主类中和javascript的勾结代码为:
    点击(此处)折叠或打开
    //
    install callback function
            mBrowser.addJavascriptInterface(new
    JSNotify(), "external");
    混淆文件加上这段就没问题了:
    点击(此处)折叠或打开
    -keep public class
    <Package Name>.MainActivity$JSNotify {
    public void
    notify(java.lang.String);
    }

  • 相关阅读:
    python urllib urllib2
    python 标准库获取网络信息
    dell N1500 安全配置
    python jinjia2模板使用
    flask-admin
    github使用
    python中文处理
    C++输入和输出中进制问题
    hdu1708(C++)
    hdu1017(C++)
  • 原文地址:https://www.cnblogs.com/crazywenza/p/3303499.html
Copyright © 2011-2022 走看看