Android 友盟三方登录、微信新浪分享成功不走回调,androidkotlin 优势
例如 包名是 com.a.b(微信友盟开放平台),那么你这个 activity 应该放在 com.a.b.wxapi 文件夹下
包名为 com.a.b ,这个 activity 放在 com.a.b.view.wxapi 文件夹下 ? ?导致微信回调失败(新浪同理)
友盟分享个人小坑
微信分享:?-error:错误码:2003 错误信息:分享失败----权限验证失败,请检查你的签名以及该平台 Appkey 权限.
在确认签名无误已经已打包的情况下存在缓存问题,需要卸载微信以及你的 APK 从新安
《Android 学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享
装
dispatchMessage(122),这个是用户在本手机已登录,之后又在另一台设备登录,本手机缓存微信已登录状态引起的~
解决方法:点击微信,让手机知道微信处于未登录状态即可
友盟分享成功后不需要导入任何包
友盟分享个人小坑
1、自定义分享面板中 QQ 空间分享(withTargetUrl)url 会失败,但是单独用 new ShareAction((Activity) context).setPlatform(SHARE_MEDIA.QZONE).withTargetUrl(url)就可以使用;
2、新浪微博分享(withTargetUrl)url 会失败,.withText(url)也是可以的。
微信 openid 和 UnionID (多公众号如何判断是否是同一人)区别
通过获取用户基本信息接口,开发者可通过 OpenID 来获取用户基本信息,而如果开发者拥有多个公众号,可使用以下办法通过 UnionID 机制来在多公众号之间进行用户帐号互通。
1. 将多个公众号绑定到同一个微信开放平台(open.weixin.qq.com)帐号下,即同一个 Union 下
2. 通过获取用户基本信息接口中的 UnionID 来区分用户的唯一性,不过需要注意的是:公众号只有在被绑定到微信开放平台帐号下后,才会获取 UnionID。只要是同一个微信开放平台帐号下的公众号,用户的 UnionID 是唯一的。换句话说, 同一用户,对同一个微信开放平台帐号下的不同应用,UnionID 是相同的。
注意两个不同的用户信息
在不同的公众账号下 openid 是不一样的,而他们的 unionid 却是一样的。其他的信息不具有唯一性,没有比较意义。但基本信息是一致的。
这样就知道了关注两个公众账号的其实是同一个人。
unionid 意义:
对于拥有多个账号的企业来说,unionid 可以帮助识别不同公众账号下的用户是否是同一个人。这样在不同账号下对该用户提供的服务可以连续起来了。
还可以去除重复关注的用户数,便于统计真实的关注用户总数。
要第三方登陆的话:
SHARE_MEDIA platform = SHARE_MEDIA.WEIXIN;?
UMShareAPI ?mShareAPI = UMShareAPI.get(this);
mShareAPI.doOauthVerify(this, platform, umAuthListener);
private UMAuthListener umAuthListener = new UMAuthListener() {
@Override
public void onComplete(SHARE_MEDIA platform, int action, Map data) {
data.toString()//返回的用户参数
}
@Override
public void onError(SHARE_MEDIA platform, int action, Throwable t) {
Toast.makeText( getApplicationContext(), "Authorize fail", Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(SHARE_MEDIA platform, int action) {
Toast.makeText( getApplicationContext(), "Authorize cancel", Toast.LENGTH_SHORT).show();
}
};
微信接入文档:
此接口用于获取用户个人信息。开发者可通过 OpenID 来获取用户基本信息。特别需要注意的是,如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的 unionid 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号,用户的 unionid 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid 是相同的。请注意,在用户修改微信头像后,旧的微信头像 URL 将会失效,因此开发者应该自己在获取用户信息后,将头像图片保存下来,避免微信头像 URL 失效后的异常情况。
http 请求方式: GET
https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID
分享读者
作者 2013 年 java 转到 Android 开发,在小厂待过,也去过华为,OPPO 等大厂待过,18 年四月份进了阿里一直到现在。
被人面试过,也面试过很多人。深知大多数初中级 Android 工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长,而且极易碰到天花板技术停滞不前!
我们整理了一份阿里 P7 级别的 Android 架构师全套学习资料,特别适合有 3-5 年以上经验的小伙伴深入学习提升。
主要包括腾讯,以及字节跳动,阿里,华为,小米,等一线互联网公司主流架构技术。
如果你觉得自己学习效率低,缺乏正确的指导,可以一起学习交流!
我们致力打造一个平等,高质量的 Android 交流圈子,不一定能短期就让每个人的技术突飞猛进,但从长远来说,眼光,格局,长远发展的方向才是最重要的。
35 岁中年危机大多是因为被短期的利益牵着走,过早压榨掉了价值,如果能一开始就树立一个正确的长远的职业规划。35 岁后的你只会比周围的人更值钱。
评论