Android 与js交互(一)
来源:互联网 发布:ubuntu u盘制作工具 编辑:程序博客网 时间:2024/05/23 18:47
先写一个网页推荐使用两款js工具
一个是国产的hbuild可以写简单的网页
一个是westorm或者idea工具是国外的
<!DOCTYPE html><html><head><meta charset="utf-8" /><title>testandroid</title><script type="text/javascript">function jsfunc1(){document.getElementById('content').innerHTML='sss'console.log('sss')}function jsfunc2(arg){document.getElementById('content').innerHTML=arg}</script></head><body><h1><div id="content">内容显示</div></h1><br/><input type="button" value="点击调用java代码" onclick="window.android.Func1()" /><br/><input type="button" value="点击调用java代码并传递参数" onclick="window.android.Func2('我是帅哥')" /></body></body></html>放在asset文件夹中,里面定义了两个未调用的方法在Android中可以调用
通过loadurl调用js方法
web.loadUrl("javascript:jsfunc1()");
public void click(View view) { switch (view.getId()){ case R.id.bt1: web.loadUrl("javascript:jsfunc1()"); break; case R.id.bt2: web.loadUrl("javascript:jsfunc2('func2')"); break; } }
@SuppressLint("JavascriptInterface") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); web = ((WebView) findViewById(R.id.webview)); web .getSettings().setJavaScriptEnabled(true); web.loadUrl("file:///android_asset/index.html"); //>17 web.addJavascriptInterface(MainActivity.this,"android"); } @JavascriptInterface public void Func1(){ Toast.makeText(MainActivity.this, "f1", Toast.LENGTH_SHORT).show(); } @JavascriptInterface public void Func2(String str){ Toast.makeText(MainActivity.this,str, Toast.LENGTH_SHORT).show(); }上面两个方法使用注解后可在html中调用Android的方法了
注意:
1.window..android这个android必须和Android中的参数android一样,但是可以随便写
2.js调用的方法需要写@Javascriptinterface注解
参考了这篇博客学习的
http://blog.csdn.net/leejizhou/article/details/50894531/
0 0
- Android 与js交互(一)
- android与js交互(一)
- android 与 js 交互
- Android与JS交互
- Android 与JS交互
- android与js交互
- android与JS交互
- android与js交互
- Android与js交互
- Android与JS交互
- Android与Js交互
- ANDROID 与JS交互
- Android与JS交互
- Android与js交互
- Android 与 js 交互
- Android与JS交互
- Android与js交互
- js与android交互
- Hixxxx PCIe + SMMU bad performance debug
- android im--->weichat
- Java 枚举类型
- GitHub教程
- CTSC2017游记
- Android 与js交互(一)
- USACO
- [每日问答]缺失值如何处理?
- java垃圾回收机制中的算法
- centos7 安装tensorflow 环境步骤
- tcp 三次握手 四次挥手
- golang实现ftp实时传输文件
- C++ 单例模式最佳实现
- adb不能连接电脑