[深度]去除有米内嵌广告
之前看了论坛@arsusanh 的一篇分析文章《内嵌有米广告去除广告和所有权限》,觉得深入到了系统底层去解决这个问题,顿时来了兴致,决心实践一下,手头正好有一个内嵌了有米广告的小工具mylittlesecret.apk,曾经试过改“http://”地址,改“layout_width、layout_height”的值,都没成功。这次按照文章说的方法,删除掉广告必须依赖的几个权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
然后搜索检查以上几个权限的地方,比如在反编译后的文件夹内搜索:
android.permission.READ_PHONE_STATE
其中一行的结果如下:
.method static b(Landroid/content/Context;)Z
.locals 2
:try_start_0
invoke-static {p0}, Lnet/youmi/android/appoffers/bm;->a(Landroid/content/Context;)I
move-result v0
const/4 v1, 0x4
if-lt v0, v1, :cond_0
const-string v0, "android.permission.WRITE_EXTERNAL_STORAGE"
invoke-static {p0, v0}, Lnet/youmi/android/appoffers/bm;->a(Landroid/content/Context;Ljava/lang/String;)Z
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
move-result v0
:goto_0
return v0
:cond_0
const/4 v0, 0x1
goto :goto_0
:catch_0
move-exception v0
const/4 v0, 0x0
goto :goto_0
.end method
按照文章所说的方法,我将const/4 v0, 0x0 改为 const/4 v0,0x1来伪造达到权限,全部作了如此修改之后,重新建立apk安装后还是会出现有米广告的界面。至此我认为这个安卓文件植入的有米广告具有深入研究的价值,所以发出来供大家研究揣摩,更希望有从事开发工作的技术人员帮忙全面分析一下,究竟这个文件中的有米广告应该怎么修改才能彻底的去掉。同时把修改成功后的文件发上来学习参考。下面是mylittlesecret.apk的下载地址和出现的广告界面(安装后不会马上出现广告,一般在打开界面停留几分钟之后跳出):
http://pan.baidu.com/s/1pJ7Xygr
本文提供的apk仅为研究程序本身,如喜欢这款软件请联系作者获取最新版本或捐助开发者。
