JSCallback回调函数如何序列化(安卓)

在Activity直接传递数据必须序列化,JSCallback如何序列化呢?

阅读 4.4k
1 个回答

JSCallback是将结果丟到回调函数里面,而这个结果可以通过JSCallback的invoke塞进去。例如:

@JSMethod(uiThread = false)
public void getLoginInfo(String name,JSCallback success,@Nullable JSCallback error) {
        Map<String, Object> options = new HashMap<>();
        options.put("name",name);
        success.invoke(options); //丢到js的成功回调里面
        if(error!=null){
            error.invoke(null); //丢到js的失败回调里面
        }
    }

invoke传入的是object,前端会自动解析,如果是map,前端js拿到的就是json对象;
你的问题比较含糊不清 ,可以具体描述下使用场景。JSCallback 本身是个回调工具,干嘛对它进行序列化呢?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题