/JSBridge

first upload

Primary LanguageJava

JSBridge

在Android开发中,常会需要在应用内展示网页内容,平时的运营活动更是会需要与native进行交互,比如:获取用户信息、调用对应的数据服务接口、控制展示页面的抬头信息等。
这个时候就需要我们有一套方便、快捷、可靠的方式来达到这些目的。目前常用的方式有两种:url拦截,js接口注入。JSBridge就是js注入的方式,只是它更聪明。

JSBridge的优点:
1、方便,一句代码就可以将框架注入到网页
2、可靠,依赖于系统支持的JavaScriptInterface注入方式进行扩展
3、能进行function异步回调.

接入步骤:

1.在工程的build.gradle中引入框架:

compile 'com.bamboo.talkweb:jsbridge:0.3.2'

2.在需要注入JSBridge的地方加入以下代码

JSBridgeClient.registerJSBridge(webView, injectedObj, bridgeName);

ps:以上代码必须要在webview.loadurl 完成之前调用

3.在网页中注入

if (typeof(bridgeName) != "undefined" && typeof(bridgeName.linkBridge) != "undefined") { 
    bridgeName.linkBridge(); 
}

4.在网页中使用

bridgeName.showToast('我是Toast');

最佳实践可参考

jsbridge-sample

JSBridge的详细使用方式