YSDK 系列问题之如何获取渠道号ChannelID
来源:互联网 发布:淘宝客服自我评价 编辑:程序博客网 时间:2024/05/24 02:07
转载请标明出处:
http://blog.csdn.net/DJY1992/article/details/77649400
本文出自:【奥特曼超人的博客】
不懂的可以点击加入 安卓移动技术精英群:
最近有个游戏不兼容YSDK1.2.2 ,而且由于业务需求也需要升级新的YSDK了,在新的版本上也需要channel的需求(投放市场:广点通、微信平台等等…),刚好‘腾讯青青’发了1.3.5版本过来, 那就顺便记录下大家可能需要的解决方案,因为投放市场的包也需要这个channelID,同时投放文档也没有说明,当时很郁闷。
YSDK的WIKI: http://wiki.open.qq.com/wiki/YSDK%E5%BF%AB%E9%80%9F%E6%8E%A5%E5%85%A5
目前YSDK的版本:
下载地址:http://wiki.open.qq.com/wiki/YSDK%E4%B8%8B%E8%BD%BD
大部分都在使用中的版本是1.3.2,顺带一提,MSDK已经完全废弃。接过腾讯SDK的同学应该终生难忘,一大堆坑,经常遇到的如缓存问题、一次性登录问题、支付问题等等…
接了几年SDK,踩坑,踩雷,楼主估计已经可以去帮你们解决ALL-IN的问题了。
这里只是简单的记录下YSDK的系列问题,本篇只要是讲市场投放时的channelID如何加入,《YSDK 系列问题之如何获取渠道号ChannelID》,因为wiki上没有说明,大家可以看这里的解决方案。
新版的SDK里是使用了YSDKApi这个类,如下图所示,直接 getChannelID是获取的,怎么也找不到set的方法。
从这个类进入查看源码中翻看它可以发现:
public static String getChannelId() { try { Class var0 = Class.forName("com.tencent.ysdk.api.YSDKInnerApi"); Method var1 = var0.getMethod("getChannelId", new Class[0]); return (String)var1.invoke((Object)null, new Object[0]); } catch (Exception var2) { var2.printStackTrace(); return ""; } }
它是调用了 YSDKInnerApi
这个类,一层一层往下找,我们找到了package com.tencent.ysdk.framework;
这里的a类,混淆过,值得注意的是,它有个私有的构造,
private a() { this.f = com.tencent.ysdk.framework.common.a.a; Class var10000 = Fix.class; }
不影响,我们要的是a字段和var1,这个就是我们要的渠道号,继续往下走。
private String e() { String var1 = "CHANNEL"; String var2 = "channel.ini"; com.tencent.ysdk.framework.verification.a.e(); InputStream var3 = null; String var4 = ""; try { var3 = f.a().f().getResources().getAssets().open(var2); Properties var5 = new Properties(); var5.load(var3); var4 = var5.getProperty(var1, ""); } catch (IOException var14) { var14.printStackTrace(); c.c("YSDKGame", "CHANNEL ID ERROR"); var4 = ""; } finally { if(var3 != null) { try { var3.close(); } catch (Exception var13) { var13.printStackTrace(); } } } return var4; }
可以看出,这里读取的是配置文件channel.ini文件中 ,Demo中是没有这个文件的,我们直接放进去看看效果,我们配置的放在第一行CHANNEL=101即可。
结果显示出来了,result=101。
|| 版权声明:本文为博主杜锦阳原创文章,转载请注明出处。
- YSDK 系列问题之如何获取渠道号ChannelID
- 获取渠道号
- Android 如何获取 umeng 的 渠道信息
- 获取androidmanifest中的渠道号
- App获取版本号、渠道号
- unity3d如何快速接入渠道SDK之Unity篇
- unity3d如何快速接入渠道SDK之Unity篇
- unity3d游戏开发之如何快速接入渠道SDK
- Android自动化打包之如何快速生成渠道包
- 获取渠道名
- android:获取渠道名
- 代码获取渠道名
- MP4系列之--如何获取mp4文件信息
- Android系列之如何获取手机系统的联系人
- 获取CPS,CPA,CPD等非SDK联运渠道的逻辑渠道号
- 如何打开渠道?
- Android(安卓),如何查看App渠道号?
- Android如何自动校验版本号,渠道号,签名和混淆
- 二叉树的下一个节点
- 嵌入式系统硬件组成-3.3
- <context:component-scan>使用说明
- 如何利用Javascript发送GET/POST请求
- elasticsearch min_hash 应用分析
- YSDK 系列问题之如何获取渠道号ChannelID
- POI生成word
- cow(写时拷贝)技术
- SQL语句执行顺序
- Flask学习(四)MTV模式简介
- ConcurrentHashMap源码解读
- Nim游戏·改(博弈论)
- Java笔记(二):垃圾收集
- poj 1111 Image Perimeters(dfs)