微信开放平台微信智能接口 /语义理解上手指南

微信开放平台微信智能接口 /语义理解上手指南

微信开放平台语义理解接口调用(http请求)简单方便,用户无需掌握语义理解及相关技术,只需根据自己的产品特点,选择相应的服务即可搭建一套智能语义服务。

第一步:创建应用

请到“管理中心”创建应用,点击“创建移动应用”或者“创建网站应用”,填写相关资料,然后将该应用提交审核,只有审核通过的应用才能进行开发。

注册完毕,我们会在 7 个工作日内完成审核工作。审核通过之后,开放平台将分配给该移动应用全局唯一的 AppID 和AppSecret。

第二步:根据 AppID 和AppSecret获得access token

调用接口:
http请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
参数说明:
参数是否必须说明
grant_type获取access_token填写client_credential
appid应用的appid
secret应用的appsecret
返回说明:

正常情况下,微信会返回下述 JSON 数据包。

{
"access_token":"ACCESS_TOKEN",
"expires_in":7200
}

参数说明
access_token获取到的凭证
expires_in凭证有效时间,单位:秒

错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为 AppID 无效错误):

{
"errcode":40013,
"errmsg":"invalid appid"
}

第三步:使用access token调用语义理解接口

输入说明:
http请求方式: POST(请使用 https 协议)
https://api.weixin.qq.com/semantic/semproxy/search?access_token=YOUR_ACCESS_TOKEN
POST数据格式:JSON
POST数据例子:
{
"query":"查一下明天从北京到上海的南航机票",
"city":"北京",
"category": "flight,hotel",
"appid":"wxaaaaaaaaaaaaaaaa",
"uid":"123456"
}
输入参数说明:
参数是否必须参数类型说明
access_tokenString根据 appid 和appsecret获取到的token
queryString输入文本串
categoryString需要使用的服务类型,多个用“,”隔开,不能为空
latitude见接口协议文档Float纬度坐标,与经度同时传入;与城市二选一传入
longitude见接口协议文档Float经度坐标,与纬度同时传入;与城市二选一传入
city见接口协议文档String城市名称,与经纬度二选一传入
region见接口协议文档String区域名称,在城市存在的情况下可省;与经纬度二选一传入
appidStringAppid,开发者的唯一标识
uidString用户唯一id(非开发者id),用户区分应用下的不同用户(建议填入用户openid),如果为空,则无法使用上下文理解功能。appid和 uid 同时存在的情况下,才可以使用上下文理解功能。
返回说明:

正常情况下,微信会返回下述 JSON 数据包。

{
	"errcode":0,
	"query":"查一下明天从北京到上海的南航机票",
	"type":"flight",
	"semantic":{
		"details":{
			"start_loc":{
			"type":"LOC_CITY",
			"city":"北京市",
			"city_simple":"北京",
			"loc_ori":"北京"
			},
			"end_loc": {
			"type":"LOC_CITY",
			"city":"上海市",
			"city_simple":"上海",
			"loc_ori":"上海"
			},
			"start_date": {
			"type":"DT_ORI",
			"date":"2014-03-05",
			"date_ori":"明天"
			},
			"airline":"中国南方航空公司"
		},
		"intent":"SEARCH"
	}
}

返回参数说明:
参数是否必须参数类型说明
errcodeInt表示请求后的状态
queryString用户的输入字符串
typeString服务的全局类型id,详见协议文档中垂直服务协议定义
semanticObject语义理解后的结构化标识,各服务不同
resultArray部分类别的结果
answerString部分类别的结果html5展示,目前不支持
textString特殊回复说明

更多详细内容与协议说明,请查看:语义理解接口协议文档

微信开放平台APP拉起小程序功能 /iOS开发示例

微信开放平台APP拉起小程序功能 /iOS开发示例

开发前需下载 iOS 开发工具包(SDK),前往下载

移动应用跳转到小程序示例:

WXLaunchMiniProgramReq *launchMiniProgramReq = [WXLaunchMiniProgramReq object];
launchMiniProgramReq.userName = userName;  //拉起的小程序的username
launchMiniProgramReq.path = path;    ////拉起小程序页面的可带参路径,不填默认拉起小程序首页,对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"。
launchMiniProgramReq.miniProgramType = miniProgramType; //拉起小程序的类型
return  [WXApi sendReq:launchMiniProgramReq];

回调说明

-(void)onResp:(BaseResp *)resp 
{
     if ([resp isKindOfClass:[WXLaunchMiniProgramResp class]])
     {
          NSString *string = resp.extMsg;
          // 对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性
     }
}

小程序跳转回移动应用请参考 《小程序开发文档》

微信开放平台微信登录功能 /消息推送服务器设置

微信开放平台微信登录功能 /消息推送服务器设置

消息推送

第一步:填写服务器配置

登录OPEN平台后,在移动应用/网页应用详情页面 -「消息推送」中,管理员可启用消息服务,填写服务器地址(URL)、令牌(Token) 和 消息加密密钥(EncodingAESKey)等信息。

  • URL: 开发者用来接收微信消息和事件的接口 URL。开发者所填写的URL 必须以 http:// 或 https:// 开头,分别支持 80 端口和 443 端口。
  • Token: 可由开发者可以任意填写,用作生成签名(该 Token 会和接口 URL 中包含的 Token 进行比对,从而验证安全性)。
  • EncodingAESKey: 由开发者手动填写或随机生成,将用作消息体加解密密钥。

同时,开发者可选择消息加解密方式:明文模式(默认)、兼容模式和安全模式。可以选择消息数据格式:XML 格式(默认)或 JSON 格式。

模式的选择与服务器配置在提交后都会立即生效,请开发者谨慎填写及选择。切换加密方式和数据格式需要提前配置好相关代码,详情请参考 消息加解密说明

第二步:验证消息的确来自微信服务器

开发者提交信息后,微信服务器将发送 GET 请求到填写的服务器地址 URL 上,GET请求携带参数如下表所示:

参数描述
signature微信加密签名,signature结合了开发者填写的 token 参数和请求中的 timestamp 参数、nonce参数。
timestamp时间戳
nonce随机数
echostr随机字符串

开发者通过检验 signature 对请求进行校验(下面有校验方式)。若确认此次 GET 请求来自微信服务器,请原样返回 echostr 参数内容,则接入生效,成为开发者成功,否则接入失败。加密/校验流程如下:

  1. 将token、timestamp、nonce三个参数进行字典序排序
  2. 将三个参数字符串拼接成一个字符串进行sha1加密
  3. 开发者获得加密后的字符串可与 signature 对比,标识该请求来源于微信

验证 URL 有效性成功后即接入生效。

检验 signature 的PHP示例代码:

private function checkSignature()
{
    $signature = $_GET["signature"];
    $timestamp = $_GET["timestamp"];
    $nonce = $_GET["nonce"];

    $token = TOKEN;
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr, SORT_STRING);
    $tmpStr = implode( $tmpArr );
    $tmpStr = sha1( $tmpStr );

    if ($tmpStr == $signature ) {
        return true;
    } else {
        return false;
    }
}

PHP示例代码下载:下载

第三步:接收消息和事件

当某些特定的用户操作引发事件推送时(如用户资料变更时),微信服务器会将消息(或事件)的数据包以 POST 请求发送到开发者配置的 URL,开发者可以依据自身业务逻辑进行响应。事件类型消息推荐使用 FromUserName + CreateTime 排重。

服务器收到请求必须做出下述回复,这样微信服务器才不会对此作任何处理,并且不会发起重试。详见下面说明:

  1. 直接回复success(推荐方式)
  2. 直接回复空串(指字节长度为0的空字符串,而不是结构体中 content 字段的内容为空)

微信开放平台 微信登录功能 /移动应用授权用户信息变更

微信开放平台 微信登录功能 /移动应用授权用户信息变更

授权用户信息变更

1、 授权用户资料变更:当部分用户的资料存在风险时,平台会对用户资料进行清理,并通过消息推送服务器通知最近30天授权过的开放平台开发者,我们建议开发者留意响应该事件,及时主动更新或清理用户的头像及昵称,降低风险。
2、 授权用户资料撤回:当用户撤回授权信息时,平台会通过消息推送服务器通知给开放平台开发者,请开发者注意及时删除用户信息。
3、 授权用户完成注销:当授权用户完成注销后,平台会通过消息推送服务器通知给开放平台开发者,请依法依规及时履行相应个人信息保护义务,保护用户权益。
点击查看消息推送服务器配置

事件推送示例:

XML

<xml>
    <ToUserName><![CDATA[gh_870882ca4b1]]></ToUserName>
    <FromUserName><![CDATA[owAqB1v0ahK_Xlc7GshIDdf2yf7E]]></FromUserName>
    <CreateTime>1626857200</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[user_authorization_revoke]]></Event>
    <OpenID><![CDATA[owAqB1nqaOYYWl0Ng484G2z5NIwU]]></OpenID>
    <AppID><![CDATA[wx13974bf780d3dc89]]></AppID>
    <RevokeInfo><![CDATA[1]]></RevokeInfo>
</xml>

JSON

{
"ToUserName": "gh_870882ca4b1",
"FromUserName": "oaKk346BaWE-eIn4oSRWbaM9vR7s",
"CreateTime": 1627359464,
"MsgType": "event",
"Event": "user_authorization_revoke",
" OpenID": "oaKk343WOktAaT2ygsX138BGblrg",
" AppID": "wx13974bf780d3dc89",
" RevokeInfo": "301",
}

事件字段定义

属性类型说明
ToUserNamestring移动应用的UserName
FromUserNamestring平台推送服务UserName
MsgTypestring默认为:Event
Eventstringuser_info_modified:用户资料变更,user_authorization_revoke:用户撤回,user_authorization_cancellation:用户完成注销;
CreateTimenumber发送时间
OpenIDstring授权用户OpenID
AppIDstring移动应用的AppID
RevokeInfostring用户撤回的授权信息,301:用户撤回移动应用所有授权信息

微信分享与收藏功能 Android开发手册

微信分享与收藏功能 Android开发手册

开发者在 App 中在集成微信 SDK 后,可调用接口实现,以下依次是文字、图片、视频、网页、小程序、音乐视频类型分享的示例。如果分享的消息中涉及文件路径(如图片类型消息),建议开发者针对 Android 7.0 版本及以上设备,判断微信版本支持的情况下,更新为 FileProvider 的方式进行分享。详情查阅《OpenSDK 支持 FileProvider 方式分享文件到微信文档》

WXMediaMessage (微信媒体消息内容)说明

字段类型含义备注
sdkVerintsdk 版本号
titleString消息标题限制长度不超过 512Bytes
descriptionString消息描述限制长度不超过 1KB
thumbDatabyte[]缩略图的二进制数据限制内容大小不超过 32KB
mediaObjectWXMediaMessage.IMediaObject消息对象用于描述一个媒体对象的接口,媒体对象包括:
WXTextObject、WXImageObject、WXVideoObject、WXWebpageObject、 WXFileObject、WXAppExtendObject、WXMiniProgramObject 等

SendMessageToWX.Req(SendMessageToWX请求类)

分享或收藏的目标场景,通过修改 SendMessageToWX.Req 的scene字段实现。

字段类型含义备注
messageWXMediaMessage
sceneint发送的目标场景分享到对话:
SendMessageToWX.Req.WXSceneSession
分享到朋友圈:
SendMessageToWX.Req.WXSceneTimeline ;
分享到收藏:
SendMessageToWX.Req.WXSceneFavorite
transactionString对应该请求的事务 ID,通常由 Req 发起,回复 Resp 时应填入对应事务 ID

示例

一、文字类型分享示例

WXTextObject (WXMediaMessage.IMediaObject 的派生类,用于描述一个文本对象)

字段类型含义备注
textString文本数据长度需大于 0 且不超过 10KB

文字类型分享demo

//初始化一个 WXTextObject 对象,填写分享的文本内容
WXTextObject textObj = new WXTextObject();
textObj.text = text;

//用 WXTextObject 对象初始化一个 WXMediaMessage 对象
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = textObj;
msg.description = text;

SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("text");
req.message = msg;
req.scene = mTargetScene;
//调用 api 接口,发送数据到微信
api.sendReq(req);

二、图片类型分享示例

WXImageObject (WXMediaMessage.IMediaObject 的派生类,用于描述一个图片对象)

字段类型含义备注
imageDatabyte[]图片的二进制数据内容大小不超过 1MB
imagePathString图片的本地路径对应图片内容大小不超过 25MB

图片类型分享demo

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.send_img);

//初始化 WXImageObject 和 WXMediaMessage 对象
WXImageObject imgObj = new WXImageObject(bmp);
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = imgObj;

//设置缩略图
Bitmap thumbBmp = Bitmap.createScaledBitmap(bmp, THUMB_SIZE, THUMB_SIZE, true);
bmp.recycle();
msg.thumbData = Util.bmpToByteArray(thumbBmp, true);

//构造一个Req
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("img");
req.message = msg;
req.scene = mTargetScene;
req.userOpenId = getOpenId();
//调用 api 接口,发送数据到微信
api.sendReq(req);

三、视频类型分享示例

WXVideoObject (WXMediaMessage.IMediaObject 的派生类,用于描述一个视频对象)

字段类型含义备注
videoUrlString视频链接限制长度不超过 10KB
videoLowBandUrlString供低带宽的环境下使用的视频链接限制长度不超过 10KB

注意:videoUrl 和 videoLowBandUrl 不能同时为空

视频类型分享 demo:

//初始化一个WXVideoObject,填写url
WXVideoObject video = new WXVideoObject();
video.videoUrl ="视频url";

//用 WXVideoObject 对象初始化一个 WXMediaMessage 对象
WXMediaMessage msg = new WXMediaMessage(video);
msg.title ="视频标题";
msg.description ="视频描述";
Bitmap thumbBmp = BitmapFactory.decodeResource(getResources(), R.drawable.send_music_thumb);
msg.thumbData =Util.bmpToByteArray(thumbBmp,true);

//构造一个Req
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("video");
req.message =msg;
req.scene = mTargetScene;
req.userOpenId = getOpenId();

//调用 api 接口,发送数据到微信
api.sendReq(req);

四、网页类型分享示例

WXWebpageObject (WXMediaMessage.IMediaObject 的派生类,用于描述一个网页对象)

字段类型含义备注
webpageUrlStringhtml 链接限制长度不超过 10KB
//初始化一个WXWebpageObject,填写url
WXWebpageObject webpage = new WXWebpageObject();
webpage.webpageUrl ="网页url";

//用 WXWebpageObject 对象初始化一个 WXMediaMessage 对象
WXMediaMessage msg = new WXMediaMessage(webpage);
msg.title ="网页标题 ";
msg.description ="网页描述";
Bitmap thumbBmp = BitmapFactory.decodeResource(getResources(), R.drawable.send_music_thumb);
msg.thumbData =Util.bmpToByteArray(thumbBmp, true);

//构造一个Req
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("webpage");
req.message =msg;
req.scene =mTargetScene;
req.userOpenId = getOpenId();

//调用 api 接口,发送数据到微信
api.sendReq(req);

五、小程序类型分享示例

WXMiniProgramObject (WXMediaMessage.IMediaObject 的派生类,用于描述一个小程序对象)

字段类型含义备注
webpageUrlString兼容低版本的网页链接限制长度不超过 10KB
userNameString小程序的原始 id小程序原始 ID 获取方法:登录小程序管理后台 – 设置 – 基本设置 – 帐号信息
pathString小程序的 path小程序页面路径;对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 “?foo=bar”
withShareTicketboolean是否使用带 shareTicket 的分享通常开发者希望分享出去的小程序被二次打开时可以获取到更多信息,例如群的标识。可以设置 withShareTicket 为 true,当分享卡片在群聊中被其他用户打开时,可以获取到 shareTicket,用于获取更多分享信息。详见小程序获取更多分享信息 ,最低客户端版本要求:6.5.13
miniprogramTypeint小程序的类型,默认正式版正式版: WXMiniProgramObject.MINIPTOGRAM_TYPE_RELEASE;
测试版: WXMiniProgramObject.MINIPROGRAM_TYPE_TEST;
预览版: WXMiniProgramObject.MINIPROGRAM_TYPE_PREVIEW
WXMiniProgramObject miniProgramObj = new WXMiniProgramObject();
miniProgramObj.webpageUrl = "http://www.qq.com"; // 兼容低版本的网页链接
miniProgramObj.miniprogramType = WXMiniProgramObject.MINIPTOGRAM_TYPE_RELEASE;// 正式版:0,测试版:1,体验版:2
miniProgramObj.userName = "gh_d43f693ca31f";     // 小程序原始id
miniProgramObj.path = "/pages/media";            //小程序页面路径;对于小游戏,可以只传入 query 部分,来实现传参效果,如:传入 "?foo=bar"
WXMediaMessage msg = new WXMediaMessage(miniProgramObj);
msg.title = "小程序消息Title";                    // 小程序消息title
msg.description = "小程序消息Desc";               // 小程序消息desc
msg.thumbData = getThumb();                      // 小程序消息封面图片,小于128k

SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("miniProgram");
req.message = msg;
req.scene = SendMessageToWX.Req.WXSceneSession;  // 目前只支持会话
api.sendReq(req);

六、音乐视频类型分享示例

WXMusicVideoObject(WXMediaMessage.IMediaObject 的派生类,用于描述一个音乐视频对象),Android SDK 6.6.20 及以上版本支持

字段类型含义备注
musicUrlString音频网页的 URL 地址必填,不能为空,限制长度不超过 10KB
musicDataUrlString音频数据的 URL 地址必填,不能为空,限制长度不超过 10KB
singerNameString歌手名必填,不能为空,限制长度不超过1KB
durationInt歌曲时长必填,单位:毫秒
songLyricString歌词建议填写,限制长度不超过32KB
hdAlbumThumbFilePathString高清专辑图本地文件路径选填,文件限制长度不超过1MB
albumNameString音乐专辑名选填
musicGenreString音乐流派选填
issueDateLong发行时间 Unix 时间戳选填,单位:秒
identificationString音乐标识符建议填写,用户在微信音乐播放器跳回应用时会携带该参数,可用于唯一标识一首歌,微信侧不理解
WXMusicVideoObject musicVideo = new WXMusicVideoObject();
musicVideo.musicUrl = "https://www.qq.com";	 // 音乐url
musicVideo.musicDataUrl="http://xxx/xx.mp3"; // 音乐音频url
musicVideo.songLyric = "xxx";	// 歌词
musicVideo.hdAlbumThumbFilePath = "xxx";	 // 专辑图本地文件路径
musicVideo.singerName = "xxx";
musicVideo.albumName = "album_xxx";
musicVideo.musicGenre = "流行歌曲";
musicVideo.issueDate = 1610713585;
musicVideo.identification = "sample_identification";
musicVideo.duration = 120000;	// 单位为毫秒

WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = musicVideo;
msg.title = "歌曲名称";	// 必填,不能为空
msg.description = "歌曲描述";  // 选填,建议与歌手名字段 singerName 保持一致
msg.messageExt = "额外信息";   // 微信跳回应用时会带上
msg.thumbData = getThumb();   // 音乐卡片缩略图,不超过64KB

SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("musicVideo");
req.message = msg;
req.scene = SendMessageToWX.Req.WXSceneSession;	// 支持会话、朋友圈、收藏
api.sendReq(req);

处理从微信返回到第三方应用,监听com.tencent.mm.opensdk.openapi.IWXAPIEventHandler#onReq回调,处理示例如下:

@Override
public void onReq(BaseReq req) {
	switch (req.getType()) {
		case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
			goToShowMsg((ShowMessageFromWX.Req) req);
			break;
		default:
			break;
    }
}

private void goToShowMsg(ShowMessageFromWX.Req showReq) {
		WXMediaMessage wxMsg = showReq.message;
		if (wxMsg.mediaObject instanceof WXMusicVideoObject) {
			WXMusicVideoObject musicVideoObject = (WXMusicVideoObject) wxMsg.mediaObject;
			String identification = musicVideoObject.identification;	// 分享到微信时的音乐标识符字段
			String messageExt = wxMsg.messageExt;	//分享到微信时传的额外信息字段
          	// 应用根据 identification 与messageExt自行处理
		}
}

音乐视频类型使用说明:

  1. 注意事项:
    • 音乐视频类型与音乐类型不同,分享至微信的音乐视频消息,直接点击好友会话或朋友圈下的分享内容会跳转到微信原生播放器,可以对音乐作品辅以视频制作成音乐视频,进行点赞、评论、发送给朋友、分享到朋友圈、发布至视频号等。
    • 在播放器里点击跳转入口会跳转回App,没有安装 App 时会打开 musicUrl 链接。
  2. 音乐视频类型分享,请开发者特别注意必填的字段有:
    • WXMediaMessage.title:歌曲名称
    • WXMusicVideoObject.musicUrl:音频网页的 URL 地址
    • WXMusicVideoObject.musicDataUrl:音频数据的 URL 地址
    • WXMusicVideoObject.singerName:歌手名
    • WXMusicVideoObject.duration:歌曲时长,单位为毫秒
  3. 第三方应用在分享时设置的字段 WXMediaMessage.messageExt 字段与WXMusicVideoObject.identification 需要保证 Android 与iOS平台是一致的,否则跨平台分享的消息跳转回应用无法保证能够跳转到对应歌曲。
  4. 微信跳转到第三方应用,应用处理 IWXAPIEventHandler.onReq 回调时需要判断WXMediaMessage.mediaObject 的类型进行对应的处理,并且异常情况下也能处理 WXEntryActivity 的关闭,否则可能会导致拉起应用后无法点击操作的问题;无论 WXMediaMessage.mediaObject 类型是什么,WXMediaMessage.messgeExt 字段均会透传是应用在分享时写入的数据,应用可使用该字段进行应用低版本的兼容处理。

注意事项

  1. 发起分享的 App 与小程序属于同一微信开放平台帐号。
  2. 支持分享小程序类型消息至会话,暂不支持分享至朋友圈。
  3. 若客户端版本低于 6.5.6 或在 iPad 客户端接收,小程序类型分享将自动转成网页类型分享。开发者必须填写网页链接字段,确保低版本客户端能正常打开网页链接。
  4. 对于音乐视频类型的分享,需按照如下格式发送邮件至 hansenxu@tencent.com
    • 邮件主题:帐号 XXX 关于音乐视频类 appmsg 的分享功能申请;
    • 邮件内容:需提供移动应用 appid 和需分享的音频网页的域名信息;
    • 要求:
      • 申请帐号需为已完成主体认证的帐号;
      • 申请“音乐视频类型的分享权限”需先完成“音乐类型的分享权限”申请,且申请的移动应用的 appid 和域名需一致;
      • 音乐视频类型的分享权限会涉及到相关法务协议的签署,具体签订流程和开通结果请参考邮件回复结果。

微信开放平台应用《微信开放平台网站信息登记表》填写规范

微信开放平台应用《微信开放平台网站信息登记表》填写规范

应用《微信开放平台网站信息登记表》

8.1 你所提交的《微信开放平台网站信息登记表》里的应用内容需与微信开放平台内应用基本信息保持一致。

驳回示例:微信开放平台应用名称为“书轩”,《微信开放平台网站信息登记表》中填写的应用名称为“二轩”,与平台应用名称无关。

8.2 《微信开放平台网站信息登记表》公章需与登记表内主办单位/微信开放平台认证主体一致。

8.3 《微信开放平台网站信息登记表》备案属港澳/海外主体无公章的,可用有权人手写签名替代。

8.4 《微信开放平台网站信息登记表》内的公司公章需清晰且规范,暂不支持合同章等其他章。

8.5 《微信开放平台网站信息登记表》备案需与登记表内主办单位一致。

8.6 《微信开放平台网站信息登记表》中的备案号需填写规范,正确的备案号格式示例:粤 ICP 备XXX号/粤 ICP 备XXX号-1。

微信开放平台支持接入如下类型的第三方应用

开放平台支持接入如下类型的第三方应用:

1.移动应用

2.网站应用

补充,WeDemo 开源项目(微信登录、微信分享等功能示例,包括客户端(iOS)及后台源代码,开发者可参考源代码完成开发,安全、便捷地在 App 中实现微信登录、分享等功能。查看WeDemo 开源项目 )

云端APP开发平台有那些,推荐一门APP开发平台

云端APP开发平台有那些,推荐一门APP开发平台

移动应用迅速制作官方 Phonegap或Xamarin与一门APP的最大区别?

普通人了解到移动应用迅速制作官方,通常都是从国外的Phonegap来的。

毕竟Phonegap在这个领域中最出名的一种。

近几年,国内也出现了许多移动应用迅速制作官方,如本文要写到的一门APP。

这么一样是移动应用迅速制作官方,Phonegap和一门APP的最大区别在哪里呢?

Phonegap app迅速制作官方简介

PhoneGap 是一款HTML五官方,通过它,制作商能够使用HTML、CSS及Javwebapp开发工具aScript来制作本地APP程序。

所以,现在制作商能够只 编写一次应用程序,然后在七个核心的移动官方和应用程序商店(app store)里进行发布,这些移动官方和应用程序商店包括:iOS、Android等。

此外PhoneGap拥有丰富的插件,能够以此扩展无限的功能。

一门APP简介

一门APP是中国领先的“云端一体”的APP云服务提供商。

一门APP推行“云端一体”的理念,重新定义了APP制作。

一门APP为制作者从“云”和“端”两个方向提供API,简化APP制作技术,让APP的制作时间周期从一种月缩短到七天。

一门APP由“云API”和“端API”两部分组成,能够帮忙助力制作者迅速实现APP的制作、测试、发布、管理和运营的全生命时间周期管理。

Phonegap与一门APP的区别

这里写太多文字也看不清楚,小明直接做了张图,从各个方面将phonegap和一门APP进行对比。

Phonegap优势

PhoneGap针对不同官方的WebView做了扩展和打包,使WebView这个组件变成可访问设备本地API的强大浏览器,因此h5app开发工具制作人工在PhoneGap框架下可通过JavaScript访问设备本地API,实现WebView与SDK API双向通信。

但PhoneGap所体现的混合类型的应用还不能完全取代原生应用,在一些复杂的API调用或者涉及高性能计算的应用制作上,原生应用还是框架app唯一的选用。

除此以外的大多数场合,混合类型的应用以很小的性能牺牲为代价,带来了大幅的灵活性和制作效率。

用PhoneGap平台的一句话概况其特点是:“wri

tten once,run everywhere”——一次编译到处运行。

移动应用迅速制作官方 一门APP优势

(1)方式完整,简化,上手快。

是因为有Phonegap的基础,了解概念花了不到两个小时,做出首先个小App花了一天半。

(二)IDE整合做的不错,直接连接云端,SVN代码同步,直接连接手机App Loader真机调试,Log能够通过IDE输出,比模拟器真实,直观。

(三)云编译很方便,跨官方封装,直接生成2维码,我的小App做完封装,直接发2维码给朋友用。

(四)手机底层硬件/组件调用API很实用,测了一些,比如语音识别,都不错。

(五)文档完备,相比开源项目往往缺乏文档,信息想要东拼西凑来看,一门APP的文档比较集中和全面。

如何确定Key应该绑定哪种服务? APP开发接入高德导航

如何确定Key应该绑定哪种服务? APP开发接入高德导航

根据业务需求选择Key的服务平台(包括:Android、iOS、Web端、Web服务、智能硬件、微信小程序等),可点击相应平台可使用服务查看详情介绍。

其中Web服务指调用Web服务API接口使用的Key,Web端指PC或者H5网页调用使用的key

注意:Key的服务平台选择之后无法修改,如需要使用其他服务,可以再添加其他服务平台的Key。如下图所示:

优量汇注册会员教程,APP接入腾讯广告第一步

1、进入优量汇官网,点击“注册”;

2、进入注册页面,开发者可选择QQ(不建议使用企业QQ、营销QQ)或微信两种注册方式,注册的QQ或微信作为系统登录账号的唯一凭证,会员注册账号时请避免使用员工私人号码注册;

3、“基本信息”内容填写;

请输入准确的企业名称,企业名称需跟您的企业资质(营业执照名称)保持一致。

4、 即可进入系统进行体验,支持创建测试媒体或测试广告位等操作,资质认证后方可正常变现。

5、提交资质

(1) 基本信息

(2) 财务信息

(3)资质证明,请注意上传文件的大小(1M以内)与格式(仅支持jpg和png),文件上传完成后点击“提交”即可,账号的审核周期为1个工作日(节假日顺延)。

注:营业执照上标明的经营范围需与广告、互联网行业相关,若不相关则需提供该公司名下的软件著作权证书进行审核评估

APP开发微信支付功能 wxPay 微信支付

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

wxPay 微信支付

• 在你的服务器端使用 微信官方统一下单接口 获取 “预支付交易会话标识 prepay_id”,再参考 调起支付接口 构造支付参数,交由此 js 函数发起支付;

• 此支付方式 不需要 配置机密信息(API密钥)到打包平台;

jsBridge.wxPay({
  appid    : "应用ID",
  partnerid: "商户号",
  prepayid : "预支付交易会话ID",
  package  : "扩展字段",
  noncestr : "随机字符串",
  timestamp: "时间戳(单位是秒,不是毫秒,切记)",
  sign     : "签名"
}, function (succ, text) {
  if (succ) {
    alert("支付成功");
  } else {
    alert("支付失败或取消了支付\n" + text);
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.wxPay({
  appid    : "应用ID",
  partnerid: "商户号",
  prepayid : "预支付交易会话ID",
  package  : "扩展字段",
  noncestr : "随机字符串",
  timestamp: "时间戳(单位是秒,不是毫秒,切记)",
  sign     : "签名"
}, function (succ, text) {
  if (succ) {
    alert("支付成功");
  } else {
    alert("支付失败或取消了支付\n" + text);
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.wxPay({
  appid    : "应用ID",
  partnerid: "商户号",
  prepayid : "预支付交易会话ID",
  package  : "扩展字段",
  noncestr : "随机字符串",
  timestamp: "时间戳(单位是秒,不是毫秒,切记)",
  sign     : "签名"
}, function (succ, text) {
  if (succ) {
    alert("支付成功");
  } else {
    alert("支付失败或取消了支付\n" + text);
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

APP开发微信支付功能 微信 URL快捷支付

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

微信 URL快捷支付

• 可以将如下参数 GET 或 POST 提交到 https://g.yimenyun.net/pay/ 发起支付

• channel: 支付渠道, 0 微信, 1 支付宝, 2 银联云闪付

• orderid: 订单号

• title: 订单名称

• amount: 支付金额(元)

• url_succ: 支付成功后跳转的链接

• url_fail: 支付失败跳转的链接

• 示例:
调用微信App完成名称为 购买VIP会员 的订单 S63799873061 0.01元支付;
支付成功跳转到https://m.baidu.com/,失败跳转到 https://xw.qq.com/;
注意,要对各参数进行 UrlEncode UTF-8 编码;

https://g.yimenyun.net/pay/?channel=0&orderid=S63799873061&title=%e8%b4%ad%e4%b9%b0VIP%e4%bc%9a%e5%91%98&amount=0.01&url_succ=https%3A%2F%2Fm.baidu.com%2F&url_fail=https%3A%2F%2Fxw.qq.com%2F

常见的微信小程序推广小技巧有那些?

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

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

微信小程序借助微信成为二0二0年最大的黑马,强大的引流与转化能力,让很多企业视如珍宝,纷纷找第3方制作公司定制,小程序自带传播推广属性,解决了很多企业的推广传播问题。

1、小程序设置的重要词及搜索广告

小程序能够通过名称被用户搜索到,同时,小程序的名称

又是唯一的,因此抢先注册一种合适的名称,也是为小程序的推广传播打下基础。比较常见的,还是用自己的品牌词+行业热词作为名称。小程序还能够设置十个重要词,制作者可在微信小程序后台,添加重要词。微信依据系统设置的规则:小程序热度、服务时长等情况,决定展示哪些小程序、排名。

二、通过好友分享,群分享推广

一种好的产品,当然少不了社交传播。微信小程序能够发送到好友或微信群,无需关注,即可打开使用,大大提升传播推广效率。小程序现在不支持分享到朋友圈,不过能够把太阳码图片分享到朋友圈,相信不久后,我们就能在朋友圈看到小程序的分享推广了。

三、附近的小程序功能

微信提供小程序与营业执照的认证,认证后,小程序会依据商户的营业执照地址,展示在这个地址的五公里范围,用户打开小程序即可看到这些被推送的附近小程序,用户能够通过这个方法找到商户,或者与商户取得联系。

四、通过2维码扫码进行线下推广传播

太阳码传播是最符合微信小程序属性的方案,其实就是把线下流量引导到微信。我们常见的场景:某个餐馆内,扫码后,即可点餐付款,免去了排长队,效率低的问题。无需对小程序进行过多的宣传,即可让客户变成小程序用户。

五、社交立减金、模型消息
社交立减金是应电商小程序之于微信社交生态而破土的关键一环,在内测阶段就已经帮蘑菇街,拼多多等众多电商小程序提高了获利。

模型消息是微信小程序在微信内部对每个用户生成的推送,对于任何类型的小程序都有着非常广泛的应用场景。内容类能够用它提示更新,电商类能够用它提示促销或未付款,工具类能够用它提示完成日常目标。每一次的消息推送,都可能获取大量的忠实用户。

六、公众号关联
小程序能够和多个公众号进行关联,可把公众号的用户流量引到小程序,实现流量的质变转化。现在,能够在公众号的菜单和图文里内嵌小程序。为很多公众号内容运营商提供了新的盈利模式。
还有公众号底部广告位也正式向小程序自由,小程序能够直接付费在公众号底部进行大范围的推广。
这些是现在为止,小程序核心的推广传播方案,企业可依据能力和需求,采用不同的方案传播。相信在不久的未来,微信会自由更多的入口,更为完善小程序的功能,让小程序成为未来五年的移动流量垄断巨头。

APP开发有那些重点注意的地方?比如APP首页就非常值得特别重视

随着移动互联的深入发展,特别是疫情这3年来的持续加持,APP开发制作已经成为一种全新的生产力方式,越来越多的企业,无论哪个行业,都把移动互联系统,业务线上化纳入了发展规划。无论是电子化的OA内部管理,内部高效沟通,内部安全沟通,还是生产系统的信息化集成,从生产环节的全面数据实时监控,到产品的电子化溯源。互联网真正的彻底改变或加持了我们的生产要素,生产方式,甚至是沟通和业务处理方式。

与网站不同的是,用户在下载移动应用应用之后,打开之后第一显示出来的必定是移动应用应用的首页,不会是其他页面。所以首页就是整个移动应用应用最主要的地方,是脸面所在。因此企业在进行长沙移动应用制作的过程中,首页设计的好坏就直接影响着用户对这个移动应用应用的印象,是决定用户是否喜欢和使用这个移动应用应用的重要所在,而企业需要自己的移动应用应用效果更好的话,与其首页效果就有着密不可分的联系。这么下面长沙移动应用开发创研移动就给大家谈谈,怎样才能做好移动应用应用的首页设计。

突显产品的核心功能和特点

假设移动应用应用是一款名称比较新颖的产品,这么在首页界面就应该让用户一下子可以清楚这款移动应用应用的功

能和特点,否则用户可能还没有使用之前就是因为困惑太多而放弃使用。不管是名称多么吸引人的移动应用应用,假设用户首次安装打开之后,不知道这个移动应用应用究竟是做什麽的,不知道有哪些功能的话,这么用自然就会选用卸载。因此,在移动应用应用的首页设计当中,要让用户对移动应用应用的用途就能一目了然,知道这个移动应用应用是做什麽的。

应当依据实际情况自动更新

我们经常更新移动应用应用之后,再一次打开会发现移动应用应用的首页会更新,如遇到节假日会有与节日祝福相关的图片,这样就会给用户一个亲切感,一下子就拉近了用户与移动应用应用之间的距离。假设要实现这样的效果,就想要要在移动应用应用首页设计的时候依据实际情况做自动更新,如依据时间、地点、气候等因素对移动应用应用首页做相应的判断和个性化定制,这样在用户每次更新重新打开之后就会觉得这款移动应用应用10分贴心,可以与时俱进,应情应景。

区分不同类型产品首页界面

现在的移动应用应用有许多行业的应用,如商城、社交、生活服务、支付等,这些行业的移动应用应用首页界面也应该是有所区别的,否则用户就会觉得,所有的移动应用应用首页界面都大同小异,这么很容易就会被用户直接忽略了,但假设可以依据移动应用应用的类别细心规划,做出符合该类型特征的,独特的首页设计效果,或许能够让用户驻足停留。比如我们打开微信的界面,只要随便一看就能知道他是微信,而不是QQ同样。

界面能够有多种表现形式
一款移动应用应用的首页界面不单单是只有文字或图画,既能够图文并茂,也能够加入视频、音乐等动态效果进去,特别是加入动态的音乐和视频进去,能够更生动形象地展示移动应用应用的个性化和功能,显得惟妙惟肖。当然在这里想要注意的是,加入这些多媒体素材时也应当研究移动应用应用的加载速度,能够在安装的时候将多媒体文件加载到安装包当中,否则网络请求的速度缓慢会导致用户体验大大下降。
在当下这个看脸的时代,用户决定是否喜欢一种移动应用应用,第一就是要看这个移动应用应用的首页界面是否令自己满意,能否达到自己的需求,从而决定对这个移动应用应用是卸载还是留下。这么企业只有充分做好移动应用应用的首页效果设计,才能给用户留下美好的首先印象,让用户爱上这个移动应用应用,这样的移动应用应用也才能更容易取得成功。不然的话,用户看到一种设计糟糕的首页,这么不用去其它页面,用户就已经决定要卸载移动应用应用了

贷款移动应用软件制作需注意哪些问题?

由于当代年轻人生活需求转变,很多人在国家号召下都在尝试创业创新,为的就是能在一定时间内得到成绩,但要想在生活中进行创业,往往想要大量的资金支撑,而部分人没有一定的经济实力,这么贷款就是不错的解决方案,恰好贷款移动应用软件制作方便用户在线完成贷款服务。

一.这么贷款移动应用软件制作需注意哪些问题呢?

1、用户身份信息审核:贷款对于很多人而言是一个负担,但合理利用贷款方案来解决生活问题其实会给人们生活带来便利,日常生活中人们都对于贷款行为慎之又慎,因此用户要想在官方上完成贷款操作,就想要进行实名认证和身份审核,这也是为了以免部分有心之人钻官方漏洞来为自己谋利。

二、提供客服咨询功能:部分新手用户对于贷款项目内容了解较少,因此要想进行贷款行为多少有些困难,而且现如今贷款种类各式各样,用户容易陷入套路贷之中,为了以免相关问题产生,移动应用会为用户提供客服咨询功能,客服也会依据用户要求给出一定解决方式。

2.这么贷款移动应用软件制作具备哪些功能呢?

1、贷款信息查看:由于贷款项目繁复,为了给用户提供方便,移动应用会分类展示贷款项目内容,感兴趣的用户能够自行浏览相关资讯,为用户选用合适的贷款项目提供参考根据。

二、贷款流程查看:用户要在官方上完成贷款操作,就想要依据官方指引完成相关内容,移动应用支持用户在线查看贷款流程,使得用户的贷款过程方便快捷,给人们生活提供便利。

三、贷款信息通知:而一旦用户完成贷款操作后,用户即可在官方上查看自己的贷款项目和还款时间,以便用户依据实际情况完成相关操作。

四、还款揭示功能:部分用户生活节奏较快,很少会注意到还款日期,移动应用也会为用户提供还款揭示功能,在还款日期移动应用会自动揭示用户完成还款服务,使得用户在线获得良好使用体验。

虽然贷款移动应用软件制作出现时间较短,但其制作使得用户完成贷款行为更为方便,还促进了线下行业转型迭代,有着诸多好处。

开发APP从一门开始www.yimenapp.com

微信开放平台申请网站应用教程,获得微信开放平台网站应用appid和APPSecret

微信开放平台申请网站应用教程,获得微信开放平台网站应用appid和APPSecret
1.登录微信开放平台
https://open.weixin.qq.com/
点击顶部应用管理

2.跟着页面提示输入您的网站应用信息

输入网站回调地址

3.资料上传之后等待微信开放平台官方审核,审核通过直接在网站应用列表即可查看您的应用

4.在应用详情页面获得您的网站应用的APPID和APPSecret

审核通过之后就可以实现PC网站扫码登录了