Android在做webview与js交互,线程变化以及json传值失败
16lz
2022-04-12
2019独角兽企业重金招聘Python工程师标准>>>
-
js调用android方法的时候,android的方法并非在UI线程执行,此时view的setVisibility()方法需到UI线程处理
runOnUiThread(new Runnable() { public void run() { mRgTab.setVisibility(webViewForRgTabShow ? View.VISIBLE : View.GONE); } });
-
android调用js方法传值的时候,js端接受的值,如果值是json字符串,js端解析的时候需定义为var,不可定义为let,否则出现解析错误,并非传值失败;
if (Build.VERSION.SDK_INT < 19) { webview.loadUrl("javascript:setClientParams('"+ params+ "')"); } else { webview.evaluateJavascript("javascript:setClientParams('" + params + "')", new ValueCallback
(){ public void onReceiveValue(String s) { LogUtil.i(TAG, "onReceiveValue s: " + s); } }); }
转载于:https://my.oschina.net/ccmagic/blog/2872969
更多相关文章
- 在Android(安卓)Service中弹出系统全屏对话框
- unity在android显示界面(UnityPlayerActivity)不重复加载且app退出
- Android(安卓)最火框架XUtils之注解机制详解
- 三种方法使android 手机执行 二进制程序
- Android_判断文件是否存在并创建代码
- android 知识积累
- Android(安卓)pm命令使用方法
- 浅谈Java中Collections.sort对List排序的两种方法
- Python list sort方法的具体使用