Android 第三方应用接入微信平台研究情况分享(一)

微信平台开放后倒是挺火的,许多第三方应用都想试下接入微信这个平台,毕竟可以利用微信建立起来的关系链来拓展自己的应用还是挺不错的,可以节约很多在社交方面的开销,我最近由于实习需要也在研究这个东西,不过发现网上的相关资料还是挺少的,这里把我的整个研究情况给出来,希望可以共同学习。

一、微信SDK中会用到主要类的类图

上面这张类图中显示的是与微信通信过程中的请求类和响应类,第三方应用通过他们

附带的message字段来携带消息传输给微信进程。其中BaseResp有个内部类是ErrCode,

它里面定义了几个常量字段,当我们向微信发送请求后它会作为返回字段

返回到我们的应用中来,我们可以根据这个做相应的处理,在后面的时序图中将会提

到。接下来就是SDK中的message对象了。

上面这个类图主要是消息对象,里面有一个字段来引用媒体对象,这些媒体对象就

是我们所能传给微信的对象。有了消息对象和媒体对象,接下来要给出的就是将消

息对象送出去的通信类了。

上面的IWXAPI就是所说的通信类,所有与微信进行通信的工作都是他在做,而他的

生成是由下面的工厂类来完成。旁边的IWXAPIEventHandler接口是需要第三方应用

来实现的,如果我们想处理微信的请求信息或是我们向他发请求后他返回的标识字段。

二、第三方应用与微信通信的时序图

1、向微信发送消息

应用只需要进行一次注册就行了,然后在以后的使用中只需要封装消息,让通信类

发送即可。从前面的类图中可以看到,封装消息的顺序是首先生成需要发送的媒体

对象,然后将媒体对象附加到消息对象中,接着建立请求对象,最后使用通信类发

送即可。代码如下所示:

下面给出几张效果图

程序进入后

注册后载点击发送,微信给出好友列表

选择一个好友,出现附加的消息编辑界面,可不填任何东西

点击share,可返回第三方应用,同时在好友微信中会收到所发消息

这里补充一点就是图中的框框就是微信自己定义的消息对象显示外表,非第三方应用定义,与上一张图对比即可知道。

暂时这个就说到这,好像这个博客一篇扛不住那么多东西啊,剩下的在后面的文章中给出,谢谢。

因为我自己写的demo都在实习结束后丢失了,所以给一个官方的demo下载,如果有不清楚的可以交流,谢谢合作,希望共同学习。

(0)

相关推荐

  • Android开发:微信授权登录与微信分享完全解析

    前言 在移动互联网浪潮中,联网APP已经把单机拍死在沙滩上,很多公司都希望自家应用能够有一套帐号系统,可是许多用户却并不一定买账:我凭啥注册你家应用的帐号?微博,微信,QQ几乎成了每个人手机中的必装应用,于是微信,微博,QQ说了:来来来,你们都可以用我家的帐号登录你家应用,只要你遵循OAuth2.0协议标准就行.于是第三方社交帐号登陆成为了许多新兴应用的选择,由于腾讯官方微信开放平台的在线文档相对最新的SDK有些出入,并且登录相关的文档结构次序有些紊乱,今天就把我的一些经验记录在此,对微信开放平

  • Android 第三方应用接入微信平台研究情况分享(二)

    微信平台开放后倒是挺火的,许多第三方应用都想试下,毕竟可以利用微信建立起来的关系链来拓展自己的应用还是挺不错的,可以节约很多在社交方面的开销,我最近由于实习需要也在研究这个东西,不过发现网上的相关资料还是挺少的,这里把我的整个研究情况给出来,希望可以共同学习. 第三方应用接入微信平台(1) 二.第三方应用与微信通信的时序图 2.接收微信的请求信息 前面四步和之前的"1.向微信发送消息"是一样的,不需要重复执行,这里给出来只是为了 流程的整体性.当我们注册后,应用图标会出现在微信聊天的列

  • Android应用中加入微信分享简单方法

    一.申请你的AppID http://open.weixin.qq.com/ 友情提示:推荐使用eclipse打包软件最后一步的MD5值去申请AppID 二.官网下载libammsdk.jar包 http://open.weixin.qq.com/download/?lang=zh_CN 三.将libammsdk.jar复制到工程的libs目录 四.在需要分享的Activity编写代码 复制代码 代码如下: private IWXAPI wxApi;  //实例化  wxApi = WXAPIF

  • Android实现分享微信好友及出现闪退的解决办法

     1.申请微信APPID 要实现分享到微信的功能,首先要到微信开放平台申请一个APPID.但在申请APPID的时候需要填写一个应用签名和应用包名.需要注意的是包名必须与开发应用时的包名一致,应用签名也必须去掉冒号而且字母为小写. 2.应用签名的获取 开发android应用的人很多,很有可能类名.包名起成了同一个名字,签名这时候就起到区分的作用. 所有的Android应用都必须有数字签名,不存在没有数字签名的应用,包括模拟器运行的.模拟器开发环境,开发时,通过ADB接口上传的程序会自动被签有Deb

  • Android集成微信登录的步骤详解

    一.首先在Application的onCreate中写: // GeneralAppliction.java public static IWXAPI sApi; @Override public void onCreate() { super.onCreate(); sApi = WXEntryActivity.initWeiXin(this, AppConst.WEIXIN_APP_ID); } 二.在需要登录的地方添加: // MainActivity.java WXEntryActivi

  • Android调用微信登陆、分享、支付

    用了微信sdk各种痛苦,感觉比qq sdk调用麻烦多了,回调过于麻烦,还必须要在指定包名下的actvity进行回调,所以我在这里写一篇博客,有这个需求的朋友可以借鉴一下,以后自己别的项目有用到也有个找资料的地方. 一.微信登陆分三个步骤: 1).微信授权登陆   2).根据授权登陆code 获取该用户token   3).根据token获取用户资料   4).接收微信的请求及返回值 如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面3步操作: a. 在你的包名相应目录

  • 详解Android微信登录与分享

    Android 使用微信登录.分享功能 具体的文档详情微信官网上介绍(微信官网文档),本人直接按照项目部署步骤进行讲解: 第一步:申请你的AppID: 第二步:依赖 dependencies { compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:1.0.2' } 或者: dependencies { compile 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:1

  • Android实现使用微信登录第三方APP的方法

    本文实例讲述了Android实现使用微信登录第三方APP的方法.分享给大家供大家参考,具体如下: 使用微信登录APP,免去注册过程,现在已经有很多的类似应用了.集成该功能过程不复杂,但还是有一些地方需要注意的. 开始之前,需要做下面的准备工作. 1.到微信开放平台注册你的APP,并申请开通微信登录的权限.参考这里: https://open.weixin.qq.com// 2.下载Android SDK和签名查看工具,请参考: https://open.weixin.qq.com/cgi-bin

  • Android 实现微信登录详解

    前言 分享到微信朋友圈的功能早已经有了,但微信登录推出并不久,文档写的也并不是很清楚,这里记录分享一下.  正文 一.准备 注册.认证步骤自己来.微信开放平台:https://open.weixin.qq.com 二. 代码 2.1 唤起微信登录 参考官网文档:资源中心/移动应用开放/接入指南/Android接入指南 private IWXAPI mWeixinAPI; private void loginWithWeixin() { if (mWeixinAPI == null) { mWei

  • Android高仿微信聊天界面代码分享

    微信聊天现在非常火,是因其界面漂亮吗,哈哈,也许吧.微信每条消息都带有一个气泡,非常迷人,看起来感觉实现起来非常难,其实并不难.下面小编给大家分享实现代码. 先给大家展示下实现效果图: OK,下面我们来看一下整个小项目的主体结构: 下面是Activity的代码: package com.way.demo; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import jav

随机推荐