本帖最后由 阿布很拽 于 2018-9-10 15:29 编辑
求评分,求热心 哈哈
注册吾爱很多年了,终于自己也可以发布原创帖子了。嘿嘿
很喜欢今日头条这个App,但是又很反感他的广告和置顶,那就动起手来优化吧。
个人网站 十一同学 欢迎大佬点评 只有浏览 没评价 好凄惨
1.去除启动页广告
2.去除列表推荐广告
3.去除评论顶部推荐广告
4.去除烦人的置顶
越狱的手机,iOS 9.3.1
dumpdecrypted.dylib ipa脱壳
class-dump 导出头文件
Thor 手机上抓包
Reveal Mac上界面布局分析
抓包
利用Thor软件,抓一个列表返回的json数据,分析特定的字符串。
通过分析返回的数据,我们可以知道,“stick_label:'置顶'”。暂时记录,留着后面用。
去除启动页广告
用Reveal分析app布局,由于广告闪屏跳转太快,未能捕捉到完整的页面,不过没关系。通过最底层的红色view,我们可以找到这是一个由TTAdSplashControllerView展示的视图,也就是启动页广告。
我们在头文件中看看TTAdSplashControllerView有什么方法。图中方框标记的,即为当前广告视图的初始化方法,我们利用Theos去hook该方法。
另外,我们也将广告视图上面的子视图的show方法hook掉。
去除评论顶部广告
每篇文章的评论顶部都有一个推广App的广告,我们通过Reveal分析可以知道它的类是ExploreDetailADContainerView。方法和去除启动页广告一样,就是直接去除他的数据,这样就不会显示广告。但是这种做法的前提是开发这个App的人员对数据做了判断,如果他没有判断,那App肯定会崩溃的,我之所以敢肯定他做了判断是因为,有的评论页面有广告,有的评论页面没广告,因此他肯定做了判断的。
可以清楚的看到一个属性TTAdDetailViewModel *viewModel;,我们hook它的set方法。
去除置顶咨询和列表广告
上面两个去除都很简单,我们找到他的初始化方法或者启动数据模型,直接干掉就可以了。但是这个置顶的咨询和列表中的广告就不一样了。他是在数据源里面,因此我们找到数据源,删除数据源中的广告模型即可。这样既不影响App的正常使用,而且也非常便捷。
我们找到当前列表的dataSource,为ExploreMixedListBaseView,但是在ExploreMixedListBaseView的头文件里面没有看到任何数据和数据模型之类的,因此推测有一个专门管理数据的类,通过各个属性名的直接排除,我们看到 我们直接查看ExploreFetchListManager 的头文件
在ExploreFetchListManager的头文件中,我们看到一个数组,那我们直接打印这个数据,看看运行的时候,输出的是啥。
不难发现,这就是我们要找的数据。查看ExploreOrderedData的头文件,也不难发现我们之前抓包提取的特殊参数
到此,我们找到数据了,我们只要对数据进行判断,处理,然后重新返还给他即可
到此,所有的广告,都被去除了。
deb插件下载
上面这个是去广告的deb插件,越狱手机直接安装即可。安装完,重新打开软件,还你一个清爽的头条。
个人网站 十一同学 欢迎点评 只有浏览量,一直没评论??