背景

  相信不少安卓用户中过影子弹窗广告的困扰,这种推广APP本体在后台运行,而且可以在其他APP上弹出覆盖广告,一不小心就会误操作,点击广告或者下载APP,着实令人恶心。

  以前的广告软件只在通知栏会推送广告,4.4以上版本或者一些rom可以轻易长按管理并找到元凶。

  而此升级版却是直接覆盖其他应用程序在屏幕中心和底部直接弹出广告。浏览器、QQ、微信,无一幸免,切换到桌面和最近的应用程序居然可以自动隐藏,大写的服。

(中招截图)

  无奈之下,笔者把**管家,36*,LE*,金* 全试了一次,竟然没有一个能找到罪魁祸首,简直不能忍!

准备工作

  1.要进入开发者模式打开USB调试,安装驱动,这部分属于比较初级,就略过了。

  2.下载adb工具包。

  4.找一根稳定的数据线,将手机连接电脑,在手机的弹出窗口中允许USB调试。

正式开始

  1.然后用管理员进CMD,输入

    cd /d "Z:\Desktop\adb"

    将双引号内的路径换成你电脑上ADB工具所在路径

  2.查看设备,输入

    adb devices

    如果你的驱动安装正确,应该可以看到有设备,如果没有,返回准备工作,检查驱动是否正确安装。

  3.尝试运行手机中每一个APP,直到弹出广告。笔者画了3分钟时间,在运行到一个清理应用的时候,弹出了广告,按home键返回桌面广告滞留了一瞬间,说明有可能不是APP内的广告。

  4.电脑上迅速清理日志,输入

    adb logcat -c

    清理一次设备日志记录,这时候开始不要操作手机。

  5.然后点击一下广告,广告肯定会打开浏览器或者什么别的操作。

  6.电脑上输入

    adb logcat -d > c:/b.log

    在C盘下会创建一个b.log,储存了刚才的设备操作。

  7.用notepad++或者其他文本编辑器打开b.log搜索”Touch event's”,可以忽略大小写来查找。

  如图,不出意外应可以找到2个事件,一次是按下,一次是弹起,我们接着往下分析。

  如图可以看到,在点击事件下方,一个ID为10640的进程拉起了浏览器。

  我们把这个ID记下来

  8.回到adb,输入

    adb shell

      进入shell界面,再输入

    ps | grep "10640"

      将10640换成你找到的ID

      返回结果如下

这个com.zdworks.android.zdcalendar就是罪魁祸首,应用名称我就不说了,还是个比较出名的APP,各大防护软件没反应也许和这个有关?

    后面的事情就简单了,可以直接在adb中输入,卸载之。

      adb uninstall com.zdworks.android.zdcalendar

  9.返回手机,关闭USB调试。

    教程至此,我们已经成功揪出这个家伙,教程分2段写的,所以命令的时间会有差异。

再说两句

笔者在此给广大安卓用户提个醒,国内应用市场危机四伏,这个软件还是从三星官方应用商店下载,所以不了解的的软件千万不要安装,拒绝当小白鼠,从我做起。

PS:笔者非程序专业,教程抛砖引玉,有更好的方法欢迎交流共勉。

【经验分享】用adb揪出安卓APP弹窗广告的原形的更多相关文章

  1. 【原创】大叔经验分享(81)marathon上app无法重启

    通过api调用marathon重启app后出现deployment,但是app不会重启,配置如下: "constraints": [ [ "hostname", ...

  2. 【原创】大叔经验分享(70)marathon重启app后一直处于waiting状态

    marathon重启app后一直处于waiting状态,查看marathon日志 # journalctl -u marathon -f 有如下日志: Jun 14 12:58:38 DataOne- ...

  3. 转载----开发者大杀器 —— 刨根问底,揪出 Android App 耗电的元凶代码

    转载文章地址:http://www.jianshu.com/p/27ba2759b221

  4. 新东方APP技术架构演进, 分布式系统架构经验分享

    今天的演讲题目是"新东方APP技术架构演进, C端技术经验分享" 作者:张建鑫, 曾任IBM高级软件架构师, 滴滴高级技术专家, 现任新东方集团高级技术总监 古代东西方的思想家都产 ...

  5. 使用Webpack+Gulp开发运行于Dcloud平台HTML5+引擎的混合APP项目经验分享

    什么是5+Runtime? 首先简单介绍一下5+Runtime: HTML5 Plus Runtime(5+Rumtime)是由Dcloud开发的一套"增强版的手机浏览器引擎",与 ...

  6. 【实战分享】安卓app测试的一些记录

    一.app代码未混淆1.使用7zip解压apk文件2.执行命令:dex2jar.bat apk解压后文件夹中的classes.dex文件3.上述命令执行后会在apk文件夹中生成java源码文件clas ...

  7. 安卓app设计规范整理和Android APP设计篇(转)

    随着安卓智能手机不停的更新换代.安卓手机系统越来越完美,屏幕尺寸也越来越大啦!比如最近小米的miui 6的发布和魅族手机系统的更新等等. 以小米MIUI6的安卓手机来说,MIUI6进行了全新设计,坚持 ...

  8. 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付

    前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...

  9. 【转载】安卓APP架构

    注:本篇博文转载于 http://my.oschina.net/mengshuai/blog/541314?fromerr=z8tDxWUH 本文介绍了文章作者从事了几年android应用的开发,经历 ...

随机推荐

  1. jersey简单总结与demo

    参考链接:https://www.iteye.com/blog/dyygusi-2148029?from=singlemessage&isappinstalled=0 测试代码: https: ...

  2. 深入学习JDK源码系列之、ArrayList

    前言 JDK源码解析系列文章,都是基于JDK8分析的,虽然JDK15马上要出来了,但是JDK8我还不会,我... 类图 实现了RandomAccess接口,可以随机访问 实现了Cloneable接口, ...

  3. Hexo小技巧(包括如何插入本地图片)

    我在研究如何在Hexo中引用本地图片时,看到官方文档对此问题已给出了解决方法,并亲测有效.当然,我并不满足于仅仅知道这一个技巧.在大致阅读过官方文档后,我总结了之前我个人并不知道的几个关于Hexo写博 ...

  4. python 正则表达式与JSON-正则表达式匹配数字、非数字、字符、非字符、贪婪模式、非贪婪模式、匹配次数指定等

    1.正则表达式:目的是为了爬虫,是爬虫利器. 正则表达式是用来做字符串匹配的,比如检测是不是电话.是不是email.是不是ip地址之类的 2.JSON:外部数据交流的主流格式. 3.正则表达式的使用 ...

  5. XCTF-WEB-高手进阶区-NaNNaNaNNaN-Batman-笔记

    上来直接百度先搜下Batman -_-|| 不存在的传令兵么 本身是下载下来了一个文件web100 打开发现是如下内容 可以看出这个是个脚本语言,因此尝试修改后缀为html,发现是一个OK框 现在是想 ...

  6. Azure Application Gateway(一)对后端 Web App 进行负载均衡

    一,引言 今天,我们学习一个新的知识点-----Azure Application Gateway,通过Azure 应用程序网关为我么后端的服务提供负载均衡的功能.我们再文章头中大概先了解一下什么是应 ...

  7. [转]解决The requested resource is not available的方法

    此博文为转载博文,首先感谢原作者 HTTP Status 404(The requested resource is not available)异常主要是路径错误或拼写错误造成的,请按以下步骤逐一排 ...

  8. artifactdescriptorexception:Failed to read artifact descriptor for xxx:jar ”

    在Eclipse中执行Maven的install命令时,报“Failed to read artifact descriptor for xxx:jar ”的错误.这可能是在下载过程中文件出现错误.或 ...

  9. 2020-05-24:ZK分布式锁有几种实现方式?各自的优缺点是什么?

    福哥答案2020-05-24: Zk分布式锁有两种实现方式一种比较简单,应对并发量不是很大的情况.获得锁:创建一个临时节点,比如/lock,如果成功获得锁,如果失败没获得锁,返回false释放锁:删除 ...

  10. Tensorflow Cpu不支持AVX

    Tensorflow从1.6开始从AVX编译二进制文件,所以如果你的CPU不支持AVX 你需要 从源码编译 下载旧版 从源码编译比较麻烦,如果你是初学的话,我建议使用旧版. 安装旧版: pip3 in ...