MIUI开发版&内测版去广告教程 非Xposed

MIUI开发版&内测版去广告教程 非Xposed-我的技术分享

在以前小米手机可以直接刷xposed框架,然后装几个插件就能PJ主题,去除大部分的广告。单随着miui的发展,修改了android中很多的模块,导致xposed无法兼容。
小米6,小米8之类的设备需要做很多修改才能勉强使用,而且还是残的。所以,写篇文章,教大家如何实现去广告和免费使用主题(部分模块可能无法应用)

1.怎么去除广告

原料:

 

1.首先,你要确保你当前系统不是稳定版的系统,否则无法获取root权限,当然你刷了twrp然后卡刷supersu或者magisk也行。
miui管理root权限入口: 安全中心-> 应用管理-> 权限->Root权限管理

MIUI开发版&内测版去广告教程 非Xposed-我的技术分享

 

 

2.获取root之后,去《酷安》下载《syslock》这款软件,授权root之后点击解锁。解锁完毕后重启系统。

MIUI开发版&内测版去广告教程 非Xposed-我的技术分享

 

3.从酷安下载安装Root Explorer,或者自行选择一款文件管理工具,比如ES文件管理器之类的,然后进入/system/etc目录,使用去广告hosts替换掉原本的hosts。
这个去广告hosts文件是花了很长时间总结完善出来的。能屏蔽掉下载管理,个性主题,app安装界面。。。的广告。但是,miui视频和miui浏览器是搞不定的,我也没想过去搞这2个app的广告,就算是开发小米净化的时候也是。如果没效果,请彻底关闭app后重新打开或者清楚应用缓存。

MIUI开发版&内测版去广告教程 非Xposed-我的技术分享

 

 

2.怎么免费使用主题

想要免费使用主题很简单,选个免费的不就好了么。。。开个玩笑。

下面这很长的一段可不看,主要写了我怎么发现这个方法的

简单说明下,你所下载的所有主题都存放在内置存储的/miui/theme中,当前应用的主题会被复制到/data/system/theme。也就是说系统会从/data/system/theme读取主题信息。
那么我直接替换/data/system/theme目录下的主题文件,是不是就能偷天换日,应用的是免费主题,实际使用的是付费主题呢?
很可惜,因为miui自带的DRM会定时校验主题,所以直接替换/data/system/theme会不定时恢复默认。最开始设置theme目录为444只读权限,但是重启后自动变回了755权限。导致主题替换后还是会不定时回复默认。
然后我在想,怎么才能不让系统能读取这个目录,又不能修改这个目录(只能让我手动改),我修改了SE上下文,然后重启发现se上下文恢复默认了,主题还是默认的,这个时候我在个性主题里随应用了一个已购买的主题
发现主题居然变成了我替换的主题,而不是我刚应用的主题或者默认主题。最最最后,发现theme目录内的文件权限se上下文不会被恢复。现在我主动应用默认主题都不会还原了。




具体的实现办法

一是替换系统默认主题,把你想用的主题覆盖默认主题(路径:/system/media/theme/default),第二是把你想用的主题覆盖/data/system/theme.

获取主题文件的办法:个性主题里点击试用下载你想要的主题,在下载完毕之前点击暂停,停止下载主题。然后点开《下载管理》,在列表中可以看到正在下载的主题,点击主题可以看到下载任务详情,里面有个下载链接,点击复制,然后删除这条下载记录,使用复制的地址新建一个下载任务。下载完毕后文件在内置存储的download目录下,修改文件的扩展名为zip解压即可获取主题内的文件。把这些文件复制到替换目录中。

MIUI开发版&内测版去广告教程 非Xposed-我的技术分享

修改se上下文的方法:
在Root explorer 中选中文件夹,然后在弹出菜单中选择更改SE上下文
MIUI开发版&内测版去广告教程 非Xposed-我的技术分享
MIUI开发版&内测版去广告教程 非Xposed-我的技术分享

最后,主题替换之后,应用下默认主题应该就生效了。