android 微信登录 友盟 v6.9.0

友盟最新版本6.9.0集成微信登录
首先说一下集成的步骤
1.到微信开发者平台注册软件并获取软件的AppID和AppSecret
2 创建签名文件,配置签名。并在微信开发者平台注册签名信息。
3.创建友盟开发者账号,创建应用,获取appkey
4.下载微信登录相关的sdk,并集成到项目中
5.添加微信回调activity
6.配置Android Manifest XML,注册微信回调activity,添加权限
7.在application中初始化,配置微信平台对应的软件信息(AppID和AppSecret)
8.配置签名。
完成上面的这些步骤后就实现友盟微信登录了

  • 一 微信开发者平台注册软件
    首先,到这里注册微信开发者账号,并获取开发者资质(花费300元),还要等待审核
    其次创建应用,这里需要准备很多东西,要求的还特别细致,应用提交后还要等待审核。如下图
    这里写图片描述
    最后审核通过就能看到AppID和AppSecret了,如下图:
    这里写图片描述
    获取到的AppSecret一定要记录下来,平台不会再显示,所以如果你忘记了,平台是看不到的,只能重置。切记!!
  • 二 创建签名文件,配置签名。并在微信开发者平台注册签名信息。
    签名文件的创建很简单,可以通过Androidstudio创建,也可以通过第三方工具创建,创建完成后,将签名文件放入项目中
    这里写图片描述

在gradle中配置

   signingConfigs {
        release {
            storeFile file('蔬菜配送系统.keystore')
            storePassword 'SCPSXT_Beta_CN_MB_V1.0'
            keyAlias '蔬菜配送系统'
            keyPassword 'SCPSXT_Beta_CN_MB_V1.0'
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
        debug {
            signingConfig signingConfigs.release
        }
    }

微信开发者平台注册签名信息。 这个地方一定要注意 有坑!!!
这里写图片描述

应用签名:根据项目的应用包名和编译使用的keystore,可由签名工具生成一个32位的md5串,在调试的手机上安装签名工具后,运行可生成应用签名串,如图8.9所示,绿色串即应用签名。签名工具下载地址https://open.weixin.qq.com/zh_CN/htmledition/res/dev/download/sdk/Gen_Signature_Android.apk
这个地方配置不好,容易出现下列异常

java.lang.Throwable: 错误码:2002 错误信息:授权失败----[SA10001]权限验证失败,请检查你的签名以及该平台Appkey权限.
解决方案:https://developer.umeng.com/docs/66632/detail/66787?um_channel=sdk

附一张出现上述问题的解决图
这里写图片描述

获取软件签名的截图:
这里写图片描述

图中圈住的就是应用签名信息,将这个数据添加到微信开发平台上,一个也不能错,如果错了,改正后,软件可能也有问题,可能报2002错误。需要微信清除缓存才可解决,所以一定要认真

  • 三.如果你没有友盟的开发者账号,就到这里注册。如果有开发者账号就到这里创建你的应用并得到appkey。
    创建应用
    这里写图片描述
    注意:后台的应用名与实际应用名和包名无关,建议命名为应用名+平台(iOS/Android)。

  • 四.下载微信登录相关的sdk,并集成到项目中下载地址,把相关的文件放到自己项目中对应的位置,我会将demo上传到github上,不用下载这些SDK,直接在我项目里拷贝就行了

  • 五.添加微信回调activity
    这个地方有坑,请注意!!!
    包名目录下,一定要在包名路径下。创建wxapi文件夹,新建一个名为WXEntryActivity的activity继承WXCallbackActivity。
    创建完目录结构是这样的
    这里写图片描述

  • 六 配置Android Manifest XML,添加权限,注册微信回调activity

需要添加的权限

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

注册微信回调activity

<activity
            android:name=".wxapi.WXEntryActivity"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:exported="true"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />

这个WXEntryActivity在清单中的配置必须和上面的一模一样

  • 七.在application中初始化,配置微信平台对应的软件信息(AppID和AppSecret)

在Application中调用友盟的初始化接口:

 //初始化组件化基础库, 统计SDK/推送SDK/分享SDK都必须调用此初始化接口
        UMConfigure.init(this, "5b3a1f97a40fa369ea000044", 
                "", UMConfigure.DEVICE_TYPE_PHONE, "");

具体参数介绍
这里写图片描述

配置微信平台对应的软件信息(AppID和AppSecret)

 {
        PlatformConfig.setWeixin("wxdfeeca73484a5f0a", "cdba5aeeac2ea12d0072c79212a44233");
    }

第一个参数是软件在微信开放平台注册后产生的AppID,第二个参数是AppSecret,关于这两个参数上面有介绍

大功告成,下面开始调用微信的api实现微信授权,并获取微信的信息

   UMShareAPI.get(this).getPlatformInfo(this, SHARE_MEDIA.WEIXIN, authListener);

下面是事件的监听

   UMAuthListener authListener = new UMAuthListener() {
        @Override
        public void onStart(SHARE_MEDIA platform) {
            Toast.makeText(LoginActivity.this, "开始", Toast.LENGTH_LONG).show();
        }

        @Override
        public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {
            String unionid = data.get("unionid");
            showToast(unionid);
        }

        @Override
        public void onError(SHARE_MEDIA platform, int action, Throwable t) {
            Toast.makeText(LoginActivity.this, "失败:" + t.getMessage(), Toast.LENGTH_LONG).show();
        }

        @Override
        public void onCancel(SHARE_MEDIA platform, int action) {
            Toast.makeText(LoginActivity.this, "取消了", Toast.LENGTH_LONG).show();
        }
    };

参考demo地址:https://github.com/DevelopWb/YoumengLoadWeixin.git

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值