微信公众平台教程视频教程哪里可以看。

视频: 微信公众平台怎么样接入微商城 微信公众平台开发模式视频教程
分享给好友
您需要先安装&,才能下载视频哦
用优酷App或微信扫一扫,在手机上继续观看。
微信公众平台怎么样接入微商城 微信公众平台开发模式视频教程
分享给站外好友
把视频贴到Blog或BBS
flash地址:
<input type="text" class="form_input form_input_s" id="link3" value=''>
<input id="link4" type="text" class="form_input form_input_s" value=''>
微信开发模式需要怎么样接入微信商城、微网站、微酒店、微餐饮、希望能给注册微商城的朋友提供帮助。
节目制作经营许可证京字670号
京公网安备号
药品服务许可证(京)-经营-42962人阅读
CSDN2013年度博客之星评选活动开始,本人有幸入围参加评选,如果博客中的文章对你有所帮助,请为柳峰投上宝贵一票,非常感谢!投票地址:& & & & 在笔者的公众账号小q机器人(微信号:xiaoqrobot)中有一个非常好玩的功能&人脸检测&,它能够检测出用户发送的图片中有多少张人脸,并且还能分析出每张脸所对应的人种、性别和年龄。几乎每天都有一些用户在使用“人脸检测”,该功能的趣味性和娱乐性在于能够让用户知道自己的长相与真实年龄是否相符,是否男(女)性化。本文将为读者介绍人脸检测应用的完整实现过程。& & & & 人脸检测属于人脸识别的范畴,它是一个复杂的具有挑战性的模式匹配问题,国内外许多组织、科研机构都在专门研究该问题。国内的Face++团队专注于研发人脸检测、识别、分析和重建技术,并且向广大开发者开放了人脸识别API,本文介绍的“人脸检测”应用正是基于Face++ API进行开发。Face++简介& & & & Face++是北京旷视科技有限公司旗下的人脸识别云服务平台,Face++平台通过提供云端API、离线SDK、以及面向用户的自主研发产品等形式,将人脸识别技术广泛应用到互联网及移动应用场景中。Face++为广大开发者提供了简单易用的API,开发者可以轻松搭建属于自己的云端身份认证、用户兴趣挖掘、移动体感交互、社交娱乐分享等多种类型的应用。& & & & Face++提供的技术服务包括人脸检测、人脸分析和人脸识别,主要说明如下:& & & & & & & &&1)人脸检测:可以从图片中快速、准确的定位面部的关键区域位置,包括眉毛、眼睛、鼻子、嘴巴等。& & & & & & & &&2)人脸分析:可以从图片或实时视频流中分析出人脸的性别(准确度达96%)、年龄、种族等多种属性。& & & & & & & &&3)人脸识别:可以快速判定两张照片是否为同一个人,或者快速判定视频中的人像是否为某一位特定的人。& & & &&Face++的中文网址为,要使用Face++ API,需要注册成为Face++开发者,也就是要注册一个Face++账号。注册完成后,先创建应用,创建应用时需要填写“应用名称”、“应用描述”、“API服务器”、“应用类型”和“应用平台”,读者可以根据实际情况填写。应用创建完成后,可以看到应用的详细信息,如下图所示。& & & & & & & &&& & & & 上图中,最重要的是API KEY和API SECRET,在调用Face++提供的API时,需要传入这两个参数。人脸检测API介绍& & & & 在Face++网站的“API文档”中,能够看到Face++提供的所有API,我们要使用的人脸检测接口是detect分类下的“/detection/detect”,它能够检测出给定图片(Image)中的所有人脸(Face)的位置和相应的面部属性,目前面部属性包括性别(gender)、年龄(age)、种族(race)、微笑程度(smiling)、眼镜(glass)和姿势(pose)。& & & & 读者可以在中了解到人脸检测接口的详细信息,该接口的请求地址如下:/v2/detection/detect?url=URL&api_secret=API_SECRET&api_key=API_KEY调用上述接口,必须要传入参数api_key、api_secret和待检测的图片。其中,待检测的图片可以是URL,也可以是POST方式提交的二进制数据。在微信公众账号后台,接收用户发送的图片,得到的是图片的访问路径(PicUrl),因此,在本例中,直接使用待检测图片的URL是最方便的。调用人脸检测接口返回的是JSON格式数据如下:{
&attribute&: {
&range&: 5,
&value&: 23
&gender&: {
&confidence&: 99.9999,
&value&: &Female&
&glass&: {
&confidence&: 99.945,
&value&: &None&
&pitch_angle&: {
&value&: 17
&roll_angle&: {
&value&: 0.735735
&yaw_angle&: {
&value&: -2
&confidence&: 99.6121,
&value&: &Asian&
&smiling&: {
&value&: 4.86501
&face_id&: &b51ac91e391e5afe130eb78&,
&position&: {
&center&: {
&x&: 49.4,
&eye_left&: {
&x&: 43.3692,
&y&: 30.8192
&eye_right&: {
&x&: 56.5606,
&y&: 30.9886
&height&: 26.8,
&mouth_left&: {
&x&: 46.1326,
&y&: 44.9468
&mouth_right&: {
&x&: 54.2592,
&y&: 44.6282
&x&: 49.9404,
&y&: 38.8484
&width&: 26.8
&img_height&: 500,
&img_id&: &22fd9efc64c87e18eec7&,
&img_width&: 500,
&session_id&: &3b34c7e8c6efb6ba39ed355&,
&url&: &/wp-content/themes/faceplusplus.zh/assets/img/demo/1.jpg?v=4&
}这里只对本文将要实现的“人脸检测”功能中主要用到的参数进行说明,参数说明如下:1)face是一个数组,当一张图片中包含多张人脸时,所有识别出的人脸信息都在face数组中。2)age中的value表示估计年龄,range表示误差范围。例如,上述结果中value=23,range=5,表示人的真实年龄在18岁至28岁左右。3)gender中的value表示性别,男性为Male,女性为Female;gender中的confidence表示检测结果的可信度。4)race中的value表示人种,黄色人种为Asian,白色人种为White,黑色人种为Black;race中的confidence表示检测结果的可信度。5)center表示人脸框中心点坐标,可以将x用于计算人脸的左右顺序,即x坐标的值越小,人脸的位置越靠近图片的左侧。人脸检测API的使用方法& & & & 为了方便开发者调用人脸识别API,Face++团队提供了基于Objective-C、Java(Android)、Matlab、Ruby、C#等多种语言的,读者可以在Face++网站的“工具下载”版块下载相关的SDK。在本例中,笔者并不打算使用官方提供的SDK进行开发,主要原因如下:1)人脸检测API的调用比较简单,自己写代码实现也并不复杂;2)如果使用SDK进行开发,笔者还要花费大量篇幅介绍SDK的使用,这些并不是本文的重点;3)自己写代码实现比较灵活。当图片中有多张人脸时,人脸检测接口返回的数据是无序的,开发者可以按照实际使用需求进行排序,例如,将图片中的人脸按照从左至右的顺序进行排序。编程调用人脸检测API& & & & 首先,要对人脸检测接口返回的结构进行封装,建立与之对应的Java对象。由于人脸检测接口返回的参数较多,笔者只是将本例中需要用到的参数抽取出来,封装成Face对象,对应的代码如下:package org.liufeng.course.
* Face Model
* @author liufeng
public class Face implements Comparable&Face& {
// 被检测出的每一张人脸都在Face++系统中的标识符
private String faceId;
// 年龄估计值
private int ageV
// 年龄估计值的正负区间
private int ageR
// 性别:Male/Female
private String genderV
// 性别分析的可信度
private double genderC
// 人种:Asian/White/Black
private String raceV
// 人种分析的可信度
private double raceC
// 微笑程度
private double smilingV
// 人脸框的中心点坐标
private double centerX;
private double centerY;
public String getFaceId() {
return faceId;
public void setFaceId(String faceId) {
this.faceId = faceId;
public int getAgeValue() {
return ageV
public void setAgeValue(int ageValue) {
this.ageValue = ageV
public int getAgeRange() {
return ageR
public void setAgeRange(int ageRange) {
this.ageRange = ageR
public String getGenderValue() {
return genderV
public void setGenderValue(String genderValue) {
this.genderValue = genderV
public double getGenderConfidence() {
return genderC
public void setGenderConfidence(double genderConfidence) {
this.genderConfidence = genderC
public String getRaceValue() {
return raceV
public void setRaceValue(String raceValue) {
this.raceValue = raceV
public double getRaceConfidence() {
return raceC
public void setRaceConfidence(double raceConfidence) {
this.raceConfidence = raceC
public double getSmilingValue() {
return smilingV
public void setSmilingValue(double smilingValue) {
this.smilingValue = smilingV
public double getCenterX() {
return centerX;
public void setCenterX(double centerX) {
this.centerX = centerX;
public double getCenterY() {
return centerY;
public void setCenterY(double centerY) {
this.centerY = centerY;
// 根据人脸中心点坐标从左至右排序
public int compareTo(Face face) {
int result = 0;
if (this.getCenterX() & face.getCenterX())
result = 1;
result = -1;
}与普通Java类不同的是,Face类实现了Comparable接口,并实现了该接口的compareTo()方法,这正是Java中对象排序的关键所在。112-119行代码是通过比较每个Face的脸部中心点的横坐标来决定对象的排序方式,这样能够实现检测出的多个Face按从左至右的先后顺序进行排序。& & & & 接下来,是人脸检测API的调用及相关处理逻辑,笔者将这些实现全部封装在FaceService类中,该类的完整实现如下:package org.liufeng.course.
import java.io.BufferedR
import java.io.InputS
import java.io.InputStreamR
import java.net.HttpURLC
import java.net.URL;
import java.util.ArrayL
import java.util.C
import java.util.L
import org.liufeng.course.pojo.F
import net.sf.json.JSONA
import net.sf.json.JSONO
* 人脸检测服务
* @author liufeng
public class FaceService {
* 发送http请求
* @param requestUrl 请求地址
* @return String
private static String httpRequest(String requestUrl) {
StringBuffer buffer = new StringBuffer();
URL url = new URL(requestUrl);
HttpURLConnection httpUrlConn = (HttpURLConnection) url.openConnection();
httpUrlConn.setDoInput(true);
httpUrlConn.setRequestMethod(&GET&);
httpUrlConn.connect();
// 将返回的输入流转换成字符串
InputStream inputStream = httpUrlConn.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, &utf-8&);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String str =
while ((str = bufferedReader.readLine()) != null) {
buffer.append(str);
bufferedReader.close();
inputStreamReader.close();
// 释放资源
inputStream.close();
inputStream =
httpUrlConn.disconnect();
} catch (Exception e) {
e.printStackTrace();
return buffer.toString();
* 调用Face++ API实现人脸检测
* @param picUrl 待检测图片的访问地址
* @return List&Face& 人脸列表
private static List&Face& faceDetect(String picUrl) {
List&Face& faceList = new ArrayList&Face&();
// 拼接Face++人脸检测的请求地址
String queryUrl = &/v2/detection/detect?url=URL&api_secret=API_SECRET&api_key=API_KEY&;
// 对URL进行编码
queryUrl = queryUrl.replace(&URL&, java.net.URLEncoder.encode(picUrl, &UTF-8&));
queryUrl = queryUrl.replace(&API_KEY&, &替换成自己的API Key&);
queryUrl = queryUrl.replace(&API_SECRET&, &替换成自己的API Secret&);
// 调用人脸检测接口
String json = httpRequest(queryUrl);
// 解析返回json中的Face列表
JSONArray jsonArray = JSONObject.fromObject(json).getJSONArray(&face&);
// 遍历检测到的人脸
for (int i = 0; i & jsonArray.size(); i++) {
JSONObject faceObject = (JSONObject) jsonArray.get(i);
// attribute
JSONObject attrObject = faceObject.getJSONObject(&attribute&);
// position
JSONObject posObject = faceObject.getJSONObject(&position&);
Face face = new Face();
face.setFaceId(faceObject.getString(&face_id&));
face.setAgeValue(attrObject.getJSONObject(&age&).getInt(&value&));
face.setAgeRange(attrObject.getJSONObject(&age&).getInt(&range&));
face.setGenderValue(genderConvert(attrObject.getJSONObject(&gender&).getString(&value&)));
face.setGenderConfidence(attrObject.getJSONObject(&gender&).getDouble(&confidence&));
face.setRaceValue(raceConvert(attrObject.getJSONObject(&race&).getString(&value&)));
face.setRaceConfidence(attrObject.getJSONObject(&race&).getDouble(&confidence&));
face.setSmilingValue(attrObject.getJSONObject(&smiling&).getDouble(&value&));
face.setCenterX(posObject.getJSONObject(&center&).getDouble(&x&));
face.setCenterY(posObject.getJSONObject(&center&).getDouble(&y&));
faceList.add(face);
// 将检测出的Face按从左至右的顺序排序
Collections.sort(faceList);
} catch (Exception e) {
faceList =
e.printStackTrace();
return faceL
* 性别转换(英文-&中文)
* @param gender
private static String genderConvert(String gender) {
String result = &男性&;
if (&Male&.equals(gender))
result = &男性&;
else if (&Female&.equals(gender))
result = &女性&;
* 人种转换(英文-&中文)
* @param race
private static String raceConvert(String race) {
String result = &黄色&;
if (&Asian&.equals(race))
result = &黄色&;
else if (&White&.equals(race))
result = &白色&;
else if (&Black&.equals(race))
result = &黑色&;
* 根据人脸识别结果组装消息
* @param faceList 人脸列表
private static String makeMessage(List&Face& faceList) {
StringBuffer buffer = new StringBuffer();
// 检测到1张脸
if (1 == faceList.size()) {
buffer.append(&共检测到 &).append(faceList.size()).append(& 张人脸&).append(&\n&);
for (Face face : faceList) {
buffer.append(face.getRaceValue()).append(&人种,&);
buffer.append(face.getGenderValue()).append(&,&);
buffer.append(face.getAgeValue()).append(&岁左右&).append(&\n&);
// 检测到2-10张脸
else if (faceList.size() & 1 && faceList.size() &= 10) {
buffer.append(&共检测到 &).append(faceList.size()).append(& 张人脸,按脸部中心位置从左至右依次为:&).append(&\n&);
for (Face face : faceList) {
buffer.append(face.getRaceValue()).append(&人种,&);
buffer.append(face.getGenderValue()).append(&,&);
buffer.append(face.getAgeValue()).append(&岁左右&).append(&\n&);
// 检测到10张脸以上
else if (faceList.size() & 10) {
buffer.append(&共检测到 &).append(faceList.size()).append(& 张人脸&).append(&\n&);
// 统计各人种、性别的人数
int asiaMale = 0;
int asiaFemale = 0;
int whiteMale = 0;
int whiteFemale = 0;
int blackMale = 0;
int blackFemale = 0;
for (Face face : faceList) {
if (&黄色&.equals(face.getRaceValue()))
if (&男性&.equals(face.getGenderValue()))
asiaMale++;
asiaFemale++;
else if (&白色&.equals(face.getRaceValue()))
if (&男性&.equals(face.getGenderValue()))
whiteMale++;
whiteFemale++;
else if (&黑色&.equals(face.getRaceValue()))
if (&男性&.equals(face.getGenderValue()))
blackMale++;
blackFemale++;
if (0 != asiaMale || 0 != asiaFemale)
buffer.append(&黄色人种:&).append(asiaMale).append(&男&).append(asiaFemale).append(&女&).append(&\n&);
if (0 != whiteMale || 0 != whiteFemale)
buffer.append(&白色人种:&).append(whiteMale).append(&男&).append(whiteFemale).append(&女&).append(&\n&);
if (0 != blackMale || 0 != blackFemale)
buffer.append(&黑色人种:&).append(blackMale).append(&男&).append(blackFemale).append(&女&).append(&\n&);
// 移除末尾空格
buffer = new StringBuffer(buffer.substring(0, buffer.lastIndexOf(&\n&)));
return buffer.toString();
* 提供给外部调用的人脸检测方法
* @param picUrl 待检测图片的访问地址
* @return String
public static String detect(String picUrl) {
// 默认回复信息
String result = &未识别到人脸,请换一张清晰的照片再试!&;
List&Face& faceList = faceDetect(picUrl);
if (null != faceList) {
result = makeMessage(faceList);
public static void main(String[] args) {
String picUrl = &/72554_2.jpg&;
System.out.println(detect(picUrl));
}上述代码虽然多,但条理很清晰,并不难理解,所以笔者只挑重点的进行讲解,主要说明如下:1)70行:参数url表示图片的链接,由于链接中存在特殊字符,作为参数传递时必须进行URL编码。请读者记住:不管是什么应用,调用什么接口,凡是通过GET传递的参数中可能会包含特殊字符,都必须进行URL编码,除了中文以外,特殊字符还包括等号“=”、与“&”、空格“ ”等。2)76-97行:使用JSON-lib解析人脸检测接口返回的JSON数据,并将解析结果存入List中。3)99行:对集合中的对象进行排序,使用Collections.sort()方法排序的前提是集合中的Face对象实现了Comparable接口。4)146-203行:组装返回给用户的消息内容。考虑到公众平台的文本消息内容长度有限制,当一张图片中识别出的人脸过多,则只返回一些汇总信息给用户。5)211-219行:detect()方法是public的,提供给其他类调用。笔者可以在本地的开发工具中运行上面的main()方法,测试detect()方法的输出。公众账号后台的实现在公众账号后台的CoreService类中,需要对用户发送的消息类型进行判断,如果是图片消息,则调用人脸检测方法进行分析,如果是其他消息,则返回人脸检测的使用指南。CoreService类的完整代码如下:package org.liufeng.course.
import java.util.D
import java.util.M
import javax.servlet.http.HttpServletR
import org.liufeng.course.message.resp.TextM
import org.liufeng.course.util.MessageU
* 核心服务类
* @author liufeng
public class CoreService {
* 处理微信发来的请求
public static String processRequest(HttpServletRequest request) {
// 返回给微信服务器的xml消息
String respXml =
// xml请求解析
Map&String, String& requestMap = MessageUtil.parseXml(request);
// 发送方帐号(open_id)
String fromUserName = requestMap.get(&FromUserName&);
// 公众帐号
String toUserName = requestMap.get(&ToUserName&);
// 消息类型
String msgType = requestMap.get(&MsgType&);
// 回复文本消息
TextMessage textMessage = new TextMessage();
textMessage.setToUserName(fromUserName);
textMessage.setFromUserName(toUserName);
textMessage.setCreateTime(new Date().getTime());
textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);
// 图片消息
if (MessageUtil.REQ_MESSAGE_TYPE_IMAGE.equals(msgType)) {
// 取得图片地址
String picUrl = requestMap.get(&PicUrl&);
// 人脸检测
String detectResult = FaceService.detect(picUrl);
textMessage.setContent(detectResult);
// 其它类型的消息
textMessage.setContent(getUsage());
respXml = MessageUtil.textMessageToXml(textMessage);
} catch (Exception e) {
e.printStackTrace();
return respX
* 人脸检测帮助菜单
public static String getUsage() {
StringBuffer buffer = new StringBuffer();
buffer.append(&人脸检测使用指南&).append(&\n\n&);
buffer.append(&发送一张清晰的照片,就能帮你分析出种族、年龄、性别等信息&).append(&\n&);
buffer.append(&快来试试你是不是长得太着急&);
return buffer.toString();
}到这里,人脸检测应用就全部开发完成了,整个项目的完整结构如下:& & & &&运行结果如下:& & & &&&笔者用自己的相片测试了两次,测试结果分别是26岁、30岁,这与笔者的实际年龄相差不大,可见,Face++的人脸检测准确度还是比较高的。为了增加人脸检测应用的趣味性和娱乐性,笔者忽略了年龄估计值的正负区间。读者可以充分发挥自己的想像力和创造力,使用Face++ API实现更多实用、有趣的功能。应用开发不是简单的接口调用!转帖请注明本文出自柳峰的博客(),请尊重他人的辛勤劳动成果,谢谢!
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2527348次
积分:12563
积分:12563
排名:第384名
原创:55篇
评论:3702条
难度:高级
类型:技术教程
难度:高级
类型:实战教学
文章:22篇
阅读:1687836
(1)(2)(1)(2)(4)(1)(4)(3)(1)(5)(2)(6)(1)(1)(1)(1)(1)(15)(4)【频道】微信公众平台接口傻瓜教程
微信公众平台开发教程21播放视频
播放:6.63万
微信公众平台开发教程20综合功能
播放:3.17万
微信公众平台开发教程19导入数据库
播放:4.75万
微信公众平台开发教程18秒杀程序
播放:3.04万
微信公众平台开发教程17欢迎老朋友
播放:2.48万
微信公众平台开发教程16连接数据库
播放:7.3万
微信公众平台开发教程15静态地图
播放:3.04万
微信公众平台开发教程13天气预报
播放:4.34万
微信公众平台开发教程12最近店铺
播放:4.32万
微信公众平台开发教程11测距
播放:4.87万
微信公众平台开发教程10图片回复
播放:4.79万
微信公众平台开发教程8音乐信息
播放:5.92万
微信公众平台开发教程9超级链接
播放:9.69万
微信公众平台开发教程7图文信息
播放:15.33万
微信公众平台开发教程6关注事件
播放:12.92万
微信公众平台开发教程5关键词回复
播放:17.71万
微信公众平台接口教程4接口对接
播放:21.18万
微信公众平台接口教程3编辑模式
播放:15.23万
微信公众平台接口教程2官方代码
播放:18.32万
微信公众平台接口教程1账号注册
播放:20.93万
分享给站外好友
页面地址:
FLASH地址:
HTML代码:
通用代码:
可以让视频在手机、平板电脑上播放!
举报此视频包含不当内容:
请填写你要举报的内容,标明举报内容所在地时段,将有助于我们更及时的处理举报内容。感谢您对PPS的支持!
广告和欺诈
触犯我的版权
你可以把视频下载到不同的设备
使用电脑飞速下载轻易收藏喜欢的视频
使用苹果设备支持iPhone、iPad高清视频亦可离线观看
使用Android设备支持手机、平板高清视频亦可离线观看
拍下二维码,视频随身看
用PPS影音IOS/Android版扫描二维码,在您的移动设备上继续观看视频,也可以分享给您的好友。
微信公众平台开发教程21播放视频
手机没装PPS影音?
频道信息:
微信公众平台接口傻瓜教程
播放:241.63万
订阅:1799
非程序员如何配置微信公众平台接口
注:数据来自爱奇艺、PPS全平台
微信公众平台开发教程21播放视频
上传时间:22个月前
上 传 者:汕头律师易伟
所属频道:微信公众平台接口傻瓜教程
上 传 自:
分&&&&&&类:教育
暂无相关内容
视频简介:使用ckplayer播放MP4视频。
现在可以用QQ账号直接发表评论,分享给我的好友
大家都在看
互联网药品信息服务许可证:
互联网医疗保健信息服务许可证:
Copyright&2005 - 2014 PPStream, Inc. All Rights Reserved【频道】微信学习
微信营销-美容行业如何做好微信公众平台营销
播放:4961
微信网页版如何传送文件到手机
播放:3993
微信营销—媒体类微信公众平台注册信息说明
播放:2684
微信公众平台绑定公众号手机助手(微信营销实战教程)
播放:6534
教育培训机构如何做好微信营销
播放:9031
微信营销—酒店篇之微信公众平台运营
播放:3641
启航微信营销第十讲:微信公众平台用户管理技巧
播放:3102
微信营销——公众平台推广技巧(纯干货)
播放:8173
微信营销第八课:微信公众平台语音素材的制作与上传
播放:5632
微信公众平台基本设置第一课——微信营销视频教程
播放:2.33万
微信营销——微信公众平台 微信朋友圈营销实战
播放:1.81万
微信营销视频教程2:微信公众平台微信号设置
播放:1.61万
微信营销趣味教程——微信小黄鸡如何添加
播放:4202
微信公众平台被添加自动回复(微信营销教程15)
播放:3025
微信营销6:微信公众平台素材管理单图文消息设置
播放:7590
微信公众平台开发教程23小黄鸡
播放:2.37万
微信营销基础知识——微信如何分享连接
播放:7931
微信营销视频教程第二课:微信公众平台设置篇
播放:9.91万
微信营销-微信公众平台营销十大策略
播放:9394
微信营销教程第九课:微信公众平台视频素材制作与上传
播放:4840
分享给站外好友
页面地址:
FLASH地址:
HTML代码:
通用代码:
可以让视频在手机、平板电脑上播放!
举报此视频包含不当内容:
请填写你要举报的内容,标明举报内容所在地时段,将有助于我们更及时的处理举报内容。感谢您对PPS的支持!
广告和欺诈
触犯我的版权
你可以把视频下载到不同的设备
使用电脑飞速下载轻易收藏喜欢的视频
使用苹果设备支持iPhone、iPad高清视频亦可离线观看
使用Android设备支持手机、平板高清视频亦可离线观看
拍下二维码,视频随身看
用PPS影音IOS/Android版扫描二维码,在您的移动设备上继续观看视频,也可以分享给您的好友。
微信营销视频教程2:微信公众平台微信号设置
手机没装PPS影音?
频道信息:
播放:54.87万
对不起,该频道暂无简介!
注:数据来自爱奇艺、PPS全平台
微信营销视频教程2:微信公众平台微信号设置
上传时间:21个月前
上 传 者:微营销开发认
所属频道:微信学习
上 传 自:
分&&&&&&类:焦点
暂无相关内容
视频简介:微信公众平台微信号及公众号二维码的设置与技巧,如何让你的公众号用起来更加方便,推广起来更加有效,微信号和二维码的设置就极为重要!
现在可以用QQ账号直接发表评论,分享给我的好友
大家都在看
互联网药品信息服务许可证:
互联网医疗保健信息服务许可证:
Copyright&2005 - 2014 PPStream, Inc. All Rights Reserved}

我要回帖

更多关于 微信公众平台 视频 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信