[036] 微信公众帐号开发教程第12篇-符号表情的发送(下)(转)

  1. 云栖社区>
  2. 博客>
  3. 正文

[036] 微信公众帐号开发教程第12篇-符号表情的发送(下)(转)

云栖希望。 2017-12-04 21:58:00 浏览1165
展开阅读全文

引言及文章概要

第11篇文章给出了Unified版本号的符号表情(emoji表情)代码表,而且介绍了怎样在微信公众帐号开发模式下发送emoji表情,还在文章结尾出,卖了个关子:“小q机器人中使用的一些符号表情,在微信的符号表情选择栏里根本找不到,而且在上篇文章给出的符号表情代码表(Unified版)中也沒有,那这些表情是怎样发送的呢?”如以下两张图所看到的的符号表情“情侣”和“公共汽车”。

        

本文主要介绍以下内容:1)怎样在微信上使用许多其他的符号表情(即怎样发送在微信符号表情选择栏中不存在的emoji表情);2)给出SoftBank版符号表情的代码对比表;3)介绍及演示怎样发送SoftBank版本号的符号表情。让大家彻底玩转微信公众帐号的emoji表情!

 

怎样在微信上使用许多其他的符号表情

我们先来看下,作为一个微信用户,怎样向好友或微信公众帐号发送一些微信符号表情选择栏中沒有列出的符号表情。比如:小q机器人中使用的“情侣”、“公共汽车”两个符号表情,假设我想在与朋友微信聊天时使用,该怎么办呢?请先看以下的两张截图:

        

能够看出,当我们在输入框中输入“情侣”的全拼“qinglv”、“公共汽车”的全拼“gonggongqiche”时,输入法的文本提示列表中就会自己主动显示相应的符号表情,怎么样,是不是非常easy呢?这类表情还有非常多,比如:马桶、厕所、取款机等。

说明:笔者使用的是iPhone 4S手机系统自带的输入法做的測试,假设你用的是安卓、或者是第三方输入法,那就另当别论了。

 

Emoji表情代码表之SoftBank版本号

上篇文章讲过,emoji表情有非常多种版本号,当中包含Unified、DoCoMo、KDDI、Softbank和Google,而且不同版本号用于表示同一符号表情的Unicode代码也不同样。本篇文章,给出SoftBank(日本软银集团)版本号的emoji表情代码表(网上一般称之为SB Unicode,指的就是它),例如以下图所看到的:

 

公众帐号怎样向用户发送SoftBank版本号的符号表情

在微信公众帐号开发模式下,发送SoftBank版的符号表情要比发送Unified版的符号表情简单的多,直接将符号表情相应的SoftBank Unicode值写在程序代码中返回给用户就可以,无需做不论什么处理。

以下,我给出一个发送SoftBank版符号表情的演示例子,代码例如以下:

[java] view plaincopy
 
  1. package org.liufeng.course.service;  
  2.   
  3. import java.util.Date;  
  4. import java.util.Map;  
  5.   
  6. import javax.servlet.http.HttpServletRequest;  
  7.   
  8. import org.liufeng.course.message.resp.TextMessage;  
  9. import org.liufeng.course.util.MessageUtil;  
  10.   
  11. /** 
  12.  * 核心服务类 
  13.  *  
  14.  * @author liufeng 
  15.  * @date 2013-07-21 
  16.  */  
  17. public class CoreService {  
  18.     /** 
  19.      * 处理微信发来的请求 
  20.      *  
  21.      * @param request 
  22.      * @return 
  23.      */  
  24.     public static String processRequest(HttpServletRequest request) {  
  25.         String respMessage = null;  
  26.         try {  
  27.             // xml请求解析  
  28.             Map<String, String> requestMap = MessageUtil.parseXml(request);  
  29.   
  30.             // 发送方帐号(open_id)  
  31.             String fromUserName = requestMap.get("FromUserName");  
  32.             // 公众帐号  
  33.             String toUserName = requestMap.get("ToUserName");  
  34.   
  35.             // 回复文本消息  
  36.             TextMessage textMessage = new TextMessage();  
  37.             textMessage.setToUserName(fromUserName);  
  38.             textMessage.setFromUserName(toUserName);  
  39.             textMessage.setCreateTime(new Date().getTime());  
  40.             textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);  
  41.             textMessage.setFuncFlag(0);  
  42.             textMessage.setContent("自行车\ue136 男人\ue138 钱袋\ue12f 情侣\ue428 公共汽车\ue159");  
  43.             respMessage = MessageUtil.textMessageToXml(textMessage);  
  44.         } catch (Exception e) {  
  45.             e.printStackTrace();  
  46.         }  
  47.   
  48.         return respMessage;  
  49.     }  
  50. }  

上面代码的作用是:无论用户发送什么类型的消息,都返回包含5个emoji表情的文本消息。假设不明确CoreService类怎么回事,请查看本系列教程的第5篇,或者你仅仅须要认真看第42行代码,就知道怎么样把SoftBank版emoji表情代码放在文本消息的Content中了。最后再来看下执行效果截图:

说明:每个符号表情都有与之相应的Unified unicode、Softbank unicode代码,并非说“情侣”、“公共汽车”这类在微信的符号表情栏中找不到的emoji表情仅仅能通过本文的方式发送,仅仅要你拿到与之相应的Unified unicode代码,一样能够使用上篇文章所讲的方法发送这类符号表情。

 

好了,关于微信公众帐号向用户发送符号表情的解说就此结束了,相信有些朋友看完教程已经開始在帐号中使用符号表情了。事实上,我更希望大家在拷贝我粘出的Unified版、SoftBank版符号表情代码表的同一时候,也能去了解下符号表情各种版本号、Unicode编码及增补码的相关知识,不断拓展自己的知识面,触类旁通,这样才干真正地把我解说的知识变成你自己的,才干做到以不变应万变。

网友评论

登录后评论
0/500
评论
云栖希望。
+ 关注