查找其他 Android 应用产生了多少网络流量

2023-12-05

我正在尝试制作一个后台服务,该服务应该测量各种应用程序的流量使用情况,以便能够向用户显示哪些应用程序消耗最多的数据流量。

我发现 Spare Parts 应用程序正是这样做的,但在 1.6 Dell Streak 设备上安装它后,我总是收到“网络使用情况”的“没有可用的电池使用数据”。这个功能在备件中是否有效? 另外,我找不到可用的备件源代码。

https://android.googlesource.com/platform/development/+/froyo-release/apps/SpareParts
看起来已经过时或不完整。 (?)

但备件似乎可以测量例如每个应用程序的 CPU 使用情况。它如何在未root的手机上做到这一点?

我对如何测量每个应用程序的流量的一般想法是定期检查

"sys/class/net/" + sWiFiInterface + "/statistics/rx_bytes"

"sys/class/net/" + sWiFiInterface + "/statistics/tx_bytes"

"sys/class/net/" + sMobileInterface + "/statistics/rx_bytes"

"sys/class/net/" + sMobileInterface + "/statistics/tx_bytes"

文件并查看当前有焦点的应用程序,从而最有可能导致生成的网络流量。

不幸的是,我找不到如何让应用程序当前获得焦点。

我找到了这个:

Android,如何获取当前显示的活动(在前台)的信息?

但似乎这是关于测试,而不仅仅是在非 root Android 设备上运行的 3d 派对服务。

我们可以得到正在运行的活动ActivityManager.getCurrentTasks(),但其中任何一个都可以成为焦点。出于安全考虑,Android 架构师似乎明确不希望 3d 方应用程序知道哪个应用程序具有焦点

(see http://android.bigresource.com/Track/android-zb2mhvZX4/).

有没有解决的办法?

另外,如果我不仅想检测哪些活动消耗了流量,还想检测哪些服务,我可以使用以下命令获取所有当前正在运行的服务ActivityManager.getCurrentSerives()甚至查看每一个是否处于前台模式(不像 Android 需要资源时被抛出)。但这并没有给我带来任何帮助。

有任何想法吗?


您可以使用以下命令检测当前的前台应用程序ActivityManager.getRunningAppProcesses称呼。它将返回一个列表RunningAppProcessInfo记录。确定哪个应用程序在前台检查RunningAppProcessInfo.importance平等领域RunningAppProcessInfo.IMPORTANCE_FOREGROUND.

但请注意,调用ActivityManager.getRunningAppProcesses()方法必须不在 UI 线程中执行。只需在后台线程中调用它(例如通过 AsyncTask),它就会返回正确的结果。查看my post了解更多详细信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

查找其他 Android 应用产生了多少网络流量 的相关文章

  • 检查 WebView 元素时的 UiAutomator 错误

    I have recently started automation testing in android and was using UiAutomator tool for inspecting UI elements Surprisi
  • 如何正确释放Android MediaPlayer

    我正在尝试向我的 Android 应用程序添加一个按钮 当点击该按钮时它会播放 MP3 我已经让它工作了 但没有办法释放 mediaPlayer 对象 因此即使在我离开活动后它仍然会继续播放 如果我在react 方法之外初始化MediaPl
  • Android Q:file.mkdirs() 返回 false

    我们有一个应用程序 使用外部存储来存储一些临时文件 图像 二进制数据 该代码已经运行了几年 直到最近才发生重大变化 在 Android Q 上它不起作用 File f new File Environment getExternalStor
  • Recyclerview 动态部分不使用任何第三个库

    我想将标头添加到 recyclerview 我正在尝试使用来实现它 Override public int getItemViewType int position depends on your problem if position 0
  • Android 初学者:Android gridview 中的触摸事件

    我正在使用以下代码来使用 gridview 执行操作 稍作修改http developer android com resources tutorials views hello gridview html http developer a
  • 通过 WhatsApp 发送消息

    由于我发现了一些较旧的帖子 表明 Whatsapp 不支持此功能 我想知道是否发生了变化 以及是否有办法打开与我通过意图发送的号码进行 Whatsapp 聊天 UPDATE请参阅https faq whatsapp com en andro
  • Bitmap.getPixels() 中的 IllegalArgumentException

    我想将数据从位图复制到int using getPixels 这是我当前的代码 int pixels new int myBitmap getHeight myBitmap getWidth myBitmap getPixels pixel
  • 在 Cordova 应用程序中获取额外功能

    我们有两个 Android 应用程序 一个使用本机 Java 实现 另一个使用 Ionic 编写 Ionic 应用程序启动我的应用程序 这是使用灯插件 https github com lampaa com lampa startapp 我
  • Android 手机作为 GSM 调制解调器在 PC 上发送/接收短信?

    是否可以将 Android 移动设备用作 PC 上的 GSM 调制解调器 我正在 net下开发应用程序来发送 接收短信等 现在我想通过 USB 将我的 Android 设备连接到我的 PC 并将其用作 GSM 调制解调器来与其通信 这里是参
  • 从 BroadcastReceiver 类调用活动方法

    我知道我可以做一个内部接收器类来调用接收器中的任何方法 但我的主要活动太大了 要做的事情也很多 因此 我需要一个扩展广播接收器的类 但它不是内部类 并且可以从我的主要活动中调用一种方法 我不知道是否可能 但我的活动是家庭活动和 single
  • logcat 中 mSecurityInputMethodService 为 null

    我写了一点android应显示智能手机当前位置 最后已知位置 的应用程序 尽管我复制了示例代码 并尝试了其他几种解决方案 但似乎每次都有相同的错误 我的应用程序由一个按钮组成 按下按钮应该log经度和纬度 但仅对数 mSecurityInp
  • WorkManager 或 AlarmManager 用于日常请求然后通知工作?

    这是用例 用户设置具有特定时间的每日通知 在指定时间 发出网络请求以获取一些数据 然后使用检索到的数据显示通知 我不确定是否应该使用 AlarmManager 还是 WorkManager 来实现这个用例 据我了解 AlarmManager
  • 如何检查 Android 中的同步设置

    我正在构建一个 Android 应用程序 我需要检查设备中注册的每个单独帐户的同步设置 我知道我可以通过 ContentResolver 类来做到这一点 但我遇到了一些问题 我已设法获取设备上所有帐户的列表 但我不知道在运行时从哪里获取特定
  • 问题:为什么React Native Video不能全屏播放视频?

    我正在react native 0 57 7 中为android和ios创建一个应用程序并使用反应本机视频 https github com react native community react native video播放上传到的视频
  • CamcorderProfile.videoCodec 返回错误值

    根据docs https developer android com reference android media CamcorderProfile html 您可以使用CamcorderProfile获取设备默认视频编解码格式 然后将其
  • 如何使用 AccessibilityService 在 Android 中模拟按键

    我正在编写一个辅助服务 我一直在尝试在应用程序上进行一些自动搜索 我使用accessibilityservice action paste来填充EditText 然后我需要模拟软键盘上的按键 但我不知道如何做 你们能帮我一下吗 你可以尝试A
  • 我的应用程序中的后退按钮出现问题[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想在手机关闭时清除共享首选项值 你
  • 发布的 Android apk 出现错误“包文件未正确签名”

    我最近将我的应用程序上传到 Android 市场 但是由于错误 下载时它拒绝运行 包文件未正确签名 我首先使用 eclipse 发布了数据包 右键单击导出 创建密钥库然后发布 但它拒绝工作 然后我下载了 keytool 和 jarsigne
  • Android 屏幕方向错误

    我使用的是 Android HTC HERO 2 1 版本 我写的活动
  • Git 实验分支还是单独的实验存储库?

    我正在开发一个 Android 应用程序 并且在整个开发周期中一直使用 Git 现在 我想构建并发布实验性功能 供人们尝试和安装 同时仍将原始的 稳定的应用程序安装在他们的设备上 现在 这意味着我需要使用不同的包名称 这会更改开发项目中的一

随机推荐

  • Laravel 嵌套数组验证器

    我使用 Laravel Validator 类对数组进行一些基本验证 我的数组 employee name name employee address address employee department name deptname em
  • iOS - setObject 与 Synchronize

    新手问题 如果我将一个对象设置到 NSUserDefault 中 我是否还需要同步以确保该对象永久返回到 NSUserDefault 数据库中 我想我要问的是 setobject 是将对象永久放回到数据库中还是放入需要同步以确保永久存储的临
  • 如何使 tr1::array 分配对齐内存?

    您可以分配一个 std vector 它通过定义自己的分配器来分配对齐的堆内存 您可以使用 declspecalign 在堆栈上分配 C 样式数组 但是你能声明一个 tr1 array 来保证索引零处的元素对齐吗 tr1 array and
  • Net Core:实体框架中的通用存储库主 ID 关键性能

    我们正在审查通用存储库模式中的两种不同方法 目前 想要将主键映射到 Id 这样做的目的是映射到使用 Id 的通用存储库接口 下面提供两种解决方案 FindPrimaryKey Properties 对性能有何影响 在尝试查找主键时是否会导致
  • Python requests 模块多线程

    有没有可能使用多处理接口来加速我的代码 问题是这个接口使用了map函数 它只适用于1个函数 但我的代码有3个功能 我尝试将我的功能合并为一个 但没有成功 我的脚本从文件中读取站点的 URL 并对其执行 3 个功能 For 循环使它非常慢 因
  • 对列列表执行不同的函数,并使用 data.table 自动生成新的列名称

    我的 Shiny 应用程序中有一个部分可以生成列表 列表的名称是dataframe我们将计算 列表项包含我们想要的计算 想要这样做 apply to all list names for listname column x 计算functi
  • 使用 PHP 读取文件 - fopen/fread

  • 求矩阵元素组合的最小和

    昨天我的一位朋友带着一个问题来找我寻求解决方案 问题 我有一个matrix n x m 我需要找出从这些矩阵元素中可以产生的最小总和 条件是 计数只能从左上角的单元格开始 和 应在右下单元格结束 该算法应该计算所有可能的路径 这样我就需要找
  • 返回每个其他元素的列表的方案过程

    虽然我认为我已经完成了 90 但在计划中实现这个程序时遇到了一些麻烦 不幸的是 我需要对此说得有点含糊 因为这是一项家庭作业 我要 A B C D 返回 B D 但我收到一个错误 指出 The object returned as an a
  • SFTP 的 .NET 开源代码? [复制]

    这个问题在这里已经有答案了 我用 google 搜索了很多 但找不到 NET 中 SFTP 的单个开源实现 我得到的只是 SFTP 的第 3 方组件 谁能帮助我在 NET 中实现 SFTP See 这个问题 and shrpssh 这是公认
  • Android - 将文本文件保存到哪里?

    我正在使用 Adob e AIR 构建一个 Android 应用程序 允许用户导入和导出 txt 文件 作为保存 txt 文件的默认路径的最佳文件夹是什么 Thanks 您应该将文件保存在外部 SD 卡上 只需在下面创建一个自己的目录环境
  • Discord.py 如何制作掷骰子命令

    大家好 我正在用 Python 编写一个 Discord 机器人 我想编写一个掷骰子命令 我认为我做错了什么 这是代码 client command async def rolldice ctx dice4 1 2 3 4 dice6 1
  • 如何在 UICollectionViewCell 上设置 UILabel?

    我已经用自定义和标准这样做了几十次UITableView细胞 我所有的插座都已连接 这UILabel是我的子视图UICollectionViewCell在IB中 我的UICollectionViewCell对象继承了身份检查器中正确的类 我
  • jTable单元格背景颜色

    我正在尝试使用渲染器为 jTable 的单元格着色 但它们工作得不好 因为它们滞后于表格并使其无法看到 这是我的代码 TableCellRenderer Tcr jTable1 getCellRenderer x y Component c
  • 循环创建多个数据帧

    我有一个列表 每个条目都是一个公司名称 companies AA AAPL BA YHOO 我想为列表中的每个条目创建一个新的数据框 就像是 伪代码 for c in companies c pd DataFrame 我已经寻找一种方法来做
  • jQuery JSON 到字符串?

    我需要获取我的对象并将其作为表示 JSON 的字符串存储在变量中 而不是使用 JSON json 字符串并使用 parseJSON 我正在处理的库需要格式错误的 JSON 类型 因此我需要对其进行修改才能使其正常工作 最好的方法是什么 Ed
  • 在 C++ 中使用没有伙伴类/Cpp 文件的头文件是否实用

    我最近选择了 C 作为我课程的一部分 并且我试图更深入地了解标头和类之间的合作关系 从我查找过的头文件中的每个示例或教程中 它们都使用带有构造函数的类文件 然后跟进方法 如果包含它们 但是我想知道是否可以只使用头文件来保存一组相关函数 而无
  • 每当串行端口有新数据时,就从串行数据更新 tkinter 标签 python 3.x

    我遇到了这个问题 我无法在标签上显示任何值 只要有新数据从串行端口传入 我就想不断更新它 我是 python 新手 真的需要帮助 import tkinter import tkinter messagebox import serial
  • GLSL 双精度角度、三角函数和指数函数解决方法

    在 GLSL 中 可以找到对双精度变量和运算的基本支持here 然而他们也提到 角度 三角学和指数的双精度版本 不支持功能 有没有一个简单的解决方法 或者我必须从头开始编写自己的函数 这个链接似乎是最好的答案 所以 是的 您需要为这些函数创
  • 查找其他 Android 应用产生了多少网络流量

    我正在尝试制作一个后台服务 该服务应该测量各种应用程序的流量使用情况 以便能够向用户显示哪些应用程序消耗最多的数据流量 我发现 Spare Parts 应用程序正是这样做的 但在 1 6 Dell Streak 设备上安装它后 我总是收到