(Java)微信之个人公众账号开发(二)——接收并处理用户消息(下)

接下来,我们再讲一下图文消息:

如图:

(Java)微信之个人公众账号开发(二)——接收并处理用户消息(下)

大家可以先从开发者文档中了解一下图文消息的一些参数:

如上图,用户回复4时,ipastor返回了几条图文消息,上图中属于多图文消息,当然还有单图文消息,图文消息,我们需用到封装类NewsMessage和Article,至于为什么用户发送4,ipastor就会回复图文消息,这个不用我说明了吧,加个判断就可以了,看代码:

if ("4".equals(content))
        {
          NewsMessage newsMessage = new NewsMessage();
          newsMessage.setToUserName(fromUserName);
          newsMessage.setFromUserName(toUserName);
          newsMessage.setCreateTime(new Date().getTime());
          newsMessage.setMsgType("news");
          newsMessage.setFuncFlag(0);

          List<Article> articleList = new ArrayList<Article>();
          Article article = new Article();
          article.setTitle("(Java)微信之个人公众账号开发(一)——进入开发者模式  ");
          article.setDescription("");
          article.setPicUrl("http://img.blog.csdn.net/20140305133622296?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmFpeXVsaWFuZzIwMTM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast");
          article.setUrl("http://blog.csdn.net/baiyuliang2013/article/details/20540059");

          Article article5 = new Article();
          article5.setTitle("第2篇\n(Java)微信之个人公众账号开发(二)——接收并处理用户消息  ");
          article5.setDescription("");
          article5.setPicUrl("http://avatar.csdn.net/3/B/9/1_baiyuliang2013.jpg");
          article5.setUrl("http://blog.csdn.net/baiyuliang2013/article/details/20548567");

          Article article1 = new Article();
          article1.setTitle("第3篇\n自定义progressDialog的实现 ");
          article1.setDescription("");
          article1.setPicUrl("http://avatar.csdn.net/3/B/9/1_baiyuliang2013.jpg");
          article1.setUrl("http://blog.csdn.net/baiyuliang2013/article/details/17027305");

          Article article2 = new Article();
          article2.setTitle("第4篇\nViewPaper实现首次进入软件时左右滑屏的软件展示效果 ");
          article2.setDescription("");
          article2.setPicUrl("http://avatar.csdn.net/3/B/9/1_baiyuliang2013.jpg");
          article2.setUrl("http://blog.csdn.net/baiyuliang2013/article/details/17026739");

          Article article3 = new Article();
          article3.setTitle("第5篇\nViewPaper实现滑屏切换页面及动画效果 ");
          article3.setDescription("");
          article3.setPicUrl("http://avatar.csdn.net/3/B/9/1_baiyuliang2013.jpg");
          article3.setUrl("http://blog.csdn.net/baiyuliang2013/article/details/17026131");

          articleList.add(article);
          articleList.add(article5);
          articleList.add(article1);
          articleList.add(article2);
          articleList.add(article3);

          newsMessage.setArticleCount(articleList.size());

          newsMessage.setArticles(articleList);
          respMessage = MessageUtil.newsMessageToXml(newsMessage);
        }

图文消息一次最多只能发送10条信息,Title为每条信息的标题,PicUrl为图片地址,Url为整条消息地址,若用户点击该条消息,则会在微信自带浏览器中跳转到Url对应的网址,单图文消息即止含一条消息,多图文消息也可以设置为首条消息不含图片,或者最后一条消息不含图片,不含图片只需将PicUrl设置为空即可,但Url最好不要为空,不然用户点击时会跳转到一空白页面,具体效果,大家自己可以试验下。以上这些,大家也看到了,我并没有涉及到数据库,如果要丰富的用户体验,数据库是必不可少的,这个大家可以自己试着关联到数据库,以提高用户体验,好了,就先为大家讲到这里,比较简单,高手大神勿喷,主要针对入门级用户,最后,要感谢一下
CSDN专家柳峰,部分代码参考了柳老师,今后如果有必要,我会再补充新内容,接着为大家附上本项目中所用到的jar包 :

(Java)微信之个人公众账号开发(二)——接收并处理用户消息(下)

jar包可以从这里下载:

http://download.csdn.net/detail/baiyuliang2013/6998729

上一篇:【历史】- Windows NT 之父 - David Cutler


下一篇:Android APN