突然有了假设四:扫描所有类文件。

仔细想想,如果想得到上面效果,就必须知道你引用了那种广告的类,才肯能判断你加了什么广告。

进一步验证,由于假设三中有一种情况是不add广告的jar包也会被查,果断的反编译自己的APK,查看后了然,尽管项目中没有add,可以在libs下的jar包毅然也被打进了工程,见下图。

注意对比,看到没,waps的包还是被打进工程了,看到包里的类众猿应该明白了把,成功就在眼前,因为大多广告平台由于要把SDK给开发者用,都会把不同的广告做成不同的类,再看类的命名就一切都明白了。

以防万一自己模拟了一个广告SDK的包名、类名,果然被查出广告。

至此得出结论:反广告软件通过扫描程序内所有类文件,根据其包名、类名确定广告平台以及广告种类。

最后抛出一个问题,他是如何获取到程序所有类名。由于packageinfo和ApplicationInfo都没有关于所有类的描述,最后找到了方法,不废话了,直接代码给大家

[java] view plaincopy

String path = "";

try {

path = getPackageManager().getApplicationInfo(

"com.xxx.xxx", 0).sourceDir;//获得某个程序的APK路径

} catch (NameNotFoundException e2) {

// TODO Auto-generated catch block

e2.printStackTrace();

}

try {

DexFile df = new DexFile(path);//传如APK实例一个dexfile

Enumeration s = df.entries();

while (s.hasMoreElements()) {//遍历出所有类

String string = (String) s.nextElement();

Log.i("test", string);

}

Log.i("test", df.getName() + "");

} catch (IOException e1) {

// TODO Auto-generated catch block

Log.i("test", "error" + e1.getMessage());

e1.printStackTrace();

}

android广告拦截原理,android扫描带有广告应用原理相关推荐

  1. android service拦截按键,android里面屏蔽home键/禁止Home键或者随你DIY

    可以先禁止Home键,再在onKeyDown里处理按键值,点然后在击Home键的时候就把程序关闭,或者随你DIY. 复制代码 代码如下: @Override public boolean onKeyD ...

  2. android webview 拦截响应,android WebView拦截请求详解

    1.WebView基本用法 WebView的基本用法相信大多数android开发者都是会使用的,最简单的就是调用个loadUrl方法,但是记得要在清单文件中添加网络权限.我也简单了写了一个加载百度的 ...

  3. android方法拦截器,android OkHttp拦截器(Interceptor)的使用

    一 概念 在OkHttp内部是使用拦截器来完成请求和响应,利用的是责任链设计模式,能够用来转换,重试,重写请求的机制.如今主流的网络框架非Retrofit莫属,它的内部请求也是基于OkHttp的. 在 ...

  4. android 方法拦截器,Android的OkHttp包中的HTTP拦截器Interceptor用法示例

    OkHttp(GitHub:https://github.com/square/okhttp) 的 Interceptor 就如同名称「拦截器」一样,拦截你的 Request 做一些你想做的事情再送出 ...

  5. Google Chrome 新广告拦截器的工作原理

    转自: https://www.ctrl.blog/entry/chrome-adblocker google chrome 将在2018年2月15日开始对某些网站上的广告进行屏蔽. 笔者看了一下Ch ...

  6. AdGuard 无与伦比的广告拦截

    一款无与伦比的广告拦截扩展,对抗各式广告与弹窗. AdGuard 广告拦截器可有效的拦截所有网页上的所有类型的广告,甚至是在 Facebook.Youtube 以及其他万千网站上的广告! AdGuar ...

  7. 错误,误解和攻击:分析广告拦截系统的众包过程

    错误,误解和攻击:分析广告拦截系统的众包过程 "众包"(crowdsourcing):这一概念是由美国<连线>杂志的记者杰夫·豪(Jeff Howe)在 2006年6月 ...

  8. AdGuard2022手机电脑广告拦截工具

    AdGuard 是拥有可获取最佳网络冲浪体验所需全部功能的独特程序.其集合了世界上最高级的广告拦截器,隐私保护模块以及家长控制为一体,还可协同任何浏览器和应⁠用工⁠作. AdGuard 是快速的.小内 ...

  9. 广告拦截软件测试简历,ADSafe广告拦截效果测试

    三.ADSafe广告管家广告拦截效果测试 1.网页广告拦截功能 通过分别开启ADSafe广告管家的广告拦截功能,访问国内著名的小说网站起点中文网,对比结果如下: 图11 未开启ADSafe广告管家拦截 ...

最新文章

  1. php js怎么去掉类属性,如何修改DOM中的属性,类和样式
  2. Java程序员从笨鸟到菜鸟之(二十九)javascript对象的创建和继承实现
  3. dmg文件 linux,安装和使用Dmg2Img在Linux上创建macOS安装盘
  4. idea2019.x配置Gradle
  5. 《软件工程概论》第二章核心内容
  6. COM编程之二 接口
  7. ci/cd heroku_在Heroku上部署Dash或Flask Web应用程序。 简易CI / CD。
  8. kotlin和java语言_Kotlin VS Java – 2020年您应该学习哪种编程语言?
  9. CASREL:A Novel Cascade Binary Tagging Framework for Relational Triple Extraction(关系抽取,ACL2020,重叠关系)
  10. NAR:脑疾病研究的“金牌助手”:BrainBase
  11. 关于OpenGL ES中的纹理压缩
  12. Cordic的学习之硬件实现
  13. 推荐几个程序员学习网站
  14. 【软件工程】软件工程需求分析——结构化分析
  15. bug - Nacos - Ignore the empty nacos configuration and get it based on dataId
  16. 模块参考资料-硬件资料-Air720UG/UH
  17. Java、JSP教师信息管理系统
  18. MLX90640开发笔记(十)成果展示-红眼睛相机
  19. 正点原子STM32F407+AD7606+RT-Thread Studio 调试记录
  20. 【Python】Pandas GroupBy 深度总结

热门文章

  1. java-23种设计模式-桥梁模式
  2. web学习的有关书籍
  3. R语言用灰色模型 GM (1,1)、神经网络预测房价数据和可视化
  4. 使用kmplot在线进行生存分析
  5. 【导入导出测试用例编写】
  6. http和https工作原理
  7. 大数据的就业方向有哪些
  8. paddleocr-营业执照识别项目实战
  9. LeetCode.M33.搜索旋转排序数组
  10. 购物网站制作——顶部导航栏(index.html)