实例程序:黑板 点击这里下载
安装到手机之后,打开wifi,可以看到广告了。
首先需要使用apktool进行反编译,然后使用notepad++搜索“connectivity”,会看到:
双击进入文件,可以看到程序调用getsystemservice来获取当前网络连接的状态:
.method public static d(Landroid/content/Context;)Ljava/lang/String; .locals 1 const-string v0, "connectivity" invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object p0 check-cast p0, Landroid/net/ConnectivityManager; invoke-virtual {p0}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo; move-result-object v0 if-nez v0, :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 :cond_0 invoke-virtual {v0}, Landroid/net/NetworkInfo;->getType()I move-result v0 packed-switch v0, :pswitch_data_0 const-string v0, "unknown" goto :goto_0 :pswitch_0 const-string v0, "ed" goto :goto_0 :pswitch_1 const-string v0, "wi" goto :goto_0 :pswitch_data_0 .packed-switch 0x0 :pswitch_0 :pswitch_1 .end packed-switch .end method从上面的代码可以看到,如果没有网络会返回unknown,但为了保险起见,我们让它返回0.
只需要删除
if-nez v0, :cond_0
即可,然后使用apktool进行编译,使用zipalign进行对齐优化,使用testsign进行签名。然后卸载手机中原有的pixlebord,因为两者的签名不一致。再安装crack之后的pixlebord。
这时你会发现就算没有更改layout中的width和height,广告照常没有了。而且,不会占用你的流量了。
破解之后的apk下载地址,请点击这里