androidFunc({
name: 'getIdentity',
params: {
name:‘Jack’
},
callback: function(json) {
alert(json);
})
js调用android中的方法,采用异步方式返回json,怎么实现这种调用方式?
androidFunc({
name: 'getIdentity',
params: {
name:‘Jack’
},
callback: function(json) {
alert(json);
})
js调用android中的方法,采用异步方式返回json,怎么实现这种调用方式?
1.Android代码:
WebSettings settings = webView.getSettings();
//让webview允许js
settings.setJavaScriptEnabled(true);
//注入接口对象 ps: mActivity是一个对象
webView.addJavascriptInterface(mActivity, "local_obj");
2.然后在mActivity里面写上js要调用Android的方法
@JavascriptInterface
public void test(String result) {
}
3.在js里面 ps:是在第一步webView.addJavascriptInterface方法注入的对象名
window.local_obj.test('test')
ps:这样就能调用了,希望采纳
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
打个比方,你要通过原生层处理一张图片再返回,就写两个方法request和callback.
传参的时候将callback的方法名与path一并传过去,native这边处理完毕的时候拿callback的名字加上括号参数拼合为一个完整的方法名,通过webview调用它,这样就将处理结果传回了js端