• 微信小程序开发交流qq群 173683895 承接微信小程序开发。扫码加微信。 可以获取用户的手机型号,手机操作系统,微信版本,屏幕宽高等等。 Object wx.getSystemInfoSync() wx.getSystemInfo的同步版本 返回值...

    微信小程序开发交流qq群   173683895

       承接微信小程序开发。扫码加微信。

    可以获取用户的手机型号,手机操作系统,微信版本,屏幕宽高等等。

     

    Object wx.getSystemInfoSync()

    wx.getSystemInfo 的同步版本

    返回值

    Object res

    属性 类型 说明 最低版本
    brand string 设备品牌 1.5.0
    model string 设备型号  
    pixelRatio number 设备像素比  
    screenWidth number 屏幕宽度,单位px 1.1.0
    screenHeight number 屏幕高度,单位px 1.1.0
    windowWidth number 可使用窗口宽度,单位px  
    windowHeight number 可使用窗口高度,单位px  
    statusBarHeight number 状态栏的高度,单位px 1.9.0
    language string 微信设置的语言  
    version string 微信版本号  
    system string 操作系统及版本  
    platform string 客户端平台  
    fontSizeSetting number 用户字体大小(单位px)。以微信客户端「我-设置-通用-字体大小」中的设置为准 1.5.0
    SDKVersion string 客户端基础库版本 1.1.0
    benchmarkLevel number 设备性能等级(仅Android小游戏)。取值为:-2 或 0(该设备无法运行小游戏),-1(性能未知),>=1(设备性能值,该值越高,设备性能越好,目前最高不到50) 1.8.0
    albumAuthorized boolean 允许微信使用相册的开关(仅 iOS 有效) 2.6.0
    cameraAuthorized boolean 允许微信使用摄像头的开关 2.6.0
    locationAuthorized boolean 允许微信使用定位的开关 2.6.0
    microphoneAuthorized boolean 允许微信使用麦克风的开关 2.6.0
    notificationAuthorized boolean 允许微信通知的开关 2.6.0
    notificationAlertAuthorized boolean 允许微信通知带有提醒的开关(仅 iOS 有效) 2.6.0
    notificationBadgeAuthorized boolean 允许微信通知带有标记的开关(仅 iOS 有效) 2.6.0
    notificationSoundAuthorized boolean 允许微信通知带有声音的开关(仅 iOS 有效) 2.6.0
    bluetoothEnabled boolean 蓝牙的系统开关 2.6.0
    locationEnabled boolean 地理位置的系统开关 2.6.0
    wifiEnabled boolean Wi-Fi 的系统开关 2.6.0

    示例代码

    wx.getSystemInfo({
      success(res) {
        console.log(res.model)
        console.log(res.pixelRatio)
        console.log(res.windowWidth)
        console.log(res.windowHeight)
        console.log(res.language)
        console.log(res.version)
        console.log(res.platform)
      }
    })
    
    try {
      const res = wx.getSystemInfoSync()
      console.log(res.model)
      console.log(res.pixelRatio)
      console.log(res.windowWidth)
      console.log(res.windowHeight)
      console.log(res.language)
      console.log(res.version)
      console.log(res.platform)
    } catch (e) {
      // Do something when catch error
    }
    展开全文
  • 微信开发平台,如何获取应用签名 ##第一种 1.在微信开发网站下载<a签名开发工具> 2.下载到手机上,安装应用 **3.在输入框输入包名,点击Get Signature ** 4.获取到签名 ##第二种 在cmd里找到java目录下的bin...

    微信开发平台,如何获取应用签名


    ##第一种
    1.在微信开发网站下载<a签名开发工具>
    在这里插入图片描述2.下载到手机上,安装应用
    在这里插入图片描述**3.在输入框输入包名,点击Get Signature **
    4.获取到签名
    在这里插入图片描述
    ##第二种
    在cmd里找到java目录下的bin文件,然后写./keytool -list -v -keystore D:\Android\Projects\Jztc\XXX.jks,获取到MD5
    在这里插入图片描述
    ##最后得到的MD5和那个签名对比。

    展开全文
  • 怎么可以实现微信用户给公共号发送信息的同时,微信公共号获取到用户的位置信息
  • 微信开发之JSSDK调用

    2016-11-22 17:03:13
    由于项目需要,需要接触微信开发,并要调用微信的JS-SDK里面的接口。 因为经验缺乏,我百度一下关于微信开发的资料,但收集的资料都不尽人意。网上的主流的微信开发是采用PHP开发的,而本人学的Java。所以对PHP微信...

               由于项目需要,需要接触微信开发,并要调用微信的JS-SDK里面的接口。

           因为经验缺乏,我百度一下关于微信开发的资料,但收集的资料都不尽人意。网上的主流的微信开发是采用PHP开发的,而本人学的Java。所以对PHP微信开发只能看懂思路。更有的是,网上一些微信开发视频,也是和PHP有关的,关于用Java开发的甚少。

           无奈之下,我只好苦啃微信开发文档。大家都知道,微信官方给的开发文档真的有点那个啥,一个功能实现非要分几个地方来说,看完这块,又得点击另一个页面看完另一块,甚是麻烦。这样的设定也让我走了好多坑。

    但功夫不负有心,在研究透了微信开发文档之后,我顺利在在项目中完成微信开发。现在我将微信开发的经验分享一下,希望对大家有所帮助。

           微信JS-SDK是微信公众号平台面向网页开发这提供基于微信内的网页开发工具包。接口大类分为:基础接口、分享接口、图像接口、音频接口、智能接口、设备信息、地址位置、摇一摇周边、界面操作、微信扫一扫、微信小店、微信卡劵和微信支付。一般使用频率高的就是分享接口、地理微信、微信扫一扫和微信支付。

    接下来,我将主要讲解如何调用微信分享接口。

    第一步,准备内网映射工具,ngrok。不清楚这个的同学可以去百度一下。https://ngrok.com为ngrok官网。要进行微信开发,内网映射工具是不可少。毕竟,我们程序员进行开发,要测试开发的产品是否能用,都先在自己的电脑跑一下。但由于ngrok的服务器在外国的,鉴于天朝的墙太高,访问可能不稳定。所以我推荐的是国内的natapp,免费和收费的都有,服务毕竟稳定可靠,只不过要想自定义二级域名就得交费成为VIP咯。

    第二步,配置JS接口安全域名。登录要进行开发的公众号,点击公众设置--->功能设置。设置JS接口安全域名,要注意三点:①填写域名前面不需加上http://,例如你的域名是http://test.com,直接填写test.com即可;②域名默认80端口,只支持80和443端口,所以域名后面不能添加端口号。③该域名为你调用微信JS-SDK接口域名。

    第三步,引用JS文件。在需要调用JS接口的页面引入http://res.wx.qq.com/open/js/jweixin-1.0.0.js 。


    第四步,通过config接口注入权限验证配置 。具体参数有什么用处,在截图都有注释讲解。其中jsApiList为我们要使用的接口,我在下面共引用了五个接口,分别为微信好友分享、QQ好友分享、腾讯微博分享、QQ空间分享和朋友圈分享。调用的都是分享的接口。至于其他接口列表,可以去微信开发文档那浏览一下。这里就不详说。

            第五步,在服务器生成相关参数传到调用JS-SDK页面,完成授权。这是最重要的一步。如上图所示,appId,timestamp,nonceStr,signature都为必填参数。下面我将会详细说说如何生成这些参数并传回页面。

    appId为开发的微信公众号的AppID(应用ID),我们可以在登录微信公众号,在开发选项中点击基本配置来查看。

    timestamp为系统生成的时间戳。


    nonceStr为服务器随机生成的字符串。



    signature为微信JS-SDK使用权限算法。在生成signature之前,我们要拿到jsapi_ticket。官方文档是这样解释的:


    我们要注意三个地方。jsapi_ticket要缓存两个小时,每过两个小时,向微信那边请求一次。获取jsapi_ticket要通过access_token。那么我们该如何获取access_token呢?


    从文档可以看出,access_token需要AppID和AppSercet两个参数。而且access_token和jsapi_ticket一样,有效期皆为两小时。这就要求我们服务器要缓存access_token和jsapi_ticket,当有效期一过,就重新请求。有的人采用是用数据库来存取这两个参数,而我采用的是用Quartz定时器。关于Quartz定时器的使用,可浏览我上篇博客《SSH与Quartz集成》,里面有关于Quartz的使用方法。

    AppSercet可在与APPID同一页面获取。接下来,调用接口,获取access_token。



    接下来,我们用access_token去获取jsapi_ticket。


    获取jsapi_ticket,就可以进行生成签名。在此之前,先看一下官方文档的签名算法。



    用代码实现。


    第六步,传生成的参数给网页。



    第七步,调用已授权的JS接口。


    第八步,利用微信Web开发者工具调试,看看是否授权成功。(微信web开发者工具可在微信开发下载)。



    展开全文
  • 个人微信开发api文档

    2019-07-14 15:15:09
    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口 微信开发sdk服务端调用接口 1、基础消息类型 1、客户端发送的心跳包 HeartBeatReq = 1001; 2、消息接收确认回复(接收或拒绝接收) MsgReceivedAck = ...

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    微信开发sdk服务端调用接口
    1、基础消息类型
    1、客户端发送的心跳包 HeartBeatReq = 1001;

    2、消息接收确认回复(接收或拒绝接收) MsgReceivedAck = 1002;

    3、错误单独提升为一种消息类型 Error = 1003;

    2、设备客户端授权类消息

    1、设备(手机客户端、客服客户端)获取通信token请求 DeviceAuthReq = 1010;

    2、设备(手机客户端、客服客户端)获取通信token响应 DeviceAuthRsp = 1011;

    3、设备授权后退出(仅用于服务端内部) DeviceExitNotice = 1012;

    4、账号强制下线通知 AccountForceOfflineNotice = 1013;

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    3、手机客户端上传的通知类消息

    1、手机客户端微信上线通知 WeChatOnlineNotice = 1020;

    2、手机客户端微信下线通知 WeChatOfflineNotice = 1021;

    3、微信个人号新增好友通知 FriendAddNotice = 1022;

    4、微信个人号移除好友通知 FriendDelNotice = 1023;

    5、微信好友发来聊天消息 FriendTalkNotice = 1024;

    6、任务执行结果通知 TaskResultNotice = 1025;

    7、手机上回复好友的聊天消息 WeChatTalkToFriendNotice = 1026;

    8、有好友请求添加好友的通知 FriendAddReqeustNotice = 1027;

    9、手机端向服务端通知聊天执行结果 TalkToFriendTaskResultNotice = 1028;

    10、图片或视频消息的详细内容结果 RequestTalkDetailTaskResultNotice = 1029;

    11、上传手机客户端上微信的二维码 PullWeChatQrCodeTaskResultNotice = 1030;

    12、手机上发送了朋友圈通知 CircleNewPublishNotice = 1031;

    13、手机上删除朋友圈通知 CircleDelNotice = 1032;

    14、手机检测到有人点赞/取消点赞通知 CircleLikeNotice = 1033;

    15、手机检测到有人评论/删除朋友圈通知 CircleCommentNotice = 1034;

    16、消息标记为已读 PostMessageReadNotice = 1035;

    17、联系人信息上传 ContactsInfoNotice = 1036;

    18、群聊新增通知 ChatRoomAddNotice = 1037;

    19、联系人标签新增,修改通知 ContactLabelAddNotice = 1038;

    20、收钱任务执行结果通知 TakeMoneyTaskResultNotice = 1039;

    21、朋友圈图片上传 CircleDetailNotice = 1040;

    22、群聊删除通知 ChatRoomDelNotice = 1041;

    23、群聊信息变更通知 ChatRoomChangedNotice = 1042;

    24、群二维码 PullChatRoomQrCodeTaskResultNotice = 1043;

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    4、服务端、客服客户端发给设备的指令类消息

    1、给好友发消息任务 TalkToFriendTask = 1070;

    2、发送朋友圈任务 PostSNSNewsTask = 1071;

    3、主动添加好友任务 AddFriendsTask = 1072;

    4、发送朋友圈任务后数据回传 PostSNSNewsTaskResultNotice = 1073;

    5、删除朋友圈 DeleteSNSNewsTask = 1074;

    6、客户端或者服务端接受好友请求通知 AcceptFriendAddRequestTask = 1075;

    7、群发消息任务 WeChatGroupSendTask = 1076;

    8、执行养号动作命令 WeChatMaintenanceTask = 1077;

    9、请求图片或视频消息的详细内容 RequestTalkDetailTask = 1078;

    10、服务端主动要求手机上传当前登录的微信二维码 PullWeChatQrCodeTask = 1079;

    11、触发手机推送好友列表任务 TriggerFriendPushTask = 1080;

    12、触发手机推送朋友圈列表任务 TriggerCirclePushTask = 1081;

    13、朋友圈评论删除任务 CircleCommentDeleteTask = 1082;

    14、朋友圈评论删除任务反馈 CircleCommentDeleteTaskResultNotice = 1083;

    15、朋友圈评论回复任务 CircleCommentReplyTask = 1084;

    16、朋友圈评论回复反馈 CircleCommentReplyTaskResultNotice = 1085;

    17、通知手机将某个聊天窗口置为已读 TriggerMessageReadTask = 1086;

    18、消息撤回 RevokeMessageTask = 1087;

    19、转发消息 ForwardMessageTask = 1088;

    20、通知手机推送聊天记录 TriggerHistoryMsgPushTask = 1089;

    21、获取群聊二维码 PullChatRoomQrCodeTask = 1090;

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    5、服务端通知执行的命令

    1、服务端通知pc客户版本升级 UpgradeAppNotice = 1093;

    2、通知手机客户端软件升级 UpgradeDeviceAppNotice = 1094;

    3、清粉任务 PostFriendDetectTask = 1095;

    4、终止清粉任务 PostStopFriendDetectTask = 1096;

    5、删除设备通知 PostDeleteDeviceNotice = 1097;

    6、朋友圈点赞任务 PostMomentsPraiseTask = 1098;

    7、停止朋友圈点赞任务 PostStopMomentsPraiseTask = 1099;

    8、养号任务停止 PostStopWeChatMaintenanceTask = 1100;

    9、修改备注任务 ModifyFriendMemoTask = 1101;

    10、领取红包或转账 TakeLuckyMoneyTask = 1200;

    11、获取指定好友朋友圈 PullFriendCircleTask = 1201;

    12、获取朋友圈图片 PullCircleDetailTask = 1202;

    13、单条朋友圈点赞任务 CircleLikeTask = 1203;

    14、触发手机推送群聊列表 TriggerChatroomPushTask = 1210;

    15、请求具体群聊的详细信息 RequestChatRoomInfoTask = 1211;

    16、获取联系人详细信息(不一定是好友,如群聊成员) RequestContactsInfoTask = 1212;

    17、群聊管理 ChatRoomActionTask = 1213;

    18、群内加好友 AddFriendInChatRoomTask = 1214;

    19、通讯录加好友 AddFriendFromPhonebookTask = 1215;

    20、删除好友 DeleteFriendTask = 1216;

    21、发红包 SendLuckyMoneyTask = 1217;

    22、获取聊天消息的原始内容(主要是xml内容) RequestTalkContentTask = 1218;

    23、返回聊天消息的原始内容 RequestTalkContentTaskResultNotice = 1219;

    24、转发消息内容 ForwardMessageByContentTask = 1220;

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    6、手机端主动发出的交互类消息

    1、手机端推送好友列表 FriendPushNotice = 2026;

    2、手机端推送当前安装版本 PostDeviceInfoNotice = 2027;

    3、手机端回传检测清粉好友数 PostFriendDetectCountNotice = 2028;

    4、手机回传朋友圈数据 CirclePushNotice = 2029;

    5、手机回传朋友圈点赞数量 PostMomentsPraiseCountNotice = 2030;

    9、手机端推送群聊列表 ChatroomPushNotice = 2031;

    7、手机端推送标签列表 ContactLabelInfoNotice = 2032;

    8、推送历史消息 HistoryMsgPushNotice = 2033;

    9、群成员(陌生人)信息 ChatRoomMembersNotice = 2034;

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    case HeartBeatReq: {// 客户端发送的心跳包
    heartBeatReqHandler.handleMsg(ctx, msgVo);
    break;
    }
    case DeviceAuthReq: {// 设备客户端授权 设备(手机客户端、客服客户端)获取通信token请求
    deviceAuthReqHandler.handleMsg(ctx, msgVo);
    break;
    }
    case AccountForceOfflineNotice: {// 设备账号强制下线通知
    accountForceOfflineNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    ///////// 手机客户端通知类消息 start///////////
    case WeChatOnlineNotice: {// 手机客户端微信上线通知
    weChatOnlineNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case WeChatOfflineNotice: {// 手机客户端微信下线通知
    weChatOfflineNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case FriendAddNotice: {// 微信个人号新增好友通知
    friendAddNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case FriendDelNotice: {// 微信个人号移除好友通知
    friendDelNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case FriendTalkNotice: {// 微信好友发来聊天消息
    friendTalkNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case TaskResultNotice: {// 任务执行结果通知
    taskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case WeChatTalkToFriendNotice: {// 手机上回复好友的聊天消息
    weChatTalkToFriendNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case FriendAddReqeustNotice: {// 有好友请求添加好友的通知
    friendAddReqeustNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case TalkToFriendTaskResultNotice: {// 手机端向服务端通知聊天执行结果
    talkToFriendTaskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case RequestTalkDetailTaskResultNotice: {// 图片或视频消息的详细内容结果
    requestTalkDetailTaskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PullWeChatQrCodeTaskResultNotice: {// 上传手机客户端上微信的二维码
    pullWeChatQrCodeTaskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleNewPublishNotice: {// 手机上发送了朋友圈通知
    circleNewPublishNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleDelNotice: {// 手机上删除朋友圈通知
    circleDelNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleLikeNotice: {// 手机检测到有人点赞/取消点赞通知
    circleLikeNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleCommentNotice: {// 手机检测到有人评论/删除朋友圈通知
    circleCommentNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleCommentReplyTaskResultNotice: {// 朋友圈评论回复反馈
    circleCommentReplyTaskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleCommentDeleteTaskResultNotice: {// 朋友圈评论删除任务反馈
    circleCommentDeleteTaskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostFriendDetectCountNotice: {// 手机端回传检测清粉好友数
    postFriendDetectCountNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CirclePushNotice: {// 手机回传朋友圈数据
    circlePushNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostMomentsPraiseCountNotice: {// 手机回传朋友圈点赞数
    postMomentsPraiseCountNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostMessageReadNotice: {// 手机端微信 消息标记为已读
    postMessageReadNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    ///////////////////// 手机客户端通知类消息 end////////////////
    //////////////////////客服pc客户端发给设备的指令类消息 start//////////////////////////
    case TalkToFriendTask: {// 给好友发消息任务
    talkToFriendTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostSNSNewsTask: {// 发送朋友圈任务
    postSNSNewsTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case AddFriendsTask: {// 主动添加好友任务
    addFriendsTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostSNSNewsTaskResultNotice: {// 发送朋友圈任务后数据回传
    postSNSNewsTaskResultNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case DeleteSNSNewsTask: {// 删除朋友圈
    deleteSNSNewsTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case AcceptFriendAddRequestTask: {// 客户端或者服务端接受好友请求通知
    acceptFriendAddRequestTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case WeChatGroupSendTask: {// 群发消息任务
    weChatGroupSendTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case WeChatMaintenanceTask: {// 执行养号动作命令
    weChatMaintenanceTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostStopWeChatMaintenanceTask: {// 养号任务停止
    postStopWeChatMaintenanceTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case RequestTalkDetailTask: {// 请求图片或视频消息的详细内容
    requestTalkDetailTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PullWeChatQrCodeTask: {// 服务端主动要求手机上传当前登录的微信二维码
    pullWeChatQrCodeTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case TriggerFriendPushTask: {// 触发手机推送好友列表任务
    triggerFriendPushTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case FriendPushNotice: {// 手机端推送好友列表
    friendPushNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case TriggerCirclePushTask: {// 触发手机推送朋友圈列表任务
    triggerCirclePushTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleCommentDeleteTask: {// 朋友圈评论删除任务
    circleCommentDeleteTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case CircleCommentReplyTask: {// 朋友圈评论回复任务
    circleCommentReplyTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostFriendDetectTask: {// 清粉任务
    postFriendDetectTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostStopFriendDetectTask: {// 终止清粉任务
    postStopFriendDetectTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostMomentsPraiseTask: {// 朋友圈点赞任务
    postMomentsPraiseTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case PostStopMomentsPraiseTask: {// 停止朋友圈点赞任务
    postStopMomentsPraiseTaskHandler.handleMsg(ctx, msgVo);
    break;
    }
    case GetWeChatsReq: {// 拉取当前微信个人号列表请求
    getWeChatsReqHandler.handleMsg(ctx, msgVo);
    break;
    }
    case SyncFriendMessageAsyncReq: {// 同步好友消息数据请求
    syncFriendMessageAsyncReqHandler.handleMsg(ctx, msgVo);
    break;
    }
    case AccountLogoutNotice: {//pc客户端退出通知
    accountLogoutNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case WeChatLoginNotice: {//pc客户端选择微信号登陆/登出通知
    weChatLoginNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    case ReadChatMessageNotice: {//pc客户端 标记消息已读
    readChatMessageNoticeHandler.handleMsg(ctx, msgVo);
    break;
    }
    /////////客服客户端发给设备的指令类消息 end//////////////////////////
    //////////////其他公共消息处理start//////////////////////////////////////
    case MsgReceivedAck: {//消息接收确认回复(接收或拒绝接收)
    msgReceivedAckHandler.handleMsg(ctx, msgVo);
    break;
    }

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口,SDK的功能API列表

    微信加好友功能API

    1、导入手机通讯录

    2、手机通讯录加好友

    3、加指定微信群好友

    4、自动通过微信好友请求

    5、手机模拟定位

    6、附近人加好友

    7、各种账号加好友(QQ号、手机号、微信号)

    8、陌陌自动回复引流加好友

    9、探探自动回复引流加好友

    10、摇一摇打招呼加好友

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    微信群发功能API

    1、微信群发好友(文字、图片、长短视频、链接、名片)

    2、微信群发群(文字、图片、长短视频、链接、名片)

    3、微信群发收藏(文字、图片、长短视频、链接、名片)

    4、按标签群发、指定好友群发

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    微信群管理功能API

    1、入群欢迎语

    2、指定群管理员

    3、群管理统计(活跃度、发言数、总人数、邀请数、退出数等)

    4、群管理员踢人、群消息警告

    5、群关键词回复,群智能客服

    6、建群、拉人功能接口

    7、多群消息同步

    8、群成员关系链

    9、群二维码、群公告

    10、群资料整理

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    微信营销功能API

    1、发朋友圈(图文、链接、长短视频)

    2、发长视频到微信朋友圈

    3、朋友圈点赞,按比例点赞,按数量点赞

    4、发漂流瓶信息

    5、智能自动回复

    6、同步指定微信好友朋友圈

    7、红包、转账

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    微信聊天对话功能API

    1、微信上线通知

    2、微信下线通知

    3、微信新增好友通知

    4、微信删除好友通知

    5、微信好友发来信息通知

    6、回复微信好友聊天消息、聊天消息撤回

    7、聊天执行结果通知

    8、获取微信通讯录好友列表

    9、获取群列表

    10、好友请求添加好友的通知

    11、获取手机客户端上微信的二维码

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    微信营销辅助工具API

    1、打开微信

    2、定时执行任务

    3、任务执行结果通知

    4、清理僵尸粉

    5、清理微信空间

    6、智能随机养号

    7、智能抢红包服务

    8、微信运动智能点赞

    9、提取指定朋友圈内容

    10、关注指定公众号

    个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口
    永久地址 https://www.wuliaokankan.cn/url301/138.html

    转载于:https://www.cnblogs.com/wuliaokankan/p/10912926.html

    展开全文
  • 1、蓝牙设备接入微信的基本条件 网上相对于这一块的资料不是特别多,而且有些博主整理的非常好的开发流程也会忽略很多东西,对于一个因为临时需求需要研究硬件设备的人来说太多没说明的坑。 在这里推荐一个链接: ...

    一 蓝牙设备接入微信的基本条件

    网上相对于这一块的资料不是特别多,而且有些博主整理的非常好的开发流程也会忽略很多东西,对于一个因为临时需求需要研究硬件设备的人来说太多没说明的坑。
    在这里推荐一个链接: 快速入门微信硬件开发。里面的内容很详细,但却没提到硬件这一块,我也是遇到了很多的坑,目前仍在坑里!


    长话短说,首先要准备的东西有:1、认证的服务号 2、支持Airsync协议的蓝牙设备

    申请服务号

    申请了服务号之后,我们可以在微信公众平台中的“添加功能插件”中添加设备功能,点击进入,里面有“产品管理”和“设置”,两个内容,我们先把设置中的设备连接状态 启用,否则默认关闭的情况下,等你测试连接设备的时候,公众号顶部不会显示是否连接,也就无从判断是否成功了。

    添加产品

     添加产品,产品管理提供了两种方式,一种是型号产品,另一种是一码一产品。在没有认证的情况下,每种产品都只能有100个授权名额, 第一种类型是,该产品下的所有授权设备只有一个识别码,就是添加型号产品提供的二维码,扫描该二维码,会寻找附近该产品二维码下授权的设备(你开发完成后才能实现这种效果)。(一般投入使用都是这种形式);而一码一产品的意思就是,每授权一个设备,都会提供一个二维码,他们是一一对应的,我们测试的时候可以选择这种。


    添加完产品后,产品图片下面会有个Product_id 这个ID在调用设备授权接口的要用到,确认你要将设备添加到哪些产品下面。

    准备工作就到此为止了。

    二 蓝牙接入微信需要的步骤

    调用接口返回设备ID和二维码

    说出来你可能不信,微信团队已经懒到不想写文档直接放了张图片在开发文档上面,我刚回到家没有代码,你们感受下只有图片没有代码的感觉,下面是官方提供的接口。返回的参数有N个,其中我们需要知道的是deviceid和另外一个q开头的参数(累到不想找资料),是一个URL,事实上Q开头的参数就是二维码。大伙自个测试的时候找个二维码生成器生成一下就得了。


    这个请求中。PRODUCT_ID就是我们在微信公众号添加产品的时候分配的。可以到微信公众平台设备功能上找到。

    每次请求都会失去一个授权名额。所以不要一直重复请求。另外,我在测试的时候因为当时不知道蓝牙设备需要支持Airsync协议。所以连接设备一直提示连接不上。用AirsyncDebugger调试工具也返回UUID出错。这个应该就是协议中需要添加的字段。不过这个是硬件编程那一块的内容了。因为无法连接设备,而我又一直重复请求,每次绑定。但是每次绑定都失败,所以我不知道我的设备绑定成功没有,会不会因为这个原因导致一个设备绑定了多个设备ID,导致出错。理论上是不会的。可能设备ID的绑定会被覆盖掉,也就是最后一个绑定的才有效,不管怎样,等我的新样机(支持微信协议)送过来了我就可以测试了,开心。我明明是做前端的,为什么写起了微信开发,甚至去了解硬件了???

    这一步比较简单,没什么太多要注意的。重点是在授权设备那一步

    调用接口设备授权

    可以直接复制下面的代码,官方给的例子中,参数不适合我们测试用。注意坑


    {
        "device_num":"1",
        "device_list":[
        {
        "id":"gh_24d22b8407e5_8cf9b0f1b0873c3d",
        "mac":"F01B6C2AB9CF",
        "connect_protocol":"3",
        "auth_key":"",
        "close_strategy":"1",
        "conn_strategy":"1",
        "crypt_method":"0",
       "auth_ver":"0",
        "manu_mac_pos":"-1",
        "ser_mac_pos":"-2",
       "ble_simple_protocol": "0"
    }
    ],
    "op_type":"1"
    }


    这里是POST请求, 提交的数据是JSON格式,千万要注意的是,device_list这个参数是个数组,所以用PHP写的小伙伴千万别一股脑的写个数组然后JSON_ENCODE这样会出错的,它并不是整个都是JSON格式。所以把上面数据当成字符串放进去就好,这里尤其需要注意的参数有几个,ID是在上一步中微信返回的设备ID。是由微信那边分配的,MAC是你的设备地址,connect_protocol这个是设备的蓝牙类型,1表示安卓 classic类型,2是IOS classic  3是BLE  安卓平台 classic和BLE不允许同时存在   ,具体详情请看文档http://iot.weixin.qq.com/wiki/new/index.html?page=5-1-3

    注意自己设备的蓝牙版本

    auth_ver auth_key  crypt_method  根据上面的代码就好,都表示不加密,如果填其他参数的话,硬件设备还得把这些数据烧进去。

    当返回的结果中errmsg:0的时候 说明成功了。那么接下来就是扫描微信返回的二维码(前面一步),因为已经把设备ID和MAC绑定了。所以要做的就是扫描二维码识别设备。不出意外的话就会显示连接成功(苦逼如我不知道普通蓝牙设备是没法开发的,必须要支持Airsync协议的设备才行。


    微信打印机已经到啦

    今天微信打印机已经到手了,该设备符合airSync协议,之前写的代码把mac地址一改就已经连接成功啦。

    现在已经连接上了设备,也能打印东西,但是中文乱码,原因是厂家是用JAVA写的,而我个人是用PHP写的,在转码过程中,JAVA和PHP的差异比较多,其中转码过程包括String ->byte[] ->bytetohex->parseINT(str,16)->fromcharcode->base64,其中比较难处理的是PHP的mb_strlen(GBK)是异常的。我暂时还没有去测厂家的DEMO,自己写了,发现转码过程到十六进制的时候都是正常的。接下来在JS部分处理的内容直接复制就可以,结果却乱码,我就在想,原本厂家就把一个中文放到了byte数组里面的两个单位里gebytes('gbk'),然后把每个字节转换成16进制,最后再换成十进制,再返回该十进制unicode码所返回的字符串,这么一来,原本的中文被分成了两个。我觉得是必然乱码的,而且最终都是返回字符串,为何不可以直接把字符串用base64来处理。结果是:不行

    编码的问题我还不是很熟,需要继续了解。以下的代码我也不能再放出来了,一来是因为每个厂家的设备规定的转码方式不同,二来因为保密协议不能公开任何代码。所以关于如何打印出内容只能靠你们自己和厂家那边一起弄了。

    以上内容已经完成了设备的连接,可以放心食用

    展开全文
  • 微信开放平台“开发资源”中网站... 据开发者资质认证处介绍:开发者资质认证通过后,微信开放平台帐号下的应用,将获得微信登录、智能接口、第三方平台开发等高级能力。 所以在微信第三方授权登陆获取用户信息...
  • 登录微信开发平台 2、开始添加设备 开始添加设备内容 最后直接添加就行 3、生成二维码 写一个http请求 package com.rinlink.intelligent.test; import java.io.BufferedReader; ...
  • 个人微信开发API协议

    2019-09-23 15:05:30
    安卓微信的api,个人微信开发API协议,微信 ipad sdk,微信ipad协议,微信web版接口api,微信网页版接口,微信电脑版sdk,微信开发sdk,微信开发API,微信协议,微信接口文档sdk,替代微信ipad协议的api接口,网页...
  • 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。1. 关于OAuth2.0的说明官方网站:http://oauth.net/  http://oauth.net/2/权威定义:OAuth is An ...
  • 个人微信开发API

    2019-05-30 00:30:59
    微信开发SDK,微信二次开发sdk,个人微信开发API 微信开发SDK接口API列表 1、基础消息类型 1、客户端发送的心跳包 HeartBeatReq = 1001; 2、消息接收确认回复(接收或拒绝接收) MsgReceivedAck = 1002; 3、错误单独...
  • 课程介绍:非常值得推荐的一套微信小程序开发视频教程,来自极客学院全套的微信实战开发程序,值得学习-------------------课程目录-------------------├&lt;; Part1&gt;│ ├1.1微信小程序从基础到实战...
  • 微信硬件开发设备授权
  • 微信开发SDK

    2019-05-29 14:38:33
    微信开发SDK,微信二次开发sdk,个人微信开发API 微信开发SDK接口API列表 1、基础消息类型 1、客户端发送的心跳包 HeartBeatReq = 1001; 2、消息接收确认回复(接收或拒绝接收) MsgReceivedAck = 1002; 3、错误单独...
  • 微信开发:数据缓存

    2018-04-17 16:58:49
    微信开发过程中,有用来将数据保存在本地的API 对 本地数据进行设置(wx.setStorage-异步、wx.setStorageSync-同步),获取(wx.getStorage-异步、wx.getStorageSync-同步、wx.getStorageInfo-异步,wx-...
  • 微信开发的时候,如果页面顶部有轮播图,底部有导航栏,中间是栏目,那么让中间的栏目,如何根据设备的高度,来进行自适应的填充呢? 首先想到的是运用媒体查询,但是媒体查询效果差,效率低,所以就运用jQuery写法...
  • 1. 获取系统信息 wx.getSystemInfo(OBJECT) wx.getSystemInfoSync() 同步获取系统信息 回调常用参数 model(手机型号) pixelRatio, screenWidth , screenHeight, windowWidth ,widnowHeight ...
1 2 3 4 5 ... 20
收藏数 35,725
精华内容 14,290
关键字:

微信开发获取设备信息