您的位置:首页 > Web前端 > JavaScript

安卓通过js与网页的H5页面进行交换

2017-06-16 17:46 323 查看

常见遇到的需求是,从网页端调起本地的分享或者支付等……

思路是APP端与H5页面协定好一个方式,来调用APP里面的方法。

H5本地交换的js

安卓需要写的代码:

/**AndroidJavaScript
* 本地与h5页面交互的js类,这里写成内部类了
* returnAndroid方法上@JavascriptInterface一定不能漏了
*/
private class AndroidJavaScript  {
Context mContxt;

public AndroidJavaScript (Context mContxt) {
this.mContxt = mContxt;
}

@JavascriptInterface
public void returnAndroid(String name) {//从网页跳回到APP
if (name.isEmpty()||name.equals("")){
return ;
}
//这里写你的操作///////////////////////
Intent intent = new Intent(WebActivity.this, MainActivity.class);
intent.putExtra("name",name);
startActivity(intent);
}
}


给目标webview设置,

mWebView.addJavascriptInterface(new AndroidJavaScript(getApplication()), "android");


H5写法:

<a href='JavaScript:android.returnAndroid("要返回给APP的数据")'>点击我跳回APP</a>


注意:

小心,就是字母大小写问题,传参数也要对才行,写错就调用不起来了(android、returnAndroid())

returnAndroid方法上@JavascriptInterface一定不能漏了。

所有要被H5调用的方法都要加上@JavascriptInterface,安卓4.2后就要添加上这个就能用js

相关推荐

安卓HTML中打开一个连接!点击跳转了,可以实现返回上一级的HTML的页面

TextView显示html信息、在文本下面添加下划线、设置图片

loadDataWithBaseURL加载HTML数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐