CIFCOM跨境电商 CIFCOM跨境电商

当前位置: 首页 » 出海百科 »

微博 谷歌版 去广告

新浪微博2.5.1 for Android 去广告教程

夜深人静,睡不着,就写写东西。

最近我手机的新浪微博更新到2.5.1版,就开始来广告了,伤不起啊...

所需要用到的工具有:apktool,JD-GUI,dex2jar,Apk文件签名工具

dex2jar下载地址:

JD-GUI下载地址:

windows版JD-GUI:

Linux版JD-GUI:

apktool下载地址:

Apk文件签名工具下载地址:

自己百度吧

1.先把下载来的新浪微博apk程序,用解压工具(winrar)解压出来,解压出来的目录下有个classes.dex文件,用dex2jar把它反编译成jar。

2.用JD-GUI打开这个jar文件,找com.sina.weibo\HomeListActivity,打开直接看代码了。。。(找去广告的关键地方,自己根据情况搜索关键字,比如:AdView)

很容易就在protected void onCreate(Bundle paramBundle)函数里面看到,在初始化广告窗口的代码:

IntentFilter localIntentFilter3 = new IntentFilter();

localIntentFilter3.addAction("com.sina.weibo.action.AdCenter.show");

BroadcastReceiver localBroadcastReceiver3 = this.mAdReceiver;

Intent localIntent3 = registerReceiver(localBroadcastReceiver3, localIntentFilter3);

initAdView();

initAdView:

private void initAdView()

{

Animation localAnimation1 = AnimationUtils.loadAnimation(this, 2130968576);

this.mAdInAnimation = localAnimation1;

Animation localAnimation2 = AnimationUtils.loadAnimation(this, 2130968577);

this.mAdOutAnimation = localAnimation2;

ImageView localImageView1 = (ImageView)findViewById(2131624038);

this.mAdBar1 = localImageView1;

ImageView localImageView2 = (ImageView)findViewById(2131624039);

this.mAdClose1 = localImageView2;

ImageView localImageView3 = (ImageView)findViewById(2131624040);

this.mAdBar2 = localImageView3;

ImageView localImageView4 = (ImageView)findViewById(2131624041);

this.mAdClose2 = localImageView4;

HomeListActivity.14 local14 = new HomeListActivity.14(this);

HomeListActivity.15 local15 = new HomeListActivity.15(this);

this.mAdBar1.setOnClickListener(local14);

this.mAdClose1.setOnClickListener(local15);

this.mAdBar2.setOnClickListener(local14);

this.mAdClose2.setOnClickListener(local15);

}

所以去广告,很简单,只要把onCreate那五行代码给NOP掉就OK了,不过,就这样五行代码nop掉,广告是去了,但退出时,微博客户端还是会崩溃。原因是onCreate注册了一个广播接收但被NOP掉了,但在在销毁窗口的时候,在这个 protected void onDestroy()函数里面有移除这个广播接收,所以就造成崩溃了。所以onDestroy函数下面这两句代码也要nop!

BroadcastReceiver localBroadcastReceiver2 = this.mAdReceiver;

unregisterReceiver(localBroadcastReceiver2);

3.使用apktool把整个新浪微博的apk程序给反编译出来,在反编译出来的程序目录下,找smali\com\sina\weibo\HomeListActivity.smali这个文件,直接记事本打开。搜com.sina.weibo.action.AdCenter.show”定位到onCreate函数,把下面这几行给删除掉。

.line 329

new-instance v1, Landroid/content/IntentFilter;

invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V

.line 330

.local v1, myAdIntentFilter:Landroid/content/IntentFilter;

const-string v3, "com.sina.weibo.action.AdCenter.show"

invoke-virtual {v1, v3}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

.line 331

iget-object v3, p0, Lcom/sina/weibo/HomeListActivity;->mAdReceiver:Landroid/content/BroadcastReceiver;

invoke-virtual {p0, v3, v1}, Lcom/sina/weibo/HomeListActivity;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;

.line 334

invoke-direct {p0}, Lcom/sina/weibo/HomeListActivity;->initAdView()V

再搜索下"protected onDestroy()"定位到onDestroy函数里,把这几行也给删除掉!

.line 808

iget-object v0, p0, Lcom/sina/weibo/HomeListActivity;->mAdReceiver:Landroid/content/BroadcastReceiver;

invoke-virtual {p0, v0}, Lcom/sina/weibo/HomeListActivity;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V

4,最后还要去删除掉的ADCenter服务!不然这个服务会一直在后台运行着,看着某地方都会疼!打开在新浪微博的apk程序反编译出来的程序目录下的AndroidManifest.xml文件。删除掉下面这几行,就可以去掉AdCenter服务。

<service android:name=".business.AdCenter">

<intent-filter>

<action android:name="com.sina.weibo.action.speed" />

<category android:name="android.intent.category.DEFAULT" />

</intent-filter>

</service>

5,用apktool把那个修改去广告后的新浪微博反编译的程序目录编译成apk文件。最后在打上签名,去广告版就完成了

Google Play的应用与国内不同?看看这些应用的国际版你就知道了

Google Play上架应用有一系列监管流程,包括广告,隐私政策,滥用监管等等,所以应用要上架到Google商店就不能违反其规则。

这样就导致了国内一些应用出现了两个版本,一个是专门给国内用户使用的版本,另一个是上架到Google Play的版本。下面我们来对比一下国内几个常见应用的国内版和国际版。

首先来说说优酷,优酷大家都用的很多,国内版优酷打开APP首先是3到4秒的启动广告,而国际版的启动是没有广告的,启动速度也略有提高。就连需要的权限也少了。

再来看看播放页面,国内版播放页面通常是90秒到120秒的广告,有些还会更长,毕竟运营商要吃饭,加广告也是正常的。

再来看看国际版本,不光是启动广告没有了,连视频播放前面的广告也看不到了,瞬间感觉通畅许多

再来看看WPS,WPS国内版和国际版区别不是很大,国际版也是没有启动广告,国内版打开文档阅读到底不会有广告,而国际版是没有广告的。

微博,微博在Google play上面有两个版本,一个是国际版一个是跟国内版本差不多的版本。这个跟国内差不多的版本也是完全看不到信息流广告的。

就先用这几个应用来对比吧,还有很多其他应用都是大同小异的。

总体来说不想看到这些烦人的广告,就去google商店下载app,但是安装以后需要关闭手机应用商店的自动更新功能,不然它一升级又给你换成国内版本了。

未经允许不得转载: CIFCOM跨境电商 » 微博 谷歌版 去广告

相关文章

themebetter

contact