java - 防病毒软件如何以编程方式扫描已安装的 android 应用程序的代码(没有 root 权限)?

标签 java android security android-intent android-activity

我知道有几个安卓杀毒软件例如:

  • AVG 移动
  • AVAST 软件
  • 迈克菲(英特尔安全)
  • 诺顿手机
  • 卡巴斯基实验室

每个都提供扫描已安装的 android 应用程序的病毒等功能(甚至是未 root 的 android 设备)。

证明以上内容的截图如下:

i.stack.imgur.com/tE5aP.png

http://i.stack.imgur.com/t5u0P.png

http://i.stack.imgur.com/P9LQb.png

但据我所知,对于安装在无根 Android 设备上的应用程序,一个应用程序无法访问另一个已安装的应用程序及其相关文件,例如:

  • 预安装(即相机、日历、浏览器等)APK 存储在/system/app/

  • 用户安装(ApiDemo、Any.do等)APK存储在/data/app/

  • Package Manager 创建数据目录/data/data//来存储数据库、共享首选项、 native 库和缓存数据

那么如上所述的应用程序如何以编程方式如上所述扫描应用程序及其相关文件(没有根访问权限)

最佳答案

它不会像人们想象的那样访问文件,它不会打开它们、使用它们或以任何方式扫描文件的数据。相反,它只是检查文件名。

对于 AVG 让我们说:AVG 使用过去和现在的病毒的最新数据库。它扫描你手机上的文件名,将它们与它的数据库进行核对,然后在名称与数据库中记录的名称匹配时提醒你。因此,它没有违反 android 制定的规则。

他们如何获得有关这些病毒的信息?好吧,你很幸运,你可能不是第一个得到它的人。当发现新病毒时,它会被报告,然后 AVG 将它添加到它的数据库中。

因此,遗憾的是,您无法按照您描述的方式以编程方式访问其他文件。但是,您可以访问目录内的文件名,并使用文件名检查数据库中是否存在病毒和其他恶意软件。

关于java - 防病毒软件如何以编程方式扫描已安装的 android 应用程序的代码(没有 root 权限)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30414565/

相关文章:

android - RecyclerView 获取点击的item详情 - Android

android - 当 Android 应用程序启动并存在时运行代码

java - 将用户授权移出 Liferay

c++ - 保护我的程序免受 RE 侵害

c# - 通过 C# 和 HttpWebRequest 抓取安全网站时出现 SSL/TLS 错误

java - 无法使用 Dagger 2 提供 Activity Context

java - 加载时编织 (AspectJ) : Hystrix breaks transaction propagation

java - 如何在运行时检查死的 java 方法

Java对象的可重用性

android - 适用于 Windows 7 的 map API key