微信开放平台微信登录功能 /移动应用扫码登录

微信开放平台微信登录功能 /移动应用扫码登录

功能概述

扫码登录能力,指的是开发者可在移动应用内使用此能力,拉取二维码,用户使用微信客户端扫描二维码后可以登录此移动应用。此能力可被应用在多设备登录、智能硬件、电视盒子等场景。

iOS 扫码授权获得 Code 流程

步骤一:请求函数

(BOOL)Auth:(NSString *)appId nonceStr:(NSString *)nonceStr timeStamp:(NSString*)timeStamp scope:(NSString *) scope signature:(NSString *)signature schemeData:(NSString *)schemeData;

参数说明

参数是否必须说明
appid应用唯一标识
scope应用授权作用域,拥有多个作用域用逗号(,)分隔,APP 所拥有的 scope
nonceStr一个随机的尽量不重复的字符串,用来使得每次的 signature 不同
timeStamp时间戳
signature签名
schemeData会在扫码后拼在 scheme 后

步骤二:监听二维码回调,回调的时候显示二维码

 (void)onAuthGotQrcode:(UIImage *)image;  //得到二维码

步骤三:用户确认登录之后回调 authCode

-(void)onAuthFinish:(int)errCode AuthCode:(NSString *)authCode;    //成功登录

Android 扫码授权流程

流程

首先 APP 通过 IDiffDevOAuth.auth()接口发起授权,然后在 OAuthListener.onAuthGotQrcode()回调接口中获取二维码,在 APP 中展示二维码,最后用户通过微信扫码,授权.

接口

IDiffDevOAuth

boolean auth(String appId, String scope, String noncestr, String timestamp, String signature, OAuthListener listener)

参数说明

参数是否必须说明
appId应用唯一标识
scope应用授权作用域,拥有多个作用域用逗号(,)分隔,APP 所拥有的 scope
noncestr一个随机的尽量不重复的字符串,用来使得每次的 signature 不同
timestamp时间戳
signature签名
listener授权流程的回调接口

OAuthListener

/**
 * auth之后返回的二维码接口
 *
 * @param qrcodeImgPath 废弃
 * @param imgBuf 二维码图片数据
 */
void onAuthGotQrcode(String qrcodeImgPath, byte[] imgBuf);

/**
 * 用户扫描二维码之后,回调改接口
 */
void onQrcodeScanned();

/**
 * 用户点击授权后,回调改接口
 */
void onAuthFinish(OAuthErrCode errCode, String authCode);

SDK 扫码登录签名算法

获取 Ticket

生成签名之前必须先获取对应的 sdk_ticket。

sdk_ticket 是用于生成签名的临时票据。正常情况下,sdk_ticket 的有效期为 7200 秒,通过 access_token 来获取。由于获取 sdk_ticket 的 api 调用次数非常有限,频繁刷新 sdk_ticket 会导致 api 调用受限,影响自身业务,开发者需在自己的服务存储与更新 sdk_ticket。

1.参考以下文档,使用 APP 的 Appid 和 AppSecret 获取 access_token 获取 access_token,:

https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183

2.用第一步拿到的 access_token 采用 http GET 方式请求获得 sdk_ticket:

https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=2

成功返回如下 JSON:

{
  "errcode": 0,

  "errmsg": "ok",

  "ticket": "-p3A5zVP95IuafPhzA6lRR95_F9nZEBfJ_n4E9t8ZFWKJTDPOwccVQhHCwDBmvLkayF_jh-m9HOExhumOziDWA",

  "expires_in": 7200
}

获得 sdk_ticket 之后,就可以生成扫码登录的签名了。

签名生成

签名生成规则如下:

参与签名的字段包括第三方 appid,noncestr(随机字符串), 有效的 sdk_ticket, timestamp(时间戳) 。

对所有待签名参数按照字段名(即key)的 ASCII 码从小到大排序(字典序)后,使用 URL 键值对的格式(即 key1=value1&key2=value2…)拼接成字符串 string1。 这里需要注意的是所有参数名均为小写字符。 对 string1 作 sha1 加密,字段名和字段值都采用原始值,不进行 URL 转义。即 signature=sha1(string1)。

示例

appid=wxappid

sdk_ticket=-p3A5zVP95IuafPhzA6lRR95_F9nZEBfJ_n4E9t8ZFWKJTDPOwccVQhHCwDBmvLkayF_jh-m9HOExhumOziDWA

noncestr=noncestr

timestamp=1417508194

1.对所有待签名参数按照字段名(即key)的 ASCII 码从小到大排序(字典序)

appid、noncestr、sdk_ticket、timestamp

2.使用 URL 键值对的格式(即 key1=value1&key2=value2…)拼接成字符串 string1:

appid=wxappid&noncestr=noncestr&sdk_ticket=-p3A5zVP95IuafPhzA6lRR95_F9nZEBfJ_n4E9t8ZFWKJTDPOwccVQhHCwDBmvLkayF_jh-m9HOExhumOziDWA&timestamp=1417508194

3.对 string1 进行 sha1 签名,得到 signature: 429eaaa13fd71efbc3fd344d0a9a9126835e7303

微信登录功能 /授权后接口调用(UnionID)

通过 code 获取 access_token

接口说明

通过 code 获取 access_token 的接口。

请求说明

GET https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

参数说明

参数是否必须说明
appid应用唯一标识,在微信开放平台提交应用审核通过后获得
secret应用密钥 AppSecret,在微信开放平台提交应用审核通过后获得
code填写第一步获取的 code 参数
grant_type填 authorization_code

返回说明

正确的返回:

{
  "access_token": "ACCESS_TOKEN",
  "expires_in": 7200,
  "refresh_token": "REFRESH_TOKEN",
  "openid": "OPENID",
  "scope": "SCOPE"
}
参数说明
access_token接口调用凭证
expires_inaccess_token 接口调用凭证超时时间,单位(秒)
refresh_token用户刷新 access_token
openid授权用户唯一标识
scope用户授权的作用域,使用逗号(,)分隔

错误返回样例:

{
  "errcode": 40029,
  "errmsg": "invalid code"
}

刷新或续期 access_token 使用

接口说明

access_token 是调用授权关系接口的调用凭证,由于 access_token 有效期(目前为 2 个小时)较短,当 access_token 超时后,可以使用 refresh_token 进行刷新,access_token 刷新结果有两种:

1.若 access_token 已超时,那么进行 refresh_token 会获取一个新的 access_token,新的超时时间;

2.若 access_token 未超时,那么进行 refresh_token 不会改变 access_token,但超时时间会刷新,相当于续期 access_token。

refresh_token 拥有较长的有效期(30 天)且无法续期,当 refresh_token 失效的后,需要用户重新授权后才可以继续获取用户头像昵称。

请求方法

使用/sns/oauth2/access_token 接口获取到的 refresh_token 进行以下接口调用:

GET https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=APPID&grant_type=refresh_token&refresh_token=REFRESH_TOKEN

参数说明

参数是否必须说明
appid应用唯一标识
grant_type填 refresh_token
refresh_token填写通过 access_token 获取到的 refresh_token 参数

返回说明

正确的返回:

{
  "access_token": "ACCESS_TOKEN",
  "expires_in": 7200,
  "refresh_token": "REFRESH_TOKEN",
  "openid": "OPENID",
  "scope": "SCOPE"
}
参数说明
access_token接口调用凭证
expires_inaccess_token 接口调用凭证超时时间,单位(秒)
refresh_token用户刷新 access_token
openid授权用户唯一标识
scope用户授权的作用域,使用逗号(,)分隔

错误返回样例:

{
  "errcode": 40030,
  "errmsg": "invalid refresh_token"
}

接口说明

检验授权凭证(access_token)是否有效

请求说明

GET https://api.weixin.qq.com/sns/auth?access_token=ACCESS_TOKEN&openid=OPENID

参数说明

参数是否必须说明
access_token调用接口凭证
openid普通用户标识,对该公众帐号唯一

返回说明

正确的 Json 返回结果:

{
  "errcode": 0,
  "errmsg": "ok"
}

错误的 Json 返回示例:

{
  "errcode": 40003,
  "errmsg": "invalid openid"
}

获取用户个人信息(UnionID 机制)

接口说明

此接口用于获取用户个人信息。开发者可通过 OpenID 来获取用户基本信息。特别需要注意的是,如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的 unionid 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号,用户的 unionid 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid 是相同的。请注意,在用户修改微信头像后,旧的微信头像 URL 将会失效,因此开发者应该自己在获取用户信息后,将头像图片保存下来,避免微信头像 URL 失效后的异常情况。

请求说明

GET https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID

参数说明

参数是否必须说明
access_token调用凭证
openid普通用户的标识,对当前开发者帐号唯一
lang国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语,默认为 en

返回说明

正确的 Json 返回结果:

{
  "openid": "OPENID",
  "nickname": "NICKNAME",
  "sex": 1,
  "province": "PROVINCE",
  "city": "CITY",
  "country": "COUNTRY",
  "headimgurl": "https://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
  "privilege": ["PRIVILEGE1", "PRIVILEGE2"],
  "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
}
参数说明
openid普通用户的标识,对当前开发者帐号唯一
nickname普通用户昵称
sex普通用户性别,1 为男性,2 为女性
province普通用户个人资料填写的省份
city普通用户个人资料填写的城市
country国家,如中国为 CN
headimgurl用户头像,最后一个数值代表正方形头像大小(有 0、46、64、96、132 数值可选,0 代表 640*640 正方形头像),用户没有头像时该项为空
privilege用户特权信息,json 数组,如微信沃卡用户为(chinaunicom)
unionid用户统一标识。针对一个微信开放平台帐号下的应用,同一用户的 unionid 是唯一的。

建议:

开发者最好保存 unionID 信息,以便以后在不同应用之间进行用户信息互通。

错误的 Json 返回示例:

{
  "errcode": 40003,
  "errmsg": "invalid openid"
}

调用频率限制

接口名频率限制
通过 code 换取 access_token5 万/分钟
获取用户基本信息5 万/分钟
刷新 access_token10 万/分钟

微信开放平台微信登录功能 /移动应用微信登录开发指南

微信开放平台微信登录功能 /移动应用微信登录开发指南

准备工作

移动应用微信登录是基于OAuth2.0 协议标准构建的微信 OAuth2.0 授权登录系统。

在进行微信 OAuth2.0 授权登录接入之前,在微信开放平台注册开发者帐号,并拥有一个已审核通过的移动应用,并获得相应的 AppID 和 AppSecret,申请微信登录且通过审核后,可开始接入流程。

1、目前移动应用上微信登录只提供原生的登录方式,需要用户安装微信客户端才能配合使用。

2、对于 Android 应用,建议总是显示微信登录按钮,当用户手机没有安装微信客户端时,请引导用户下载安装微信客户端。

3、对于 iOS 应用,考虑到 iOS 应用商店审核指南中的相关规定,建议开发者接入微信登录时,先检测用户手机是否已安装微信客户端(使用 sdk 中isWXAppInstalled函数 ),对未安装的用户隐藏微信登录按钮,只提供其他登录方式(比如手机号注册登录、游客登录等)。

授权流程说明

微信 OAuth2.0 授权登录让微信用户使用微信身份安全登录第三方应用或网站,在微信用户授权登录已接入微信 OAuth2.0 的第三方应用后,第三方可以获取到用户的接口调用凭证(access_token),通过 access_token 可以进行微信开放平台授权关系接口调用,从而可实现获取微信用户基本开放信息和帮助用户实现基础开放功能等。

微信 OAuth2.0 授权登录目前支持 authorization_code 模式,适用于拥有 server 端的应用授权。该模式整体流程为:

1. 第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据 code 参数;

2. 通过 code 参数加上 AppID 和AppSecret等,通过 API 换取access_token;

3. 通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。

获取 access_token 时序图:

第一步:请求 CODE

移动应用微信授权登录

开发者需要配合使用微信开放平台提供的 SDK 进行授权登录请求接入。正确接入 SDK 后并拥有相关授权域(scope)权限后,开发者移动应用会在终端本地拉起微信应用进行授权登录,微信用户确认后微信将拉起开发者移动应用,并带上授权临时票据(code)。

iOS 平台应用授权登录接入代码示例(请参考 iOS 接入指南):


-(void)sendAuthRequest
{
	//构造 SendAuthReq 结构体
	SendAuthReq* req =[[[SendAuthReq alloc]init]autorelease];
	req.scope = @"snsapi_userinfo";
	req.state = @"123";
	//第三方向微信终端发送一个 SendAuthReq 消息结构
	[WXApi sendReq:req];
}

Android 平台应用授权登录接入代码示例(请参考 Android 接入指南):

{
	// send oauth request
	Final SendAuth.Req req = new SendAuth.Req();
	req.scope = "snsapi_userinfo";
	req.state = "wechat_sdk_demo_test";
	api.sendReq(req);
}

参数说明

参数是否必须说明
appid应用唯一标识,在微信开放平台提交应用审核通过后获得
scope应用授权作用域,如获取用户个人信息则填写 snsapi_userinfo
state用于保持请求和回调的状态,授权请求后原样带回给第三方。该参数可用于防止 csrf 攻击(跨站请求伪造攻击),建议第三方带上该参数,可设置为简单的随机数加 session 进行校验。在 state 传递的过程中会将该参数作为 url 的一部分进行处理,因此建议对该参数进行url encode操作,防止其中含有影响 url 解析的特殊字符(如’#’、’&’等)导致该参数无法正确回传。

返回示例:

appid: wxd477edab60670232
scope: snsapi_userinfo
state: wechat_sdk_demo

可拉起微信打开授权登录页:

返回说明

用户点击授权后,微信客户端会被拉起,跳转至授权界面,用户在该界面点击允许或取消,SDK 通过 SendAuth 的 Resp 返回数据给调用方。

返回值说明
ErrCodeERR_OK = 0(用户同意) ERR_AUTH_DENIED = -4(用户拒绝授权) ERR_USER_CANCEL = -2(用户取消)
code用户换取 access_token 的 code,仅在 ErrCode 为 0 时有效
state第三方程序发送时用来标识其请求的唯一性的标志,由第三方程序调用 sendReq 时传入,由微信终端回传,state 字符串长度不能超过 1K
lang微信客户端当前语言
country微信用户当前国家信息

第二步:通过 code 获取 access_token

获取第一步的 code 后,请求以下链接获取 access_token:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

参数说明

参数是否必须说明
appid应用唯一标识,在微信开放平台提交应用审核通过后获得
secret应用密钥 AppSecret,在微信开放平台提交应用审核通过后获得
code填写第一步获取的 code 参数
grant_type填 authorization_code

返回说明

正确的返回:

{
  "access_token": "ACCESS_TOKEN",
  "expires_in": 7200,
  "refresh_token": "REFRESH_TOKEN",
  "openid": "OPENID",
  "scope": "SCOPE",
  "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL"
}
参数说明
access_token接口调用凭证
expires_inaccess_token 接口调用凭证超时时间,单位(秒)
refresh_token用户刷新 access_token
openid授权用户唯一标识
scope用户授权的作用域,使用逗号(,)分隔
unionid当且仅当该移动应用已获得该用户的 userinfo 授权时,才会出现该字段

错误返回样例:

{"errcode":40029,"errmsg":"invalid code"}

刷新 access_token 有效期

access_token 是调用授权关系接口的调用凭证,由于 access_token 有效期(目前为 2 个小时)较短,当 access_token 超时后,可以使用 refresh_token 进行刷新,access_token 刷新结果有两种:

1. 若access_token已超时,那么进行refresh_token会获取一个新的access_token,新的超时时间;
2. 若access_token未超时,那么进行refresh_token不会改变access_token,但超时时间会刷新,相当于续期access_token。

refresh_token 拥有较长的有效期(30 天),当 refresh_token 失效的后,需要用户重新授权。

请求方法

获取第一步的 code 后,请求以下链接进行 refresh_token:

https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=APPID&grant_type=refresh_token&refresh_token=REFRESH_TOKEN

参数说明

参数是否必须说明
appid应用唯一标识
grant_type填 refresh_token
refresh_token填写通过 access_token 获取到的 refresh_token 参数

返回说明

正确的返回:

{
  "access_token": "ACCESS_TOKEN",
  "expires_in": 7200,
  "refresh_token": "REFRESH_TOKEN",
  "openid": "OPENID",
  "scope": "SCOPE"
}
参数说明
access_token接口调用凭证
expires_inaccess_token 接口调用凭证超时时间,单位(秒)
refresh_token用户刷新 access_token
openid授权用户唯一标识
scope用户授权的作用域,使用逗号(,)分隔

错误返回样例:

{ "errcode": 40030, "errmsg": "invalid refresh_token" }

注意:

  1. Appsecret 是应用接口使用密钥,泄漏后将可能导致应用数据泄漏、应用的用户数据泄漏等高风险后果;存储在客户端,极有可能被恶意窃取(如反编译获取Appsecret);
  2. access_token 为用户授权第三方应用发起接口调用的凭证(相当于用户登录态),存储在客户端,可能出现恶意获取access_token 后导致的用户数据泄漏、用户微信相关接口功能被恶意发起等行为;
  3. refresh_token 为用户授权第三方应用的长效凭证,仅用于刷新access_token,但泄漏后相当于access_token 泄漏,风险同上。

建议将Appsecret、用户数据(如access_token)放在 App 云端服务器,由云端中转接口调用请求。

第三步:通过access_token调用接口

获取access_token后,进行接口调用,有以下前提:

  1. access_token有效且未超时;
  2. 微信用户已授权给第三方应用帐号相应接口作用域(scope)。

对于接口作用域(scope),能调用的接口有以下:

授权作用域(scope)接口接口说明
snsapi_base/sns/oauth2/access_token通过 code 换取access_token、refresh_token和已授权scope
/sns/oauth2/refresh_token刷新或续期access_token使用
/sns/auth检查access_token有效性
snsapi_userinfo/sns/userinfo获取用户个人信息

其中snsapi_base属于基础接口,若应用已拥有其它 scope 权限,则默认拥有snsapi_base的权限。使用snsapi_base可以让移动端网页授权绕过跳转授权登录页请求用户授权的动作,直接跳转第三方网页带上授权临时票据(code),但会使得用户已授权作用域(scope)仅为snsapi_base,从而导致无法获取到需要用户授权才允许获得的数据和基础功能。

接口调用方法可查阅微信授权关系接口调用指南

F.A.Q

1. 什么是授权临时票据(code)?

答:第三方通过 code 进行获取access_token的时候需要用到,code的超时时间为10分钟,一个 code 只能成功换取一次access_token即失效。code的临时性和一次保障了微信授权登录的安全性。第三方可通过使用 https 和state参数,进一步加强自身授权登录的安全性。

2. 什么是授权作用域(scope)?

答:授权作用域(scope)代表用户授权给第三方的接口权限,第三方应用需要向微信开放平台申请使用相应 scope 的权限后,使用文档所述方式让用户进行授权,经过用户授权,获取到相应access_token后方可对接口进行调用。

3.开放平台移动应用微信登录目前是否收费?

答:“微信登录”和第三方网站共享微信庞大的用户价值,同时为微信用户提供更便捷服务和更优质内容,实现双向共赢,目前不收取任何费用。

快速开发APP的技巧之一平台化集成SDK,SDK服务是新时代移动互联开发利器

快速开发APP的技巧之一平台化集成SDK,SDK服务是新时代移动互联开发利器

  随着中国与世界经济接轨的节奏越来越快,互联网的性质也在悄悄地发生着本质上的变化:垂直、协同、高效,已成为这个行业的真实写照。

  纵观国内过去一年时间移动互联网行业云客服、在线支付、SASS、集成工具(服务)等企业服务领域(ToB业务)的蓬勃发展,我们有理由相信即将到来的二01六年,第3方企业服务注定将为移动互联网发展的历史划下浓重的一笔。

  谈起第3方服务,相信大家

都会有或多或少的了解,有自己的独特见解。

本文试图从“4知3不知”的角度,来谈一谈第3方服务针对移动应用制作者(制作行业)所带来的好处。

  第一,我们先整理一下在移动应用中使用第3方服务时,大webapp套壳家所共知的好处(变革)都有哪些方面。

  

  1 缩减成本

  众所周知,互联网行业的最大成本是人的成本,相应的职位假设有合适的人任职,无论项目还是业务的推进都将事半功倍。

同理,使用好的第3方企业服务,将不用再花高价请猎头去挖昂贵的大牛,也不用去安抚大牛们个性化的脾气,只想要开销1/十0的成本,甚至免费就能够获得一样的成果(甚至更好)。

  二 提高效率

  唯快不破——已是互联网创业成功的重要与事实。

互联网从业人工都知道,大家每一天几乎都要面对公司的领导盯着您喊:“快!快!快!”。

其实大家也都知道这不能完全怪自己的老大,实在是这个行业发展的太快,竞争太过激烈。

  项目研发、产品测试、服务搭建……想要解决的问题很多,却总感时间的不足。

如若这些事情都从0开始干,恐怕已经落后人家几条大街。

此外另外移动设备千奇百怪的硬件配置、操作系统,充足把人折磨地近乎发狂,是因为哪怕只是一点点漏洞就可能导致大量的客户流失。

  在这方面,由于第3方服务的专注与代码集成所带来的方便,所开销的时间可能仅仅是1-二个小时,节约近九九%的时间,充足换取更多的时间去和竞争对手斗智斗勇,递增更大的成功可能性。

  三 缩减风险

  移动互联网的发展一日千里,一种移动应用要在大量同类产品中脱颖而出,除了找到适合自己发展的方向,还想要的就是不停地试错。

若您“手短腿慢”的话,项目失败的风险将会越来越明显。

相反,如若我们借助专业的第3方服务,由于它的迅速、专业、稳定等特点,可以大幅地加强产品的竞争能力(优质服务、研发速度等),缩短试错时间,必将是创业中保命的手段之一。

  四 专业的事,找专业的人来做

  当今创业,特别是互联网创业,环境的急剧变化想要我们可以更迅速的进行反应,不论是企业还是个人,想要与他人更为紧密的合作。

抛弃掉所有的事情都自己干的旧有观念,将产品(业务)细分,交给第3方服务会带来更好的效果。

原因在于,第3方服务最少是十-二0人的团队专注地解决同一种问题,做同一件事情。

第3方服务所带来的支持效果,绝不是通过1-二个人处理所能对比的,难道不是吗?例如,图像处理功能是当前图片分享类移动应用的标配,各种复杂的滤镜、图像的处理若从“零”制作,所想要的制作人工至少在二人以上(程序设计、图像专家)才有可能实现应用,但假设直接使用第3方提供的服务,如图像处理工具TuSDK(涂图,tusdk.com),就能够节省大量的资本与时间,而且能够取得更好的处理效果和相应的稳定性,同时在数据支持等方面也有较好的优势。

  

原生APP开发框架  好吧,说了如此多大家所共知的第3方服务所带来的“好处”,希望我们所整理的内容可以与你产生一些共鸣。

这么接下来,我们再来看说一些大家所不知道的第3服务能带来的好处。

  1 规模化效应

  第3方服务拥有自己庞大的客户群体,他们很明白客户想要什麽,以及市场的发展趋势。

第3方服务企业由持续地市场动态关注,推出一系列经过论证且优化的具有针对性服务,这点不是轻松地进行移动应用研发,就能够轻易地发现的。

  二 市场效应

  第3方服务的背后几乎都有一种企业做为支撑,他们也想要积累自己的知名度,也会进行市场的推广与宣传,在介绍相关的企业服务时,这些企业往往都以成功案例、以往客户来进行介绍。

所以,假设第3方服务进行产品推介(各种展会、活动),这么客户的产品很有可能就进入了他们的宣传渠道,这如同是免费为客户打广告,附加值那是杠杠的。

如若您还在为递增产品的出镜率,这将会在无形中递增更大的可能性。

  假设第3方服务企业想要融资,一样也会通过用户数据等来作为谈判的本钱,这么客户的产品就有可能会引起各个投资机构的关注,这难道不是另一个增值(价值)吗?

  还有,类似使用中国领先的“云端一体”APP云服务提供商——一门APP服务的制作者,不止简化APP制作技术,让APP的制作时间周期大缩短,也是因为一门APP本身的官方属性,会有众多的制作者进行交流协作,新制作的应用在市场推广方面,具有先天性的优势,更容易让用户了解您的APP。

  三 数据驱动

  现如今,第3方服务(产品)都会提供数据分析工具,帮忙助力客户了解在使用他们(第3方服务企业)的产品或服务的过程中,用户有什麽样的行为是想要客户关注的,而这些第3方服务企业非常明白客户想要分析什麽样的数据,可以帮忙助力到产品提高用户体验和留存度。

基于此,客户想要做的也许仅仅是关注好产品的核心市场以及策略。

  使用第3方服务,可以为用户(企业)带来的好处远远不仅于以上内容,“多快、好省”自己可以做APP软件或许就是第3方服务存在的必然。

随着中国ToB市场的不断发展,相信第3方服务也将会朝着更为方便、高效、智能化的方向发展,所可以解决的问题以及覆盖领域将会越来越多。

  现在国内移动互联网市场出现了非常多的优秀第3方服务商,也出现了一些第3方的聚合官方提供相应的服务。

如 BestSDK.com作为国内领先的SDK信息交流官方,收录了大量的SDK信息,为广大的制作者提供一站式SDK信息与技术交流官方,制作者不止能够在这里迅速地找到自己应用所想要的SDK案例与讨论信息,还能够了解到国内外最新、最全的SDK资讯。

    更多移动应用资讯,请关注www.yimenapp.com

微信小程序新手运营手册,新手运营微信小程序建议

微信是我们经常用的工具,现在大城市的大部分人都离不开微信,基于微信生态的一些商业行为就变得非常的现实。那么怎么可以快速的实现在微信内赚钱或开展业务呢?我们可以加入微信生态,而微信小程序就是其中非常重要的一个环节,是非常值得尝试的。

但是微信小程序之前制作开发需要成本,导致很多公司不会花费太大力气在上面,个人更加难以接受,不过微信现在支持H5打包小程序了,只要您有一个网站就可以打包制作小程序,有网站就可以在线一键生成小程序。

一,运行小程序的目的

快速扩展品牌小程序的知名度,使更多的用户了解了解品牌小程序,通过营销运作来增加用户留存,从而实现消费转化。

2,小程序营销的准备
1、是精准营销
在操作之前要结合自己的产品业务做一种用户画像描述,确认自己的用户在哪里,是什麽样的人,有什麽样的爱好。
二、首页简洁
上图中没有列出用户首先次触达的小程序。widget的首页要简洁,让用户直接接触到主要业务功能,解决他的某些方面需求。
三、直观化处理
小程序列表直观表, 小程序图标和小程序名称。这个图标很有创意,名字也很简洁,说明了应用程序的用途。举例来看,某个小程序的名字叫:小李子,打酱油,这种小程序在用户眼里根本上只能活不到两分钟。
提升留存率——减数为王

具有高用户活跃度和高留存率的小程序通常都有一种特点:轻量化。轻质的设计页面,轻松化的操作步骤,清晰的产品概念,使用户体验大大提升。

3、怎么让用户形成分裂
1、优惠活动吸引已有用户邀请新用户
二、重点线上架发布下服务:提供在线客服功能,及时有效地回复用户信息,解决用户需求;线下服务生贴心指导
三、专注高品质产品:再好的服务也要靠自己的产品。怎样磨练高品质不做细品,体验流畅优势?效果的优势?费用优势?
四、优质的产品+线上架发布下的服务促成口碑,让用户水到渠成。

五、社交立减金:用户在应用程序消费后,商家能够向用户赠送购物“立减金”,用户能够与好友分享来领取,好友收到后能够直接进行新一轮消费。也就是说能够迅速实现裂变,缩减拉新成本,又能够促进老用户的2次消费。

4、小程序推广
1、被占用的小程序名称
遵循用户搜索习惯带来的流量是不可预算的,小程序的名字是唯一的,尽早注册小程序名,更有助于通过搜索找到用户。在姓名前,要尽量加一些重要和通用的词,如“美团外卖+”、“百度外卖 Lite”等,这些词已经注册了,能够在名字后面加英文符号。
二、描述优化小程序和重要词
微信搜索支持重要字模糊匹配,自定义重要字会影响程序的排名,设置重要字时能够借鉴百度的投放技巧,结合微信使用场景命名。
三、公众号菜单和内容跳转插件
A\把小程序放进公众号菜单栏,把公众号的粉丝引向这个小程序。
B\将文字,图片,小程序卡片等添加到

微信公众号推文中,通过符合品牌调性的优质内容引导用户直接跳转小程序。
四、布局附近的小程序
在小程序的”附近小程序“里, 小程序会自动显示给周围的用户,用户能够通过小程序导航到商店或者直接购买服务,多个商店的商户能够添加地理位置,增加小程序的曝光。
五.小程序卡券活动
商户能够在小程序中设置卡卷功能,利用卡卷通过门店活动、折扣等方案让用户直接通过卡卷界面进入小程序。
六、微信群推广
能够在粉丝群中推出商家小程序,引导粉丝分享,然后凭截图领取小礼物,逐步把流量引向小程序。
七、线下促销活动
离线扫码是 Apple入口的最根本方案之一,商家能够把 Apple和营销活动结合起来,吸引用户主动地扫码参加活动。
八,线下活动推广
企业参与展会或举办线下活动时,能够在相关宣传材料中放上小程序进行推广,通过线下活动,将用户连接到线下,实现线上架发布下的互动营销。
九、线向下推进
能够复制小程序2维码的一页,在店内店外推,通过营销活动或店内特色吸引用户进入小程序,为店内引流。
十.动态对接
此外,企业还能够利用小程序与各类活动相结合,通过“拼团”、“优惠券”、“会员卡”、“小程序跳转”等多种社交引流功能,将企业优势分成线上和线下渠道,吸引新用户,活跃转化。
11.推广促销小程序
通过各种小工具,如活动推广,通过互动来提升会员的忠诚。
1二. 小程序跳转小程序
把每条生产线都做一种小程序,绑定在同一种微信号上,相互跳跃,互相引导,跟友情链接一种道理。
1三、公众号边页绑定相关小程序
商业人士能够把公众号和小程序联系起来,把小程序显示在公众号的侧面页面,当用户关注公众号时,就能够看到“相关小程序”,点击后就能够直接跳到小程序。
1四、公众号相关小程序推送邮件
商家在关联小程序后,能够选用将公众号推送给公众号粉丝,粉丝们会收到该小程序的通知,点击相关小程序即可。
1五、小程序代码海报分享朋友圈
商业人士可将小程序码成设计精美的招贴画,分享给朋友圈,通过有设计感的活动或内容进行推广引流。

线上音乐移动应用制作具有什麽优势点

说到音乐,过往可能只是在电视上或者是在MP三里面才能够听到,并且获取音乐的渠道也是比较局限的,不过依旧阻止不了大家对于音乐的追求。更何况在移动互联网迅速发展的今日,音乐的领域开始涉及到线上的官方,结合线上音乐移动应用制作让大家在获取音乐方面的途径只想要通过手机终端就能够实现,更为具有便捷属性,满足市场大众的多元化需求。

一、线上音乐移动应用制作想要带给用户哪些便捷功能?
对于用户来看,大家都会喜欢享受多元化的音乐服务,不论是从听觉上还是从操作体验式上

都想要得到不断的优化才行。对于音乐服务官方来看,需要为用户提供便捷的话,也想要知晓市场用户对于音乐板块存在的个性化需求包括哪些,再依据用户的需求来提供便捷的音乐服务。线上音乐移动应用制作带给用户的便捷功能还想要围绕着音乐的资源、听歌的音乐质量或者是音乐官方上的交流互动等等方案。
2、线上音乐移动应用制作具有什麽优势点?
1、能够结合线上官方进行音乐用户汇总
线上音乐移动应用制作能够结合线上终端的优势来实现互联网官方的宣传推广,以便于官方利用网络空间去发掘更多的用户来源。这些宣传方案能够通过活动宣传或者是消息推广等方面来进行,有利于拓展官方的整体用户规模,推动行业发展。
二、实现多种音乐服务提升用户的粘性
线上音乐移动应用制作能够通过提供给用户多种相关联的音乐服务,让能够体会到互联网官方和音乐软件之间的融合发展能够带来哪些意想不到的效果。结合线上音乐移动应用制作所带来的便捷服务功能能够提升官方用户的整体粘性,让用户发展为官方的长期用户。

移动互联网技术迅速发展,音乐软件开始成为大众日常消费的一个核心移动应用,抓住用户对于音乐的喜爱来进行线上音乐移动应用制作亦是可以获取更多的市场用户,推动行业迅速发展。

视频剪辑类移动应用软件制作怎么满足用户需求

现在剪辑视频是为了更好地发布一些短视频或者是一些精致的视频创作,对此,也让视频剪辑类移动应用软件制作在当前阶段日益流行起来。

一、视频剪辑类移动应用软件制作概述
对于一种能够集中用户流量的官方,视频剪辑类移动应用软件制作能够实现用户的汇总,同时也多种剪辑工具,以及便捷的剪辑服务满足用户的剪辑需求。
2、视频剪辑类移动应用软件制作怎么满足用户需求?
1、视频剪辑素材管理
通常来看,这样的一种线上化官方想要具有多种素材,这样才能够让有想要的用户在官方上选用到或者是寻找到他们所想要的素材,并且这些素材也想要实时进行更新,以便于更紧时事热点,结合视频剪辑类移动应用软件制作来为有想要的用户提供便捷的视频剪辑服务。
二、在线剪辑工具汇总
由于剪辑一部视频所想要开销的时间以及精力都是不同样的,并且大部分人都想要一些便捷的剪辑工具来完成,这么视频剪辑类移动应用软件制作就能够结合官方来实现关于这些在线剪辑工具的线上汇总,以终端的方案推送给有想要的用户进行线上剪辑,更为具有编辑性。
三、在线迅速导入以及编辑功能
视频剪辑类移动应用软件制作能够实现用户在官方上的迅速导入功能,同时满足用户对于剪辑方面的多元化需求,导入的方案支持多种视频格式,同时导出的方案也具有多种格式能够供用户开放进行选用,有助于提升用户进行视频剪辑方面的体验感。
四、线上社交互动官方
既然是一种视频创作官方,这么自然也想要具有多种社交互动功能,结合视频剪辑类移动应用软件制作来融合多种社交互动方案,增加用户之间的交流性以及活动性,让官方的面向用户规模更大,更为活跃。

移动互联网下的视频剪辑类移动应用软件制作具有发掘线上市场,深挖更多市场潜在用户的目的,结合线上官方,能够带给用户更多的便捷,同时在满足用户需求的前提下,发展高粘性用户。

微信开放平台使用了ios 1.8.6.1版本SDK后,用户发起微信分享,出现“正在连接”的提示,并跳转返回app后再打开微信出现联系人列表,这是bug吗?

微信开放平台使用了ios 1.8.6.1版本SDK后,用户发起微信分享,出现“正在连接”的提示,并跳转返回app后再打开微信出现联系人列表,这是bug吗?

微信开放平台

当用户首次使用1.8.6.1版本SDK时,会出现下图提示及上述跳转流程完成安全验证。验证通过后,同一用户后续使用同一app将不会出现二次跳转。如同一用户在非首次使用仍然出现二次跳转情况,请阅读下方常见问题完成自查。

什么是APP微信分享,APP唤起微信分享好友或朋友圈

作为内地互联网最基础的软件,微信无疑是其中最领头的,虽然腾讯老板一直不承认他们是中国互联网基础设施提供商,但是他们事实上就是。可以想一下我们每一天有多少人的聊天,语音,视频数据的流通是在微信上发生的,能够承载这些属性数据的APP早就超出了单一APP的范围,老早就有了社会属性,早就应该被定义为基数互联网设施或设备提供商了。

社会生产力的提高在于交互沟通的顺畅,通过微信这一生态,我们可以快速的触发到更多的消费者,可以快速裂变增加用户,如果您的公司业务有销售性质,那么一定要加入微信分享的能力。

那什么是微信分享呢?

简单的来说就是APP唤起微信,可以将APP的内容或图片或网页分享到微信好友,分享到微信朋友圈,实现快速的展示。

(图:微信分享效果展示)

上图为大众分享展示

在大众点评中,用户可以通过微信分享,将喜欢的店铺、团购快速转发给自己的好友,或分享到朋友圈,在给用户方便的同时,大众点评也获得了更多的流量与曝光。
(图:微信分享展示)

旅游行业分享展示

同程旅游在旗下手机客户端中,为旅游、景区、团购等多项业务增加了分享到微信好友和朋友圈的功能。用户分享后,点击可以直接进入同程网的相关链接,在微信中快捷查看,社交传播。
(图:微信分享展示)

音乐APP的分享展示

在QQ音乐中,用户可以将动听的歌曲通过微信分享,点歌给微信好友,或分享到微信朋友圈,在微信中,用户可以直接点击播放QQ音乐分享的歌曲。
(图:微信分享展示)

新闻APP的分享展示

在腾讯新闻中,用户可以将热点新闻通过微信分享,转发给好友或分享到朋友圈,此外,用户可以通过微信收藏功能,将新闻分享到自己的微信收藏夹中,随时查看。

通过以上几个案例,应该可以非常直观的理解到了什么是微信分享了吧!

可以这么说,APP的微信分享能力,已经是APP的基础能力了,有了这个能力,可以实现非常多的自然增长,比如用户看这文章觉得写得不错,随手就分享到了朋友圈,这么一下不就免费来了很多自然流量了嘛?APP推广成本巨大,为APP增加一个可以自然生长的能力是非常有必要的。