`

Android4.0 升级到Android4.4 webView与javascript 无法通信

阅读更多

Android4.0 升级到Android4.4 webView与javascript 无法通信

 

报出的错误:如下

07-30 20:47:59.810: I/chromium(18861): [INFO:CONSOLE(12)] "Uncaught TypeError: Object [object Object] has no method 'download'", source: file:///android_asset/common/js/fileManager.js (12)

 

后台Java中写的是这个

appView.addJavascriptInterface(new PluginFileManager(OnOffLineActivity.this), "FileManager");

 

js 中找不到对应的方法:

 

网上解释:

Android4.2 以前WebView 提供了javascript 调用Java代码的方法,会造成很大的安全漏洞。Android官方在API17后,限制javascript代码只能调用声明了@JavascriptInterface 注解的Java方法。

所以你必须要给每个可供js代码调用的Java方法加一个@JavascriptInterface接口。

 

 

so: 需要修改:在调用对应的方法上加上注解即可:

 

@JavascriptInterface

@SuppressLint("SimpleDateFormat")

public void download(String fileUrl, String fileName, String module_name,

 

可参考

http://www.oschina.net/question/246739_174734

http://blog.csdn.net/cwc455826074/article/details/40616125

 

 

 

分享到:
评论

相关推荐

    android4.4 webview js交互冲突

    在Android 4.4(KitKat)版本中,WebView与JavaScript的交互可能会遇到一些问题,导致功能无法正常工作或出现性能瓶颈。本文将详细讲解如何解决“Android 4.4 WebView JS交互冲突”的问题。 首先,理解WebView与...

    android4.4 WebView与js交互

    在Android 4.4(KitKat)版本中,WebView提供了更加强大的功能,使得Java与JavaScript之间的通信更加便捷。这篇文档将详细探讨如何在Android 4.4的WebView中实现Java调用JavaScript以及JavaScript调用Java。 ### ...

    android 4.0中关于webview加载flash全屏的DEMO

    至于Flash全屏播放,通常需要通过JavaScript与WebView交互来实现。Flash内容通常会提供一些API供外部调用,例如全屏功能。因此,我们需要在WebView中启用JavaScript接口,并在Java代码中创建一个方法,该方法会被...

    android4.0 Browser 浏览器 源码

    通过对Android 4.0 Browser的源码进行研究,开发者不仅可以学习到Android系统层面的知识,还能掌握浏览器开发的核心技术,这对于创建自己的Android浏览器或者优化现有应用的网络和渲染性能都极具价值。但需要注意,...

    Webview与Javascript相互调用 (Android studio )demo

    在Android开发中,WebView是一个非常重要的...通过这个项目,开发者不仅可以学习到基本的WebView使用,还能掌握JavaScript与Android应用交互的关键技术,这对于开发混合型移动应用或增强现有应用的交互性都极其有用。

    HTML5视频全屏webview兼容4.4以上

    接着,可能需要在Java代码中设置WebView的JavaScript接口,以便于JavaScript和Android原生代码之间的通信。此外,可能还需要根据应用的需求,自定义一些行为,比如添加自定义的视频控制器或者处理特定的错误情况。 ...

    Android4.4 WebView使用实例,实现后退前进刷新错误处理等功能

    Android 4.4 WebView使用实例,实现后退、前进、刷新、错误处理等功能。完成项目,可直接eclipse运行。有WebViewClient常用方法注释,WebChromeClient常用方法注释。

    解决Android4.4 webview 图片如何自适应 之前的方法失效问题

    在Android 4.4(KitKat)版本中,开发者可能会发现之前用于处理WebView图片自适应的解决方案不再有效。本文将深入探讨这个问题,并提供有效的解决方案。 首先,让我们理解为什么在Android 4.4中,图片自适应可能会...

    Android 4.0 Browser源码

    6. **JavaScript交互**: Android 4.0 Browser支持JavaScript与原生代码的交互,这主要通过WebView的`addJavascriptInterface()`方法实现。开发者可以暴露Java对象给JavaScript,允许在网页中调用原生功能。 7. **...

    Android WebView与JavaScript交互实现Web App

    总结起来,Android的WebView组件为我们提供了一种强大的方式来加载和展示HTML内容,并通过JavaScript与Android原生代码进行交互。这种方式对于开发混合应用或实现特定功能(如登录验证、分享等)非常有用。在实际...

    android支持4.4与JS通信

    在Android开发中,JavaScript与原生应用的交互是常见的需求,特别是在构建混合应用程序时。Android 4.4(KitKat)引入了一种更强大的机制,名为`WebView`的API,使得Android应用能够与嵌入的JavaScript代码进行无缝...

    android中Webview与javascript的交互(互相调用)

    **二、JavaScript与Android互调的基础** 为了使WebView能够与JavaScript进行交互,我们需要开启JavaScript支持,并使用`addJavascriptInterface()`方法在WebView中暴露一个Java对象,这个对象的成员方法将可供...

    android4.0测试代码

    综上所述,Android 4.0测试代码涵盖了多个方面,从UI设计到功能实现,从性能优化到用户体验,都需要进行全面的测试以确保应用在新平台上的稳定性和可靠性。通过详细地研究如“android-14_代码.zip”这样的资源,...

    android4.0 Browser浏览器 源代码

    在Browser源码中,你可以找到JavaScript与Android平台交互的接口,如调用Android API、处理事件和数据绑定。 4. **UI组件** Android 4.0 Browser的用户界面由多个Android组件构成,如Activity、Fragment、View等。...

    Android4.0浏览器源码 可运行

    在源码中,你会看到WebKit的相关类和接口,如`WebView`,它是Android与WebKit交互的主要桥梁,提供了加载网页、执行JavaScript、处理网页事件等功能。 浏览器源码中的关键部分包括以下几个方面: 1. **Activity和...

    Android WebView与JavaScript交互

    本文将深入探讨Android WebView与JavaScript的交互机制,以及如何在实际开发中有效地运用这一特性。 首先,我们需要理解WebView的基本用法。在Android布局XML文件中,可以通过添加`<WebView>`标签创建一个WebView...

    IOS WebView与JavaScript交互实现Web App

    接下来,我们要讨论的是如何实现WebView与JavaScript的交互。在iOS中,`UIWebView`提供了两个主要的方法来实现这一功能:`stringByEvaluatingJavaScriptFromString:`和`addScriptMessageHandler:name:`。 1. `...

    Android WebView 去除标题

    至于JavaScript交互,WebView提供了多种方法与网页内容进行通信。`addJavascriptInterface`可以让Java对象的方法在JavaScript环境中调用,这对于实现数据传递、控制网页行为等非常有用。例如,我们可以创建一个Java...

Global site tag (gtag.js) - Google Analytics