首先给大家展示下报错

Error Domain=UMSocialPlatformErrorDomain Code=2002 "(null)" UserInfo={message=appKey is nil}

在大家看看我是如何解决的:

友盟官方文档上这样一个方法“ confitUShareSettings”

func confitUShareSettings() {

UMSocialGlobal.shareInstance().isUsingHttpsWhenShareContent = false

//设置微信的appkey和appsecret

UMSocialManager.default().setPlaform(UMSocialPlatformType.wechatSession, appKey: wxAppKey, appSecret: wxAppSecret, redirectURL: XQURLString)

//设置QQ的APPkey和appsecret

UMSocialManager.default().setPlaform(UMSocialPlatformType.QQ, appKey: QQAppKey, appSecret: nil, redirectURL: XQURLString)

//设置支付宝APPkey和appsecret

UMSocialManager.default().setPlaform(UMSocialPlatformType.alipaySession, appKey: alipayAppKey, appSecret: "", redirectURL: XQURLString)

}

可惜我忘了调用。。。

屏幕快照 2018-08-25 下午12.25.04.png

调用下,就ok了。如果你也出现了类型的问题,可能是以下方法没有调用。

UMSocialManager.default().setPlaform(UMSocialPlatformType.wechatSession, appKey: wxAppKey, appSecret: wxAppSecret, redirectURL: XQURLString)

在此对友盟的集成做个总结:

1、 设置URL Types

屏幕快照 2018-08-25 下午12.30.58.png

2、设置Info.plist文件

屏幕快照 2018-08-25 下午12.35.13.png

3、使用友盟的AppKey初始化服务

UMConfigure.initWithAppkey(UMKey, channel: "App Store")

4、使用在各平台申请的Appkey初始化对应平台的服务

func confitUShareSettings() {

UMSocialGlobal.shareInstance().isUsingHttpsWhenShareContent = false

//设置微信的appkey和appsecret

UMSocialManager.default().setPlaform(UMSocialPlatformType.wechatSession, appKey: wxAppKey, appSecret: wxAppSecret, redirectURL: XQURLString)

//设置QQ的APPkey和appsecret

UMSocialManager.default().setPlaform(UMSocialPlatformType.QQ, appKey: QQAppKey, appSecret: nil, redirectURL: XQURLString)

//设置支付宝APPkey和appsecret

UMSocialManager.default().setPlaform(UMSocialPlatformType.alipaySession, appKey: alipayAppKey, appSecret: "", redirectURL: XQURLString)

}

5、在需要的地方调用获取第三方平台信息的方法:

UMSocialManager.default().getUserInfo(with: platformType, currentViewController: nil) { (result, error) in

guard error == nil else{

let nsError = error! as NSError

print("错误是什么:\(nsError)")

let dic = nsError.userInfo

// print("错误:\(error?.localizedDescription)")

let ac = UIAlertController.init(title: "第三方登录失败", message: dic["message"] as? String, preferredStyle: UIAlertControllerStyle.alert)

ac.addAction(UIAlertAction.init(title: "确定", style: UIAlertActionStyle.default, handler: nil))

self.present(ac, animated: true, completion: nil)

return

}

let res = result as! UMSocialUserInfoResponse

//第三方登录信息

print("uid"+res.uid)

print("openid:"+res.openid)

print("accessToken:"+res.accessToken)

print("refreshToken:"+res.refreshToken)

print("expiration:\(res.expiration)")

//用户数据

print("name:"+res.name)

print("iconurl:"+res.iconurl)

print("gender:"+res.unionGender)

//第三方平台SDK原始数据

print("originalResponse:\(res.originalResponse)")

}

}

注:上述方法我封装在下述方法中:

func getUserInfoForPlatform(platformType:UMSocialPlatformType) {

UMSocialManager.default().getUserInfo(with: platformType, currentViewController: nil) { (result, error) in

guard error == nil else{

let nsError = error! as NSError

print("错误是什么:\(nsError)")

let dic = nsError.userInfo

// print("错误:\(error?.localizedDescription)")

let ac = UIAlertController.init(title: "第三方登录失败", message: dic["message"] as? String, preferredStyle: UIAlertControllerStyle.alert)

ac.addAction(UIAlertAction.init(title: "确定", style: UIAlertActionStyle.default, handler: nil))

self.present(ac, animated: true, completion: nil)

return

}

let res = result as! UMSocialUserInfoResponse

//第三方登录信息

print("uid"+res.uid)

print("openid:"+res.openid)

print("accessToken:"+res.accessToken)

print("refreshToken:"+res.refreshToken)

print("expiration:\(res.expiration)")

//用户数据

print("name:"+res.name)

print("iconurl:"+res.iconurl)

print("gender:"+res.unionGender)

//第三方平台SDK原始数据

print("originalResponse:\(res.originalResponse)")

}

}

android 友盟微信授权2002,友盟 2002错误相关推荐

  1. android友盟微信授权登录清除,【转载】Android友盟SDK微信授权登录接入

    微信授权登录接入需要先到微信开放平台申请好应用的APPID,交纳300大洋费用得到授权登录权限后才能使用,此处不再赘述. 接入的两种方式 -- 微信SDK接入:使用微信官方SDK接入,需要分" ...

  2. android友盟微信授权登录清除,Android 微信,友盟授权;

    //授权 private void authorization(SHARE_MEDIA share_media) { final UMShareConfig config = new UMShareC ...

  3. Android第三方app 微信授权登录

    首先呢,说到第三方,大家应该首先想到的是: 1.appid (第三方给的) 2.密钥 (第三方给的) 3.签名文件 4.包名 这4样,往往决定着的是第三方好用不好用!!! 所以呢- 1.申请你的App ...

  4. 微信授权,重定向两次

    做微信支付的时候,需要微信授权拿openId 大概流程就是,把用户重定向到微信一个地址,然后微信带着code重定向回来,然后拿code换用户的openId 这期间发生了一件比较有意思的事情,andro ...

  5. qq分享提示设备未授权_友盟微信、QQ等分享提示未验证应用配置

    产品和客服反馈微信分享提示未验证,让我们排查原因,看了微信文档才知道,由于苹果iOS 13系统版本安全升级,为此WechatOpenSDK在1.8.6版本进行了适配.1.8.6版本支持Universa ...

  6. xcode 配置wechat_友盟微信、QQ等分享提示未验证应用配置

    确认微信App版本是否支持Universal Links 配置我们App的苹果Universal Links 请按照以下步骤将您的应用和网站相关联以获取: 将添加Associated Domains ...

  7. 微信 支付宝支付 友盟登录分享 统计

    概述 GZPayAndShareDemo主要集成了支付宝 微信 支付功能,友盟社会化分享 统计!从此支付 分享 统计 不再是梦! 详细 代码下载:http://www.demodashi.com/de ...

  8. iOS 关于友盟微信分享成功回调不走的问题

    不得不说,友盟的客服以及论坛服务很不周到,特别是最近要获取友盟微信分享是否成功的状态,在分享回调里根本拿不到,回调根本不走.于是查看友盟论坛,提问的人很多,解答的完全没有,再咨询在线客服,回复答不到点 ...

  9. 友盟统计封装android,Android Studio第十五期 - 友盟统计集成

    然后是注意实例化到Application中的代码:private void setUMEngAnalsys() { //开启Debug模式 上线可关闭 MobclickAgent.setDebugMo ...

最新文章

  1. 堆排序算法实现思想个人理解
  2. MPLS *** 高级教程(张洋讲解演示版)
  3. js 字符串截取(包含中英文)
  4. 链表排序(C语言)选择排序
  5. Mahout各种推荐器的主要特点(转)
  6. 关于抠图的一些文章方法收集
  7. 获取笔记本的SHA1的值。
  8. CLR_via_C#.3rd 翻译[25.9 线程调度和优先权]
  9. MicroProfile变成了Eclipse MicroProfile
  10. (4)数据结构-线性表补充
  11. 计算机组成cpu性能公式,2020考研计算机组成原理知识点:计算机性能指标
  12. linux脚本下载,linux_脚本编写基础
  13. linux密码安全加固文件,LINUX安全加固方案
  14. echarts地图各种点位实现
  15. php匹配ubb,UBB类 php UBB 解析实现代码
  16. usb扩展坞同时接键盘鼠标_雷柏XD200 USB-C 10口扩展坞分线转换器详解
  17. 3D MAX 安装中的一些问题 一直初始化、闪退
  18. 利用决策树对微信公众号文本进行分类
  19. CGAL Cookbook --CGAL简介
  20. 友盟推送注册成功但是收不到推送

热门文章

  1. 数字孪生技术助力高炉数字化建设的可行性
  2. Leetcode 476. Number Complement 补数 解题报告
  3. 使用_findfirst和_findnext遍历目录
  4. 银联IC卡读卡流程详解--读卡器与卡交互指令
  5. 小白的基因测序学习之路——#001有关基因的那些事
  6. K8s安全管理:认证、授权、准入控制
  7. 前端面试相关题(简易)
  8. linux eclipse插件安装,Linux 下 EclipseME 插件的安装步骤
  9. 计算机组成原理 | 第八章《计算机的外围设备》、第九章《输入/输出系统》 学习笔记
  10. C语言中typedef的用法