公众号群发单条图文消息

本文介绍了公众号群发图文消息的过程,对图文消息的一系列处理,仅供参考

图文消息

  • 要群发图文消息首先你要有图文消息的media_id,这个media_id是通过调用微信公众号上传图文消息接口(https://api.weixin.qq.com/cgi-bin/material/add_news?access_token=ACCESS_TOKEN)上传图文消息之后返回的。

1.图文消息说明

  • 因为本文是群发单图文消息,所以上传图文消息时是上传单图文消息。
  • 上传参数说明:
参数 是否必须 说明
access_token 调用接口凭证
Articles 图文消息,支持1到8条
thumb_media_id 图文消息缩略图的media_id,可以在素材管理-新增素材中获得
title 图文消息的标题
content 图文消息页面的内容,支持HTML标签

2.创建图文消息实体类

  • 根据参数创建实体类WxArticle,其参数可根据官方参数挑选自己所需添加。
	String thumb_media_id;
    String title;
    String content;

实体类的内容可根据上传图文消息的参数自行修改

3.上传图文消息

传入参数为list wxArticle和access_token
方法内容:上传接口路径

String url = "https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token="+access_token;

组装参数,将图文实体类转成json对象,封装成json,通过调用HttpUtils的post发送数据。
定义一个String对象接收接口返回的media_id。并保存。

群发图文消息

本文采用根据OPENID进行群发

1. 群发说明

  • post示例:
{
   "touser":[
    "OPENID1",
    "OPENID2"
   ],
   "mpnews":{
      "media_id":"123dsdajkasd231jhksad"
   },
    "msgtype":"mpnews",
    "send_ignore_reprint":0
}

touser表示用户openid列表,length至少为2,否则会报错:
invalid_openid_list_size,_at_least_two_openid_hint

  • 调用接口:

http请求方式: POST https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=ACCESS_TOKEN

  • 上传参数说明:
参数 是否必须 说明
touser 填写图文消息的接收者,一串OpenID列表,OpenID最少2个,最多10000个
mpnews 用于设定即将发送的图文消息
media_id 用于群发的图文消息的media_id
msgtype 群发的消息类型

2.建立对应的实体类

	private List toUsers = new ArrayList();
    private String msgType;
    private String content;
    private String mediaId;
    private boolean sendIgnoreReprint = false;
    private String clientMsgId;

3.群发图文消息

创建String对象url值为群发接口

String url = "https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token=ACCESS_TOKEN"

组装发送数据

  1. 创建实体类对象.
  2. 根据实体类封装数据.
    3.gson将对象转换为json字符串.
    4.使用httpClient发起post请求,将url和数据进行发送
    5.定义JSONObject对象接收返回码,根据返回码查看是否发送成功

你可能感兴趣的:(公众号群发单条图文消息)