淡然出尘 发表于 2014-6-23 09:14

忍者突袭(Ninja Rush Deluxe) 去广告过程

本帖最后由 淡然出尘 于 2014-6-23 14:02 编辑

帮校友推介一个原创关于金融方面的视频:"河南金融界访谈——河南财经政法大学金融学院自制节目"http://blog.sina.com.cn/s/blog_96111bab0101kbdw.html
这个游戏的可玩性比较高但是广告有点多,不人性化..下面我就说说一步一步去除各种广告的思路及过程。 1、去除游戏过程中及游戏暂停时,右上方出现的Google广告。这种广告一般都需联网,AndroidManifest.xml文件中的连网权限去除以后,发现在原来广告的位置变成了一串字符“You must have INTERNET and ACCESS_NETWORK_STATE permissions in AndroidManifest.xml.”从而搜索这个关键词,容易的修改跳转即可完全去除。很明显是引用Google的Ad SDK,方法具有普适性。 2、去除StartActivity界面左上角的“更多”图片及其按钮属性。经过查找关键词“more1”和“more2”,多次测试可得以下关键代码段:

//读取文件中的draw中的资源    invoke-virtual {p0}, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->getResources()Landroid/content/res/Resources;

    move-result-object v0
//设置资源ID
    const v1, 0x7f02006e

    invoke-static {v0, v1}, Landroid/graphics/BitmapFactory;->decodeResource(Landroid/content/res/Resources;I)Landroid/graphics/Bitmap;

    move-result-object v0
//将图片配置展示出来
    iput-object v0, p0, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->g:Landroid/graphics/Bitmap;
将more1和more2的图片删除之后,你再点击那个地方你就会发现,同样有按钮属性,看来我们需要作进一步的去除。易得弹出的网址是:http://www.feelingtouch.com/cn/mobile/Links/list/46.html从而找到“Lcom/feelingtouch/bannerad/b/b的a()方法”,合理修改跳转直接返回即可; 3、去除GameBox图片及按钮的属性。突出图片的展示方法和上面的一样,但是去除该位置的点击属性有点困难,我们借用一个函数的关键词“OnTouchListener” 可以找到从设置图片到点击事件的全程代码:
//设置资源IDconst v0, 0x7f080067    invoke-virtual {p0, v0}, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->findViewById(I)Landroid/view/View;    move-result-object v0//按钮属性    check-cast v0, Landroid/widget/Button;    iput-object v0, p0, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->e:Landroid/widget/Button;    .line 304
    iget-object v0, p0, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->e:Landroid/widget/Button;    iget-object v1, p0, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->s:Landroid/graphics/drawable/BitmapDrawable;    invoke-virtual {v0, v1}, Landroid/widget/Button;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V    .line 305
    iget-object v0, p0, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;->e:Landroid/widget/Button;//按钮被点击的响应,即重开一个Activity..    new-instance v1, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity$5;    invoke-direct {v1, p0}, Lcom/feelingtouch/NinjaRunDeluxe/StartActivity$5;->(Lcom/feelingtouch/NinjaRunDeluxe/StartActivity;)V    invoke-virtual {v0, v1}, Landroid/widget/Button;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V
所以从上面的分析 直接删除后面的三句即可完美去除“GameBox”;4、去除软件退出时“APPList”广告。
搜索关键词“确定要退出游戏吗” 然后找到配置文件“banner_exit_dialog.xml”,在文件夹com.feelingtouch.NinjaRunDeluxe\res\layout-land 中。可以改为:


然后得到的效果就是:


5、去除开启画面上的Login按钮。通过图片名称搜索图片名称“banner_sign_up_normal”找到“banner_sign_up_btn.xml,然后在搜索“banner_sign_up_btn” 找到调用的地方:com.feelingtouch.NinjaRunDeluxe1\res\layout-land\banner_first_page.xml
然后设置其中的Button即可。



6、去除StartActivity页面上是不是弹出的APP插页广告。搜索“banner_firstpage_download_btn_normal” 找到:banner_game_download_btn.xml
然后在搜索“banner_game_download_btn” 找到调用的地方:com.feelingtouch.NinjaRunDeluxe1\res\layout-land\banner_game_show_dialog.xml
在其中设置整体的尺寸即可。


@小试锋芒   求支持啊原帖地址:http://blog.sina.com.cn/s/blog_92b6d74d0101hvhc.html



进击的小菜鸟。 发表于 2014-6-23 09:30

jojaajj 发表于 2014-6-23 09:20

学习了~~~~{:1_932:}

a5680497 发表于 2014-6-23 09:41

学习了,就是太麻烦了!!!!

MMAKI 发表于 2014-6-23 10:04

先顶再看,支持楼主

Dlan 发表于 2014-6-23 10:28

如果再详细点就好了 ,{:1_919:}

z6810753 发表于 2014-6-24 12:48

支持,很全面啊!

尚可88 发表于 2014-6-27 19:51

很不错噢

nexuszjj 发表于 2014-7-7 14:11

学习了,谢谢分享

啊吖哈 发表于 2014-7-9 11:06

赞一个。。。。。。。。。。。我玩 这游戏。。。。。。。。。。。
页: [1] 2
查看完整版本: 忍者突袭(Ninja Rush Deluxe) 去广告过程