Android-studio原生微信第三方登录、分享

第一步:注册开发者账号,—->微信开放平台https://open.weixin.qq.com/

第二步:创建一个应用,并通过审核(其中需要填写项目中的Demo的包名以及应用签名)
tip1:包名为AndroidManifest.xml下的package
这里写图片描述
tip2:签名可以使用签名工具进行签名,签名之前必须先进行打包操作

Android-studio原生微信第三方登录、分享_第1张图片
选择你想要打包的应用
Android-studio原生微信第三方登录、分享_第2张图片
如果有打包文件的话直接选择,如果没有的话直接新建一个
Android-studio原生微信第三方登录、分享_第3张图片
打包成功后运行release包文件
再将打包apk装入手机中,进行签名。
签名获取结束后在微信开放平台创建应用中输入包名,和签名。
等待审核,一般为5-6天左右。
审核成功后可以申请一些微信功能,譬如登录,分享,支付。

第三步:新建一个Demo,必须和你在微信开放平台创建的应用名保持一致
配置权限:




微信回调界面配置:

<activity
            android:name=".wxapi.WXEntryActivity"
            android:exported="true"
            android:label="@string/app_name"
            android:launchMode="singleTop">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
                <data android:scheme="appid" />
            intent-filter>
        activity>
    application>
<data android:scheme="appid" />------>data标签中的appid即为你在微信开放平台创建应用时的appid,填入即可。

一定要注意包名,包名的格式一定要是以包名的.wxapi的格式
.wxapi包下新建WXEntryActivity类
Android-studio原生微信第三方登录、分享_第4张图片
导入微信sdk
这里写图片描述
在此类下IWXAPIEventHanlder接口
这里写图片描述

第四步开始编程了,依据微信sdk的文档api,来实现微信的登录以及分享
功能。

首先定义微信接口和appid:
Android-studio原生微信第三方登录、分享_第5张图片
在此我定义了两个Button按钮来分别实现登录、分享。
无论登录授权还是分享,都必须得先注册到微信
Android-studio原生微信第三方登录、分享_第6张图片
然后登录

Android-studio原生微信第三方登录、分享_第7张图片
req.state可以为项目的包名
接下来就该IWXAPIEventHanlder发挥作用了
Android-studio原生微信第三方登录、分享_第8张图片
实现这两个接口必须得实现着两个构造方法
当你调用mLogin方法时会跳转到微信登录授权页面
Android-studio原生微信第三方登录、分享_第9张图片

点击确认登录后会回调onResp(BaseResp baseResp)方法
Android-studio原生微信第三方登录、分享_第10张图片
依据文档在try{ }中获取code信息,详情查看https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419317851&token=&lang=zh_CN

使用网络框架加载微信授权数据
Android-studio原生微信第三方登录、分享_第11张图片

然后就会出现授权成功的字样,之后的事情就不用我们操心了。

接下来是分享代码片段
Android-studio原生微信第三方登录、分享_第12张图片
此上我只是以分享文本为例。

假如不成功的话可能是:
1.包名错误,无法产生微信回调
2.一定要确认是debug包还是release包,区分开来
3.仔细看下微信开发文档登录和分享回调可能会产生冲突,需进行下判断。

接下来说说分享链接和图片,图片是重中之重,相信有很多网友会在设置解析网络图片的时候出错。
直接上代码,看不懂就不是我的问题了,我也是在翻遍了无数帖子之后发现没卵用,最后看了看源码,发现微信分享图片的大小不可以超过400,否则无法执行方法,具体细节,我也没有深究,让网友们自己去发掘吧!

Android-studio原生微信第三方登录、分享_第13张图片

认真理解以下两个代码块,相信你会对微信分享有进一步的了解,坑就在这两个代码块中!!

这里写图片描述
注意图片尺寸,注意图片尺寸,注意图片尺寸,重要的事情说三遍!
这里写图片描述

接下来判断一下分享场景就可以了。原生分享已经完善,登录的坑已经踩过,随后再补发,希望广大网友支持一下,绕坑而过!

你可能感兴趣的:(移动开发)