美文网首页
iOS逆向之改变喜马拉雅播放界面的布局

iOS逆向之改变喜马拉雅播放界面的布局

作者: 不安分的夏 | 来源:发表于2022-10-12 08:54 被阅读0次

粗略的学习了一点 iOS逆向,跟着课程学习代码层面改变APP界面布局,可用作对于市面上APP的研究。
复盘下如何改变喜马拉雅播放界面的布局。只作为学习和方便自己理解用。
原本打算写总结悬浮在上方的广告位的,可惜在自己第一测试的时候就被我删除了,本来以为卸掉重新安装就能恢复,但是没有成功,只能改变其他的了。

必备条件 一台  已越狱的苹果手机

界面如下 本次要删除的为截图中红色区域

一、首先先给APP 脱壳 

脱壳工具有很多种,我使用的是懒人一键脱壳 creakerXI+
有需要了解的 可以看 之前写的 
iOS逆向之脱壳工具creakerXI+,最简单、最适合新手的脱壳工具
脱壳成功后,通过iFunBox或者爱思助手更具路径找到 IPA文件,并拖拽电脑桌面

修改后缀。将IPA改为ZIP。并解压得到


二、获取APP的 .h文件以及知道我们需要更改布局的class类名

生成相对应的.h文件可以参考IOS逆向之class-dump

终端执行代码如图所示
class-dump  -H  /Users/mc/Desktop/底层原理/Payload/ting.app  -o /Users/mc/Desktop/底层原理/ting_xw

生成的.h文件

通过Reveal查看app的布局,以及我们想更改UI的类名

一个wifi链接,一个是USB链接,我一般选择USB,会快点 记住类名,去我们前面生成的,h文件夹中找到相对应的文件

打开相对应的文件,找到初始化公开方法

需要更改的类为 XMNowPlayingBPicView
需要更改的类的初始方法为  - (id)initWithFrame:(struct CGRect)arg1;


三、编写代码

使用theos生成对应的新的ipa文件(当然先要安装theos)
详情可见链接

打开theos 生成的文件夹,打开Tweak.x文件,简单粗暴的方法就是删掉所有内容,写入

#import <UIKit/UIKit.h>
%hook XMNowPlayingBPicView

- (id)initWithFrame:(struct CGRect)arg1
{
return nil;
}

%end

此处需要导入头文件 #import <UIKit/UIKit.h>,不然无法识别方法中出现的类名

%hook XMNowPlayingBPicView 是我们需要hook的类

- (id)initWithFrame:(struct CGRect)arg1 是我们需要更改的初始化方法。因为我们需要这个界面不显示,所以直接返回空 nil

还需要Makefile中添加UIKit的 framework 的声明

具体可以见
theos tweak 错误请见 ios逆向工具theos tweak make编译错误集合


四、编译-打包-安装

进入生成的文件夹中

编译

make

打包成deb

make package

新生成package文件夹,里面有可安装的deb包

安装 (默认会自动重启SpringBoard)

make install


五、等待重启生效

完成撒花

ps: 后面经过查阅资料知道 我们安装的插件目录为

/Library/MobileSubstrate/DynamicLibraries

相关文章

网友评论

      本文标题:iOS逆向之改变喜马拉雅播放界面的布局

      本文链接:https://www.haomeiwen.com/subject/ddytzrtx.html