JS与Android原生交互
来源:互联网 发布:turn.js翻页触发动画 编辑:程序博客网 时间:2024/06/08 13:05
JS与Android原生交互
在项目的开发中我们会遇到android 原生与Html5的混合开发,我们可能会需要在android中调用js里面的方法进行数据交互或其他的特殊处理,又或者在Html页面调用android的原生的统一弹框或其他处理。这时候我们就需要给android和js设置接口,进行相互的调用。
1、android中设置JS对应的对象类JavaScriptObject
Android中设置JS的调用类,用于处理js调用android的方法,方法需标示@JavascriptInterface,否则不能调用到;
public class JavaScriptObject{ public static final String obj = "javaObj"; //统一的类名 Context mContxt; public JavaScriptObject(Context mContxt) { this.mContxt = mContxt; } @JavascriptInterface public void funFromAndroid() { Toast.makeText(mContxt, "I am android!", Toast.LENGTH_LONG).show(); } @JavascriptInterface public void openDialog() { CenterPopDialog dialog = new CenterPopDialog(mContxt,"标题","人生若只如初见!",2,"cancel","ok") { @Override public void left() { dismiss(); } @Override public void right() { dismiss(); } }; dialog.show(); }}
2、webview中设置
webView.addJavascriptInterface(new JavaScriptObject(WebViewDef.this), JavaScriptObject.obj);
3、JS中调用Android的方法
<html> <head> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <title></title> <script type="text/javascript"> function fromAndroid() { javaObj.funFromAndroid(); }function funFromJS(msg){ alert(msg);} </script> </head> <body> <button type="button" onclick="fromAndroid()">提示</button> <button type="button" onclick="javaObj.openDialog()">弹出dailog</button> </body></html>
4、Android调用JS的方法
webView.loadUrl(“javascript:funFromJS(‘”+msg+”’)”);
阅读全文
0 0
- JS与Android原生交互
- android原生与js的交互。
- H5与android原生的JS交互
- Android中JS与Native原生交互
- Android Hybrid开发入门:原生Android与JS的交互
- Android Hybrid开发入门:原生Android与JS的交互
- 原生APP与js交互
- OC与JS交互 -- 原生
- android学习之 webview 原生与js的交互
- Android-WebView与原生JS的数据交互
- Android WebView实现原生与JS的交互
- android WebView的使用,js与原生交互
- android 原生与h5交互
- Android HTML与原生交互
- WebBrowser控件中JS与原生交互
- iOS原生APP与H5+JS交互
- JS与手机APP原生页面交互
- ReactNative中js与原生如何交互
- AOP实现日志和异常处理
- 判断是否是手机访问
- vue路由
- LeetCode 104 Maximum Depth of Binary Tree(DFS)
- codevs 2072 分配房间(贪心+二分)
- JS与Android原生交互
- C# 跨线程调用
- Java 中 Comparable 和 Comparator 比较
- Attempt to execute SCRIPT vl_nnconv1 as a function:
- Kotlin语言学习资源汇总
- 欢迎使用CSDN-markdown编辑器
- Sqlserver2008清空日志
- java标识符
- Android线程—Thread、Runnable