xposed 二次开发 SDK 参数文档说明
首先下载安装微控工具 xposed 模块,如何安装请参照 xposed 模块安装,在此不再说明。 在使用 sdk 的工程中加入 sdk 的接口动态库(libwtoolsdk.so)和接口调用 jar 包 (wtoolsdk.jar)
引入接口调用 jar 包,然后调用相关函数即可,接口类名:com.easy.wtool.sdk.WToolSDK, 相关函数说明参见接口说明。
示例:Android Studio 调用 SDK 示例
所有接口函数(除编解码函数)都返回一个 json 格式的字符串,返回数据字段如下:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | result | 整形 | 执行结果编码,必须 0 表示成功 为负表示错误代码,具体含义见errmsg |
2 | errmsg | 字符串 | 执行错误描述,可选 |
3 | content | 字符串 | 执行结果内容,可选,为 json 格式,具体字段见各接口说明。 |
示例:
执行成功返回:{“result”:0,”errmsg”:””}
执行失败返回:{“result”:-2000,”errmsg”:”SDK 未初始化”}
注:在接口中注明【编码】的字符串,需要调用字符串解码函数解码。
函数:String encodeValue(String value)
描述:字符串进行编码
参数:value 要编码的字符串
返回:编码后的字符串
函数:String decodeValue(String value)
描述:对字符串进行解码(在传输过程中模块对一些字符串进行了编码,使用时要 进行解码,编码的字符串在相应的接口有说明,加有【编码】标识)
参数:value 要解码的字符串
返回:解码后的字符串
函数:String init(String appId,String authCode)
描述:在使用 SDK 前首先调用该接口进行初始化
参数:
appId 应用 ID(向接口提供者申请,每个使用 sdk 的应用都有一个唯一的 appid,用于在同一设备上多个应用同时使用 sdk)
authCode 授权码(向接口提供者获取,以下同)
返回:
见接口函数返回说明,无 content。
函数:String unload()
描述:在应用退出时需要调用该接口释放 SDK 创建的资源。
函数:String sendTask(String taskParams)
描述:SDK 任务接口,SDK 的所有操作都使用该接口进行,如发送文本消息等,具 体操作通过 taskParams 来指定。任务执行有些是异步的(标记为【异步】),该接口 调用后会立即返回,结果成功只代表提交任务成功,不代表执行成功,执行成功需 要通过任务执行结果回调来查看(见:设置任务执行结果回调),非异步任务(标记 为【同步】) 不需要回调;在调用该接口前,先设置任务执行结果回调 setOnTaskEndListener
注:所有字段名都为小写字母
参数及返回、回调:
taskParams 接口参数,json 格式字符串,根据不同内容做不同操作
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | type | 整形 | 操作类型,取值如下: 1:发送文本消息 2:发送图片消息 3:发送语音消息 4:发送视频消息 5:获取微信好友列表 6:获取微信群列表 12:转发消息 26:获取自己的用户信息(微信号昵称等) |
2 | taskid | 长整形 | 任务编号,这个编号全局必须唯一,在任务执行 结果回调中使用该编号查看执行结果 |
3 | content Json | 对象 | 操作参数,根据不同操作类型确定,见 content 定义 |
返回见接口函数返回说明,content 根据不同操作确定,见 content 定义
action=5
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | pageindex | 整形 | 页号(为 0 时获取所有) |
2 | pagecount | 整形 | 每页条数(为 0 是获取所有) |
返回 content:json 数组,每条好友信息如下(不需要回调,结果同步返回):
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | wxid | 字符串 | 好友 wxid【编码】 注:以下发消息中的 wxid 就是取于此 |
2 | nickname | 字符串 | 好友昵称【编码】 |
3 | wxno | 字符串 | 好友微信号,可能为空,暂无用 处【编码】 |
action=6
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | pageindex | 整形 | 页号(为0时获取所有) |
2 | pagecount | 整形 | 每页条数(为0时获取所有) |
3 | ismembers | 整形 | 是否要获取成员列表(若为是则返回 members 字段)0:否,1:是 |
返回 content:json 数组,每条群信息如下(不需要回调,结果同步返回):
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | wxid | 字符串 | 群 id,wxid【编码】 注:以下发消息中的 wxid 就是取于此 |
2 | nickname | 字符串 | 群昵称【编码】 |
3 | wxno | 字符串 | 群微信号,可能为空,暂无用处【编 码】 |
4 | members Json | 数组 | 群成员列表,格式同接口微信好友 列表返回的微信好友列表 |
action=1
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | talker | 字符串 | 接收者的 wxid |
2 | atwxids Json | 数组 | @给某个或几个群成员,这里是 wxid 列 表,只有发群消息有效 例: |
[“wxid_xxxxx”,”wxid_yyyyy”] | |||
3 | text | 字符串 | 文本内容【编码】 |
4 | timeout | 整形 | 超时时间,秒(设为-1 回调会立即返回, 不会等发送完毕,以下同) |
返回 content:空(需要回调,发送是否完成异步返回) 回调 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | result | 整形 | 执行结果编码,必须, 0表示成功 为负表示错误代码, 具体含义见errmsg |
2 | errmsg | 字符串 | 执行错误描述,可选 |
action=2
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | talker | 字符串 | 接收者的 wxid |
2 | imagefile | 字符串 | 图片文件(本地文件,包括全路 径或图片链接) |
3 | timeout | 整形 | 超时时间,秒 |
返回 content:空(需要回调,发送是否完成异步返回) 回调 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | result | 整形 | 执行结果编码,必须, 0 表示成功 为负表示错误代码, 具体含义见 errmsg |
2 | errmsg | 字符串 | 执行错误描述,可选 |
action=3
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | talker | 字符串 | 接收者的 wxid |
2 | voicefile | 字符串 | 语音文件(本地文件,包括全路径) (注:微信语音使用特殊的编码,与标准 amr 有区别,可以使用附带提供的(PC 版)MP3 与微信语音转换工具转换任意 MP3 为微信语音) |
3 | duration | 整形 | 语音时长(单位:秒,微信目前只 允许发送时长小于 60 秒的语音) |
4 | timeout | 整形 | 超时时间,秒 |
返回 content:空(需要回调,发送是否完成异步返回) 回调 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | result | 整形 | 执行结果编码,必须 0 表示成功 为负表示错误代码, 具体含义见 errmsg |
2 | errmsg | 字符串 | 执行错误描述,可选 |
action=4
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | talker | 字符串 | 接收者的 wxid |
2 | videofile | 字符串 | 视频文件(本地文件,包括全路 径)(注:目前只发送 mp4) |
3 | videothumbfile | 字符串 | 视频缩略图文件(本地文件,包 括全路径),这个也必须,图片不能过大 320*200 差不多了,用于好 友收到后显示的那个图片 |
4 | duration | 整形 | 视频时长(单位:秒) |
5 | timeout | 整形 | 超时时间,秒 |
返回 content:空(需要回调,发送是否完成异步返回) 回调 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | result | 整形 | 执行结果编码,必须 0 表示成功 为负表示错误代码, 具体含义见errmsg |
2 | errmsg | 字符串 | 执行错误描述,可选 |
action=12
参数 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | talker | 字符串 | 接收者的 wxid |
2 | msgtype | 整型 | 消息类型,整型,(见消息监听) |
3 | msgid | 字符串 | 消息 ID,字符串,(见消息监听) |
4 | timeout | 整形 | 超时时间,秒 |
返回 content:无 content(需要回调,发送是否完成异步返回) 回调 content:
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | result | 整形 | 执行结果编码,必须 0 表示成功 为负表示错误代码, 具体含义见errmsg |
2 | errmsg | 字符串 | 执行错误描述,可选 |
action=26
参数 content:无
返回 content:(不需要回调,结果同步返回):
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
1 | wxid | 字符串 | 自己的 wxid |
2 | nickname | 字符串 | 自己的昵称【编码】 3 wxno 字符串 自己的微信号,可能为空 |
函数:void setOnTaskEndListener(OnTaskEndListener taskEndListener)
描述:设置任务执行结果回调,任务执行结束后通过回调检测执行结果;如发送文 本消息,发送完成后会触发该回调
参数:taskEndListener 回调接口
返回:无
回调接口:
public interface OnTaskEndListener {
public void taskEndEvent(TaskEndEvent event); }
TaskEndEvent 属性函数如下:
getType() 操作类型,整形,由任务接口传入
getTaskId() 任务编号,长整形,由任务接口传入
getContent() 结果内容,json 字符串,根据不同任务类型返回不同结果,具
体定义见任务接口
函数:String getVersion()
描述:获取 SDK 版本号
参数:无
返回:版本号,如:1.0.0.0