Android-SDK接入-YSDK(应用宝1.7.0)
SDK接入-YSDK(应用宝1.7.0)-2021-01-07
大家好,近期在多渠道打包平台,会定期遇到第三方SDK升级,所以很被动的是,我们也要跟随他们的步伐,及时升级。否则将面临第三方开发者站无法过审的问题。之前我整理了 CodeReview 系列的博客,今天开始会抽时间整理第三方SDK接入的系列问题。当然,CodeReview系列的还会进行下去。
应用宝SDK的接入其实还是很繁琐的,各种参数的配置,还需要注意区分沙盒环境的配置和现网环境的配置的不同区别。今天我分享几个典型的问题:
1.沙盒环境和现网环境最容易出现的错误:
MidasPay 的沙盒环境下的 appKey 其实和 qqAppKey的值是相同的,但本质上者俩个东西是独立的,所以在切换到现网环境后,一定要注意,千万别把动qqAppKey。
2.UserLoginRet flag:3100;get login ret failed, on login recrod in db!
其实3100错误在 YSDK 的官网解释是本地票据不可用,引导用户重新登录。同时也给出了检测方案,比如参数核对,包名是否一致、签名是否一致等等。但是大多情况下,大家应该不会出像这些问题。让我们来看下详细的日志:
异常详细信息:
2021-01-06 20:56:03.623 8897-8897/? D/YSDK_DOCTOR: OK-notifyWakeupAsync
2021-01-06 20:56:03.623 8897-8897/? D/YSDK UserModule: mUserListener.OnWakeupNotify
2021-01-06 20:56:03.623 8897-8897/? D/YSDK UserModule: notifyWakeupAsync finished
2021-01-06 20:56:14.992 8897-8971/? D/YSDK b$a.run: TaskDispatcher run
2021-01-06 20:56:14.993 8897-8971/? D/YSDKDuration: Game time Duration :120
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: WX OK-getLoginRecord
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: getWXUserLoginRet
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: UserLoginRet flag:3100;get login ret failed, on login recrod in db!
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: WXUserLoginRet2UserLoginRet
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: WX OK-getLoginRecord
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: getWXUserLoginRet
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: UserLoginRet flag:3100;get login ret failed, on login recrod in db!
2021-01-06 20:56:14.993 8897-8971/? D/YSDK_USER_WX: WXUserLoginRet2UserLoginRet
上面的异常信息发生在微信调起后,然后点击授权后,发现app并没有收到 回调,也就是 YSDK OnLoginNotify 方法没有被回调。
面对第三方SDK接入的问题分析,我有下一几种思路:
1.参数核对。(一定要仔细核对参数是否正确)
2.AndroidManifest.xml配置核对。(尤其需要注意每次的变革文档,要仔细注意其中的新增点和删除点,往往这些是我们升级或者接入SDK时常出现的问题的所在点。)
3.Assets配置和res文件是否缺失。
4.libs依赖是否缺失,当然这个分eclipse接入和gradle接入。
我们再回到上面的异常:
这个异常只会出现在微信登录时,但是QQ登录授权一切正常。所以直观的想,是不是微信ysdk回调用的时候有问题,但是尝试ysdk demo后发现时正常的。所以还是我们接入的问题。顺着我的思路来,参数检查没问题,然后重点关注AndroidManifest.xml的配置。
解决方案:
仔细检查 AndroidManifest.xml,发现 YSDK1.7.0 新增加了
<meta-data android:name="MAIN_ACTIVITY" android:value="${mainActivity}"/>
配置节点,然后问题就出现在这里,${mainActivity} 一定要配置成 app的主activity。此处配置节点错误,直接回导致微信登录授权后,无回调。
备注:
其实如果直接接入YSDK的情况下,应该会很少遇到上面的问题,但是我们的场景比较复杂,我们时聚合SDK,然后通过打包平台来对需要打包的app进行反编译,然后整合第三方SDK(如应用宝)的资源,jar、assests等等。整合的方式是通过桥接层来完成的,所以,这个过程中,首先是会通过demo验证。上述问题的出现就是因为,我们的demo 中的MAIN_ACTIVITY写死了,所以demo 的 QQ和微信都是登录正常的。 但是用正式的 app出ysdk渠道包时,就出现了上面的问题。
Android-SDK接入-YSDK(应用宝1.7.0)的更多相关文章
- Android SDK API (2.2,2.3,3.0)中文版文档
转的一篇.觉得很有用. Android SDK API (2.2,2.3,3.0)中文版文档 地址:http://android.laoguo.org固定连接:http://www.laoguo.or ...
- GoBelieve Android SDK接入备忘
Android SDK版本 目前SDK只支持Android 2.2或以上版本的手机系统. AndroidManifest.xml配置 以下配置可以在IMDemo/AndroidManifest.xml ...
- 百度地图 Android SDK - 新的版本号(v3.2.0)正式上线
百度地图 Android SDK v3.2.0 在版本号 2014 年 11 月 07 日本正式推出工作完成! watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQ ...
- SDK接入(2)之Android Google Play内支付(in-app Billing)接入
SDK接入(2)之Android Google Play内支付(in-app Billing)接入 继上篇SDK接入(1)之Android Facebook SDK接入整理完Facebook接入流程之 ...
- SDK接入(1)之Android Facebook SDK接入
SDK接入(1)之Android Facebook SDK接入 由于游戏已上线,且处于维护阶段,所以有空写写各种SDK接入过程和遇到的问题,也当作一种工作总结.SDK接入主流分为这么几类,登录.支付. ...
- Unity - 接入Android SDK
在网络上,关于Unity与Android如何进行交互,雨松MOMO大神已经有两篇文章简单介绍了如何操作(1)Unity3D研究院之打开Activity与调用JAVA代码传递参数(2)Unity3D研究 ...
- unity工程接入Android sdk后真机测试解锁屏后退出的解决
unity工程接入如91.移动支付等Android sdk后,真机运行尤其是在4.0+以上坏境,往往会出现解锁屏后退出的情况,解决办法如下: 可以在AndroidManifest.xml中所有的con ...
- Android开发SDK接入机智云,智能家居实现APP远程控制多设备
代码地址如下:http://www.demodashi.com/demo/12847.html 一.前言. 此框架只用了一周星期做了出来,因为对机智云的框架比较熟悉了 !期间SDK初始化出了问题,去咨 ...
- 手机游戏渠道SDK接入工具项目分享(二)万事开头难
一般接到任务后程序员们通常都开始着手进行技术调研了,但我这活是项目负责人.还有一大堆事情要先期准备,没人能帮忙. 一.人力配置 考虑的之前已经有一波人搞了大半年,但没有起色,先期也没有太大人力需求,所 ...
随机推荐
- Jmeter添加事务
事务 通过第三方工具或jmeter代理录制的脚本,你会发现会录制很多的子请求.比如当打开首页后, 会继续打开图片,css,其他请求等资源文件. 通常我们会剔除掉这些子请求, 但如果我需要衡量打开一个页 ...
- 第 7 篇 Scrum 冲刺博客
每天举行会议 会议照片: 昨天已完成的工作与今天计划完成的工作及工作中遇到的困难: 成员姓名 昨天完成工作 今天计划完成的工作 工作中遇到的困难 蔡双浩 补充注释,初步查找bug 修改bug 无 陈创 ...
- MySQL必知必会详细总结
一.检索数据 1.检索单个列:SELECT prod_name FROM products; 2.检索多个列:SELECT prod_id,prod_name,prod_price FROM prod ...
- BJOI2016 回转寿司
题目链接 Description 给定一个长度为 \(N\) 的序列 \(a\),和一个区间 \([L, R]\). 求多少连续子序列的权值和在区间内,即满足 \(1 \le i \le j \le ...
- eclipse 搭建连接 activemq
今天我特地写下笔记,希望可以完全掌握这个东西,也希望可以帮助到任何想对学习这个东西的同学. 1.下载activemq压缩包,并解压(如果需要下载请看文章尾部附录) 2.进入bin文件夹,(64位电脑就 ...
- Java并发编程的艺术(五)——线程和线程的状态
线程 什么是线程 操作系统调度的最小单元就是线程,也叫轻量级进程. 为什么要使用多线程 多线程程序能够更有效率地利用多处理器核心. 用户响应时间更快. 方便程序员将程序模型映射到Java提供的多线程编 ...
- mysql 5.7.26 忘记root密码
1.关闭mysql [root@mysql ~]# /etc/init.d/mysqld stopShutting down MySQL.. SUCCESS! 2.修改参数文件/etc/my.cnf ...
- Unity 黑暗之光 笔记 第一章
第一章 设计游戏开始进入场景 1.设置相机视野同步 选中要调整的相机 GameObject - Align With View(快捷键 Ctrl + Shift + F)
- ubuntu20.04 系统初始化与美化
ubuntu20.04 系统初始化与美化 参考博客:https://mp.weixin.qq.com/s/JowjHrs9GMVlolaoaSGiEg 参考博客:https://www.linuxmi ...
- 个人微信公众号搭建Python实现 -个人公众号搭建-运行run方法的编写(14.3.3)
@ 目录 1.主要逻辑 2.代码 关于作者 1.主要逻辑 使用的是flask服务器 就使用一个函数处理请求 第一个是验证服务器,返回微信服务器给的字符串就表示验证成功 第二是要处理微信服务器发送过来的 ...