Android微信之登录授权(集成官方SDK-Eclipse)

推荐使用ShareSDK实现微信登录授权:

文章参考:http://www.jianshu.com/p/2ea8ae0618ef

官方SDK有点繁琐,但是可以学习了解下官方SDK是如何实现的

一.前期准备

1.帐号申请
https://open.weixin.qq.com/
首先登录微信开放平台,注册一个帐号
2.提交APP审核
为什么必须提交app审核呢?

请看下图微信开放平台接口使用权限
不提交审核,根本没法用,无语了。。。
提交需要准备:应用名称,应用简介,应用图片(2828,108108),应用官网
android版本:需要提供应用签名,应用包名
具体参考官网,安装步骤一步步来
这里需要注意几点:
第一:关于应用签名,需要把你的app打包成APK安装到手机,然后通过签名工具,生成对应的签名
不得不说官方的签名工具真的是给人用的吗?

官方签名工具截图

我还是推荐使用新浪的签名工具吧!

扫码安装

新浪签名工具截图

第二:如果每次打包都是采用相关的证书,那么生成的签名是一样的!!!
下面就可以提交审核了,审核周期官方说是7天,一般1-2天就可以审核通过了!


审核通过

APPID还是非常有用的,后面会用到。
3.手机安装微信客户端
补充:由于本Demo只是简单使用了文本分享API,如果你需要使用微信登录API,那么就需要进行开发者认证(具体认证流程请参考官网),非政府,事业单位,每年300,政府事业单位认证免费。
至此,前期所有的准备工作完成,下面进行代码的整合。

二.整合说明

1.导入SDK Jar包

sdk下载地址:
https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419319167&lang=zh_CN

网页截图

导入到项目中

Paste_Image.png

2.添加必要的权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

3.向微信APP注册你的id
要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的id。

Paste_Image.png

4.发起登录授权

final SendAuth.Req req  = new SendAuth.Req();
req.scope     = "snsapi_userinfo";
req.state     = "wechat_sdk_demo_test";
api.sendReq(req);

5.处理分享成功后的回调
如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面操作
a.在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity

Paste_Image.png

特别说明:包名必须和中间平台里填写的包名保持一直,否则回调失败
特别说明:包名必须和中间平台里填写的包名保持一直,否则回调失败
特别说明:包名必须和中间平台里填写的包名保持一直,否则回调失败
并在manifest文件里面加上exported属性,设置为true,例如:

    <!-- 
     将WXEntryActivity设置为透明 android:theme="@android:style/Theme.Translucent"
     这样就解决了,微信分享成功后,跳转到指定WXEntryActivity,显示微信分享信息,
     而给用户视觉效果就在当前界面。 
     -->

    <activity
    android:name="wxapi.WXEntryActivity"
    android:exported="true"
    android:theme="@android:style/Theme.Translucent" >
    </activity>

b. 实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法

如何获取token:有2种方法


Paste_Image.png

特别说明

现在最新的官方jar包好像不支持获得code了。直接就能得到token,省略了获取code 这一步。
所以方法不变,大家取的时候直接resp.token就行了。不用再去取code了。但是,但是,这样直接拿到token了好像按照官方文档上的方法就不能获得openid了。我也没尝试有什么新的方法,反正是jar包更新了但是文档还没更新,大家弄不成功的话可以先用旧的jar和上面获取code的方法。

旧版SDK下载:
http://download.csdn.net/detail/qq247890212/8401389

注意

如果需要混淆代码,为了保证sdk的正常使用,需要在proguard.cfg加上下面两行配置:
-keep class com.tencent.mm.sdk.** {
*;
}

问题汇总1:

问题汇总2:通过Eclipse安装APK,无法直接测试

建议直接生成APK后,进行测试
至此,你已经能使用微信Android开发工具包的API内容了。如果想更详细了解每个API函数的用法,请查阅 Android 平台参考手册 或自行下载阅读微信SDK Sample Demo源码。

源码

https://github.com/andli0626/wx_authlogin_eclipse.git

效果图

Paste_Image.png

通过android Studio实现,参考源码

http://download.csdn.net/download/sagittarius1988/9244093

参数资料:

微信授权登陆接入第三方App(步骤总结)
http://blog.csdn.net/qq247890212/article/details/40822481

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=1417751808&token=&lang=zh_CN
http://www.bkjia.com/Androidjc/979960.html
http://androidmaster.iteye.com/blog/1887876

image
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,233评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,013评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,030评论 0 241
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,827评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,221评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,542评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,814评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,513评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,225评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,497评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,998评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,342评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,986评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,812评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,560评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,461评论 2 266

推荐阅读更多精彩内容