iOS14适配——查找那些SDK使用剪切板

iOS14适配一查找那些SDK使用剪切板

背景,iOS14公测版发出之后,我们app出现了从后台唤起会弹出 读取剪切板的 提示,安全要求要赶紧查,全局搜索了我们APP,发现并没有读取剪切板的代码,比窦娥还冤,只能是第三方SDK的问题了,但是项目里集成了十几个第三方SDK,一个个排查删除,万一两个SDK都有,这个排列组合可能性就太多了。

脑壳疼了好几天,求助万能的V友和群友,然后找到了好的办法

  • 步骤1: 用Xcode的Symbolic breakpoint,调试[UIPasteboard generalPasteboard],按照重现步骤,例如,我们APP是从后台唤起来会有这个提示,就打断点,然后走这个流程。
Screen Shot 2020-07-12 at 11.30.17 AM.png
Screen Shot 2020-07-12 at 11.30.42 AM.png
  • 步骤2: 断点会停在调用到这个方法的地方,然后上下查看,如果还不能确认是哪个SDK的话,就单步向下走几步,然后就会出现调用方
0317730D3162C939A663AE043F366D05.png
Screen Shot 2020-07-12 at 10.49.52 AM.png
  • 步骤3:具体调用的类已经暴露了之后,怎么确定这是哪个SDK的呢?
    在工程目录中使用命令(来自群友的帮助):
find . -type f | grep -e ".framework" | xargs grep -s UIPasteboard
find . -type f | grep -e ".a" | xargs grep -s AUPasteboard

然后会出现


WeChatcd3553691c3162a7f264d943c75906c6.png

可以看到这个类是支付宝支付的SDK,然后删除SDK后,先看复现步骤好了没,如果没有好,再重复这个流程,确认还有没有别的SDK也有这么调用的就可以了。

参考

请教一下大家,关于 iOS14 读取剪切板的问题

你可能感兴趣的:(iOS14适配——查找那些SDK使用剪切板)