关于头条humeSDK

关于接入头条的应用管理中心分包SDK,在看完说明文档后,下载SDK。 查看了代码后,好家伙。用到的是美团walle(因为我也有使用,所以哪怕有混淆也基本一眼看出来了)。根据以下判断得出的

HumeSDK代码


但是问题来了,美团walle针对的是V2签名的,头条的分包SDK没有限制说明要用V2,继续查看

这部分是跟walle差不多的

查找方法a(context)


不难看出,如果e是flase的话,再次执行c(context), 然后判断d[0],d[1]  有值的话返回,否则返回b.d , b.d = ""

然后到a(a(context))外层的


代码简单,不多解释。

那么现在不难得出, 重点在c(context)这个方法里面了。

再次分析c(context)


查看跟美团相似的


通过关键字UnsupportedEncodingException 在美团walle代码查找,比对,不难发现代码跟PayloadReader几乎一模一样



然后把目光移动到walle拿不到数据的情况下,


JADX反编失败,没问题。我们可以看smali,但是如果经验丰富的话其实也不难得出,V2签名拿不到值,那应该是在V1签名的情况下,V1签名的情况下打包方式了解的话,不需要重签名的话,也就只剩下 

1、往apk的meta-info目录塞文件(写文件夹)

2、往apk 的zip file comment 区域写入数据(写注释)

观察smali代码


看到这个基本能确定了使用的是往apk 的zip file comment 区域写入数据

至此,基本分析完毕。  

剩下的就是修改之前使用到的美团walle的写入方式,然后把之前自己使用的walle代码删除,引入humeSDK,

在读取渠道参数的时候调用humeSDK


然后修改之前的写入


以及打包后的校验


至此基本完成.

PS:上面的基本都是总结,过程中很多验证过程已经省略了




2022年7月27更新

关于部分v1签名,所使用zip注释:


Zip注释


仅供参考

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 13,082评论 2 59
  •   Android系统由于其开源的属性,市场上针对开源代码定制的ROM参差不齐,在系统层面的安全防范和易损性都不一...
    道书简阅读 9,523评论 0 23
  • SDK(Software Development Kit)是软件开发工具包的意思,一般我们将一部分功能单独封装成一...
    散枫阅读 1,857评论 0 2
  • 蓝师傅最近几个月非常忙,很久没更新文章了,惭愧惭愧,距离上一篇技术文章已经是半年前了~ 前几个月负责游戏SDK的开...
    蓝师傅_Android阅读 2,202评论 1 15
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 126,281评论 2 7