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

如图:

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

如上图,用户回复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包 :

jar包可以从这里下载:

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

(Java)微信之个人公众账号开发(二)——接收并处理用户消息(下)的更多相关文章

  1. (Java)微信之个人公众账号开发(一)——进入开发者模式

    本篇文章将教大家如何建立微信个人公众账号,(注意:后台全部是用javaweb相关技术开发),大家知道,现在微信公众账号分服务号和订阅号,现在我要讲的主要是个人微信公众账号的建立以及后台的开发,个人公众 ...

  2. 微信公众账号开发教程(二) 基础框架搭建——转自http://www.cnblogs.com/yank/p/3392394.html

    上一章,我们已经初步讲解了微信公众账号开发的基本原理,今天我们来探索设计实现. 首先我们设计了模块层次图,当然图中只是给出一种实现方式,不局限于此.具体见下图. 主要功能介绍如下: 1)请求接口层.处 ...

  3. 微信公众账号开发教程(三) 实例入门:机器人(附源码) ——转自http://www.cnblogs.com/yank/p/3409308.html

    一.功能介绍 通过微信公众平台实现在线客服机器人功能.主要的功能包括:简单对话.查询天气等服务. 这里只是提供比较简单的功能,重在通过此实例来说明公众平台的具体研发过程.只是一个简单DEMO,如果需要 ...

  4. 微信公众账号开发教程(四)自定义菜单(含实例源码)——转自http://www.cnblogs.com/yank/p/3418194.html

    微信公众账号开发教程(四)自定义菜单 请尊重作者版权,如需转载,请标明出处. 应大家强烈要求,将自定义菜单功能课程提前. 一.概述: 如果只有输入框,可能太简单,感觉像命令行.自定义菜单,给我们提供了 ...

  5. 微信公众账号开发教程(一) 基本原理及微信公众账号注册 ——转自http://www.cnblogs.com/yank/p/3364827.html

    微信公众账号开发教程 基本原理 在开始做之前,大家可能对这个很感兴趣,但是又比较茫然.是不是很复杂?很难学啊? 其实恰恰相反,很简单.为了打消大家的顾虑,先简单介绍了微信公众平台的基本原理. 微信服务 ...

  6. 转:C#微信公众号开发之接收事件推送与消息排重的方法

    本文实例讲述了C#微信公众号开发之接收事件推送与消息排重的方法.分享给大家供大家参考.具体分析如下: 微信服务器在5秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次.这样的话,问题就来了.有这 ...

  7. PHP实现微信公众账号开发

    1.首先需要一个可以外网访问的接口url. 我这里是申请的新浪免费云服务器,http://xxxxx.applinzi.com/wx.php,具体自己可以去新浪云中心申请地址为:http://www. ...

  8. Python公众号开发(二)—颜值检测

    上篇文章,我们把自己的程序接入了微信公众号,并且能把用户发送的文本及图片文件原样返回.今天我们把用户的图片通过腾讯的AI平台分析后再返回给用户. 为了防止我的文章被到处转载,贴一下我的公众号[智能制造 ...

  9. Java微信公众平台开发(二)--微信服务器post消息体的接收

    转自: http://www.cuiyongzhi.com/post/39.html 在上一篇的文章中我们详细讲述了如何将我们的应用服务器和微信腾讯服务器之间的对接操作,最后接入成功,不知道你有没有发 ...

随机推荐

  1. Opencv在mac系统的安装与试用

    1.在mac终端内,使用brew安装opencv3,这时我的opencv被安装到/usr/local/Cellar/opencv3/3.2.0内. 2.新建xcode 项目,选择command lin ...

  2. Mysql之表的操作与索引操作

    表的操作: 1.表的创建: create table if not exists table_name(字段定义); 例子: create table if not exists user(id in ...

  3. hibernate--HelloWorld

    本次学习版本:hibernate-release-5.2.6.Final,要求java 1.8 和JDBC 4.2. hibernate是一个开放源代码的对象关系映射框架.对JDBC进行了非常轻量的封 ...

  4. 数轴line

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAq8AAAGaCAYAAAAhPqoeAAAgAElEQVR4nOzdCbh2U/k/8C0NpkgRzZ

  5. 【BZOJ2705】【Sdoi2012】Longge的问题

    Description Longge的数学成绩非常好,并且他非常乐于挑战高难度的数学问题.现在问题来了:给定一个整数N,你需要求出\(\Sigma gcd(i, N) (1 \leq i \leq N ...

  6. bzoj 2555: SubString

    Description 懒得写背景了,给你一个字符串init,要求你支持两个操作 (1):在当前字符串的后面插入一个字符串 (2):询问字符串s在当前字符串中出现了几次?(作为连续子串) 你必须在线支 ...

  7. POJ1830开关问题

    这题答案就是2^自由元的数目,原因是自由元可以取1或者0,所以就是ans<<1 由于只要求自由元的数目,所以高斯消元可以直接消后面的,不做前面的了,对答案没有影响 #include< ...

  8. UVA11082:Matrix Decompressing

    题意:给定一个矩阵的前i行的和,以及前i列的和,求任意一个满足条件的矩阵,矩阵元素在[1,20] 矩阵行列<=20 题解:做一个二分图的模型,把行列拆开,然后设源点到行节点的容量就是该行所有元素 ...

  9. hdu 2865 Polya计数+(矩阵 or 找规律 求C)

    Birthday Toy Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tota ...

  10. C语言程序设计第一次作业1

    (一)实验总结 1. 圆面积问题 1:求圆面积和周长 (1)输入圆的半径,计算圆的周长和面积. (2) (3) 2:判断闰年 (1)输入一个四位年份,判断其是否是闰年.闰年的判别条件是该年年份能被4整 ...