关于如何防止app被移除广告的讨论
来源:互联网 发布:淘宝windows客户端 编辑:程序博客网 时间:2024/05/03 10:39
对于开发者,最伤心的莫过于辛苦开发的app被人破解移除了广告,那点可怜的广告收入还要被剥夺。
就如hack一样,想知道如何防,首先得知道如何攻; 想知道如何防止自己辛苦开发的app被别人移除了广告,首先就得知道如何能移除app的广告。
gooole天下,国内移除app广告大概有如下两大渠道:
1, 反编译源码,从源码层面上破解。
2,反编译Layout布局文件。
基于绝大多数app采用添加广告的方式是直接在layout里面添加一段代码,比如:
<com.admob.android.ads.AdView
android:id=”@+id/ad”
android:layout_width=”fill_parent”
android:layout_height=”wrap_content” />
这种方式最为简单便捷,所以使用极广(废话,谁吃饱了撑的非要用SDK代码生成广告),所以国内大多数破解者都是通过更改Layout布局xml文件来达到目的。
至于如何移除app广告具体步骤,在这不得不说了,请参照下面两篇文章:
http://bbs.anshouji.com/thread-459-1-1.html
http://darkhandz.com/apk-noads1/
可以看出,关键的步骤有下面几种:
1. 找到layout xml文件中的AdView,直接删除
2. 找到layout xml文件中的AdView, 修改其layout_height高度为0.0dip,高度为0,自然不显示
3. 找到layout xml文件中的AdView, 修改其visibility为gone
现在知道如何攻了,我们来谈谈如何守。
因为破解者更改的是layout里的adview,我们可以在代码中加入检验代码,这里只提供流程,非详细android代码,你可以把它包装得更复杂点:
方法一:
try{
Adview ad= (Adview) findViewById(R.id.adviewid);
if(Adview.layout_height == 0){
//show("你正在使用破解版");
Adview.layout_height = 50;
}else if(Adview.visibility == 'GONE'){
Adview.visibility = "visiable";
}
}(Exception e){
show("你正在使用破解版");
}
方法二:
根据广告商提供的SDK,代码生成Adview。
对代码的反编译难度会提高很多,这足以阻止大部分破解者的脚步了。当然会有锲而不舍的破解者不会放弃,那么剩下的就是在代码逻辑上看你如何尽量避免被破解了。还是那句老话,没有破不了的软件,我们讨论的只是尽量降低开发者的损失,免费只会让开发者失去前进的动力。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/liutao5757124/archive/2010/11/22/6028040.aspx
- 关于如何防止app被移除广告的讨论
- 关于广告防止作弊行为的处理
- iOS[正解] - 您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件。
- 如何防止android app被kill
- 解析Android APP如何防止被反编译
- 如何防止android app被kill
- 如何防止APP被二次打包
- 如何防止android app被kill
- 移除CSDN各种广告
- 移除CSDN各种广告
- 如何防止网站被电信运营劫持弹广告
- 如何防止网站被运营商劫持投放广告
- 如何移除 iTunes Connect 上上传的APP构建版本
- 关于app的logo广告页的制作
- 关于app#启动页面#splash页面#开屏广告#的小结
- 关于APP广告也面图片的保存问题
- 如何在自己的Android APP中加入广告
- APP的广告模式
- android中的progressbar
- VC开发辅助工具大收集
- 摘要算法
- linux安装JDK
- Openssl回调函数
- 关于如何防止app被移除广告的讨论
- VC辅助工具VcExtend
- VC录音机程序开发过程
- vi常用设置摘要一
- 驱动注册的probe函数
- 清空回收站依然能找到文件
- 参数估计
- 【Android入门】访问Internet权限
- 64位DB2和Oracle 32bit库