getUidRxBytes() 和 getUidTxBytes() 在 Android 4.3 中始终返回 0

2023-11-21

我觉得我现在正在服用疯狂的药物。我的应用程序的一个特定部分几天来一直工作得很好,今天它停止工作了,我不明白为什么。我的代码的这一部分用于输出自启动以来每个特定应用程序发送和接收的总数据。现在,这些值始终显示为 0。

有几件事可能会或可能不会影响这一点:

1.) 我的 Nexus 4 今天刚刚更新到 Android 4.3,但我怀疑这是一个问题,因为更新后它运行得很好。

2.) 随着 Android API 18 更新,流量统计 API 中的一些方法现已弃用,但这些方法我什至没有使用,所以这应该没有效果。http://developer.android.com/reference/android/net/TrafficStats.html

非常感谢所有帮助。

PackageManager packageManager=this.getPackageManager();
List<ApplicationInfo> appList=packageManager.getInstalledApplications(0);

for (ApplicationInfo appInfo : appList) {
    String appLabel = (String) packageManager.getApplicationLabel(appInfo);
    int uid = appInfo.uid;
    Log.d("data", String.valueOf(TrafficStats.getUidRxBytes(uid) + TrafficStats.getUidTxBytes(uid)));

更新[2014 年 1 月 23 日]:在运行 Android 4.4.2 的 Nexus 4 上测试 getUidRxBytes() 和 getUidTxBytes() 显示这些值不再是 0,而是报告正确的统计信息。


我已向 AOSP 问题跟踪器报告了该问题:here

我还为该问题创建了一个替代解决方案,粘贴在下面:

private Long getTotalBytesManual(int localUid){

File dir = new File("/proc/uid_stat/");
String[] children = dir.list();
if(!Arrays.asList(children).contains(String.valueOf(localUid))){
    return 0L;
}
File uidFileDir = new File("/proc/uid_stat/"+String.valueOf(localUid));
File uidActualFileReceived = new File(uidFileDir,"tcp_rcv");
File uidActualFileSent = new File(uidFileDir,"tcp_snd");

 String textReceived = "0";
 String textSent = "0";

 try {
        BufferedReader brReceived = new BufferedReader(new FileReader(uidActualFileReceived));
        BufferedReader brSent = new BufferedReader(new FileReader(uidActualFileSent));
        String receivedLine;
        String sentLine;

        if ((receivedLine = brReceived.readLine()) != null) {
            textReceived = receivedLine;
        }
        if ((sentLine = brSent.readLine()) != null) {
            textSent = sentLine;
        }

    }
    catch (IOException e) {

    }
 return Long.valueOf(textReceived).longValue() + Long.valueOf(textReceived).longValue();

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

getUidRxBytes() 和 getUidTxBytes() 在 Android 4.3 中始终返回 0 的相关文章

  • Android 如何使用 OkHttp 从 Callback 获取响应字符串?

    这是我的代码 OkHttpClient okHttpClient new OkHttpClient Request request new Request Builder url http publicobject com hellowor
  • 接收广播意图时出错 { act=android.bluetooth.device.action.FOUND flg=0x10}

    我搜索了一下 没有发现任何相似的东西 我正在 Android 中使用蓝牙开发两个设备之间的连接 在 ACTION FOUND 方法上 当我尝试使设备信息显示在 listView 上时 我在 logcat 上收到该错误 德萨菲奥活动 公共类
  • EditText - 在键入时更改文本

    我需要在输入时替换 EditText 内的文本 示例 如果用户按下 A 它将被存储到缓冲区中 并在 EditText 上显示 D 看起来像是按下了 D 现在我可以读取按下的字符 但无法显示 et 中的任何字符以避免 stackoverflo
  • 如何在不使用adb shell的情况下获取android应用程序的pid?

    如何在不使用 adb shell 的情况下获取 Android 应用程序 pid 有没有API可以获取pid 任何帮助将不胜感激 由于每个应用程序都有自己的进程ID 因此可以通过 int pid android os Process myP
  • Android-无法解析符号 BaseObservable

    我正在尝试在 android 中实现数据绑定示例并使用可绑定变量创建 POJO 但我收到此错误 请帮忙 我正在关注这个教程http www vogella com tutorials AndroidDatabinding article h
  • 如何在ionic框架+ angularjs中调用函数?

    我正在使用 ionic 框架来制作 android 应用程序 我有 cordova5 1版本 first 我使用命令行创建一个项目ionic 启动 myApp 选项卡 我添加了android平台 现在我需要将java代码与javascrip
  • Google 语音识别器无法在 Android 4.x 上启动

    我偶然发现了这个随机问题 这是我的代码 mSpeechRecognizer SpeechRecognizer createSpeechRecognizer mContext initializeRecognitionListener mSp
  • Android 设备上的 Facebook 分享问题

    我使用了来自的样本AndroidFacebook示例 https github com ddewaele AndroidFacebookSample它在模拟器上运行良好 但在设备上它被转移到内置的 Facebook 意图 设备上不会出现身份
  • ScrollView 中的 ViewPager 不会垂直滚动

    我有一个layout有一个ViewPager自定义内部ScrollView并且 ViewPager 不会垂直滚动 自定义 ScrollView 用于修复使用 ScrollView 进行可怕的选项卡滑动的问题 是的 有足够的内容可以滚动 我已
  • Android 拒绝来电

    我想拒绝android中的传入 我从这些链接中看到了很多代码 Android 完全控制手机 信息亭模式 可能吗 如何 https stackoverflow com questions 7121508 android taking comp
  • 更改图库中的边框样式

    我正在服用this http www androidpeople com android gallery imageview example 教程 正如你所看到的this http www androidpeople com wp cont
  • 如何使用抽屉布局左侧移动主要内容

    刚刚检查了如何使用 DrawerLayout 制作菜单here http www androidhive info 2013 11 android sliding menu using navigation drawer 但左侧菜单正在移动
  • Android NDK 模块依赖于另一个模块

    我有一个使用 Android NDK 编写的 Android 项目 在该项目中 我使用两个预构建的共享库 GpkgSDK 和 Spatialite 并构建另外两个共享库 WFSHelpers 和 com example gpkgviewer
  • Facebook 和 google 登录不适用于 beta 测试 APK

    Google 和 Facebook 登录在 Android Studio Tools 中工作正常 但它们不适用于测试版本或 Beta 测试 因此请给我任何解决此问题的线索 联系谷歌支持后我已经解决了这个问题 以下是此问题的修复方法 请按照步
  • android listactivity onCheckedChangeListener

    我正在开发一款应用程序 并且我有一个ListActivity 其选择模式设置为choice mode multiple 现在我想重写方法 当一项被调用时调用该方法选中 未选中 我发现onCheckChanged 方法仅针对RadioGrou
  • 旋转 LayerDrawable 中的单个 RotateDrawable

    我正在构建一个带有某种指南针的应用程序 并且我想使用 LayerDrawable 来绘制指南针并为其设置动画 LayerDrawable 由用于指南针背景的静态背景图像和用于旋转部分的 RotateDrawable 组成 这是我的可绘制资源
  • 如何在Android中将字体粗细设置为细、常规

    我有 3 个文本视图 我需要将它们的粗细设置为 轻 常规 和 压缩 有人可以帮助我如何在 Android 中实现这一目标吗 Use android textStyle on a TextView设置文本样式 例如bold italic或正常
  • 使用 Android 2.x 进行实时音频流传输

    我需要在 2 x 及更高版本的设备上播放直播 This http developer android com guide appendix media formats html声明不可能在 Android 2 x 的设备上播放直播 我在这里
  • 电子邮件发不出去,短信中的链接为 404

    我们刚刚完成将 Google AppInvites 集成到我们的应用程序中 我们注意到以下问题 电子邮件不会被发送 而发送的短信会带有一个链接 显示会出现 404 页面 仅当我设置 设置其他平台目标应用程序 对于 Android 和 iOS
  • 了解 FTS3/FTS4:什么是虚拟表并从中搜索具有可搜索的非虚拟表?

    阅读 SQLite3 的 FTS3 FTS4 文档的第一部分后 我现在感到非常困惑 我感到困惑的原因是散布在网络上的示例 我相信它没有涵盖所有可能的用例 另一个原因是我目前所处的情况 话虽如此 我有一个名为 Note 的表 其中包含两个类型

随机推荐

  • 如何在 AOSP 构建中添加 APK?

    我需要将一些第 3 方 APK 添加到我的 AOSP 版本中 我应该将这些 APK 保存在哪个文件夹中 以便在构建代码并创建映像时将其安装在模拟器中 看起来系统应用程序保存在包 应用程序文件夹 所以我需要知道第三方 APK 的保存位置 将第
  • 使用具有特定精度的小数作为 Dapper 的输出参数

    我正在评估 Dapper 作为自定义和繁琐代码的替代品 到目前为止 一切都非常好并且很有前途 但是今天早上我偶然发现了动态参数的问题并且找不到解决方案 存储过程计算客户的帐户余额和可用余额 并以两位小数输出参数返回其结果 这些小数在存储过程
  • 使用 Java8 计算 int 出现次数

    Java8 有没有更好的方法来计算 int 出现次数 int monthCounter new int 12 persons stream forEach person gt monthCounter person getBirthday
  • 两个 Wifi 设备之间的数据传输

    我在谷歌上搜索过 在 Android 2 2 和 sdk 8 中 如何在 Android 列表中使用 SSID 通过使用 SSID 应以编程方式获取特定的启用 WiFi 的设备属性 有了这个帮助 应该可以在 Android 中的两个支持 W
  • 如何在postgres中编写组合函数?

    我有一个这种形式的 PostgreSQL 表 base id int mods smallint 3 7 15 48 我需要填充这种形式的表 combo id int base id int mods smallint 1 3 2 3 7
  • pprint 对字典排序但不对集合排序?

    我知道字典和集合没有排序 因此相等的集合或字典可能会以不同的方式打印 所有测试都使用Python 3 6 1 gt gt gt for obj in 0 8 8 0 0 0 8 8 8 8 0 0 print obj 0 8 8 0 0 0
  • Jaxer 的优点和缺点

    我意识到这个问题已经之前问过 但已经一个月了 没有像样的回应 我正在看阿普塔纳的贾克瑟我发现这个概念非常令人兴奋 对于那些不熟悉的人来说 这里是一个快速概述 用他们的话来说 Jaxer 是 世界上第一个真正的 AJAX 服务器 它基于 Mo
  • geom_bar(position = "dodge") 中的条形宽度相同

    我想绘制具有相同宽度的条形图 这是我的最小示例代码 data lt data frame A letters 1 17 B sample 1 500 17 C c rep 1 5 rep 2 6 rep c 3 4 5 each 2 ggp
  • Android 应用程序在卸载并重新安装后会记住其数据

    在开发针对 4 1 以上所有版本的 Android 应用程序时 我发现卸载应用程序并再次安装不会清除其数据 该应用程序旨在存储其在第一个屏幕中询问的详细信息 在操作系统版本4 4 4中卸载并重新安装后 应用程序会提示用户填写数据 这是正常现
  • 地点自动完成状态代码 9001

    我试图使用 Google Play 服务中的 Places Autocomplete API 进行地点预测 但这是我得到的状态 Status statusCode unknown status code 9001 resolution nu
  • Apache Flink:如何为动态表启用“upsert 模式”?

    我看到好几处提到 更新插入模式 Flink 文档和 Flink 官方博客中基于唯一键的动态表 但是 我没有看到任何有关如何在动态表上启用此模式的示例 文档 例子 博客文章 当通过更新模式在流上定义动态表时 我们可以指定一个唯一键表上的属性
  • 转换说明符 %ju

    在下一页中 我找到了类似的代码 CERT INT15 C 使用 intmax t 或 uintmax t 对程序员定义的整数类型进行格式化 IO uintmax t temp if scanf ju temp 1 我不熟悉 ju 说明符 而
  • 如何删除 ActionBar 上应用程序图标和屏幕边缘之间的边距?

    我的应用程序有一个自定义主页图标 我希望它一直与操作栏的左侧对齐 以便它接触屏幕边缘 这可能吗 如果可以 该怎么做 我没有看到任何设置填充或边距以使其一直向左对齐的内容 我终于得到了这个 您需要使用自定义操作栏视图 其实很简单 这是使用 A
  • 使用枚举基编写枚举时出现不明确的重载,但仅使用 clang

    我想使用运算符 include
  • 如何在可绘制形状 XML 选择器中制作底部边框?

    我正在尝试为我的按钮创建一个具有不同状态的可绘制形状 所以我写了这个
  • Camel ActiveMQ + Spring boot不读取spring activemq配置

    我正在尝试使用 Spring Boot 1 5 2 RELEASE Camel Spring Boot Starter ActiveMQ 的非常简单的路线 即从特定队列读取然后记录它 但是 它看起来好像没有获取我的 spring activ
  • 想要对mongodb做增量备份。写日记?奥普洛格?

    我想每天备份单个 mongodb 数据库 可能使用 mongodump 为了不丢失任何数据 我希望这是增量的 因此如果在一天中间出现问题 我需要能够重播当天的更改 直到执行 mongorestore 后出现故障 我是否正确理解我需要为此使用
  • Google App Engine、JDO 和 equals/hashCode

    我在 Google App Engine 中有一个运行良好的应用程序 我意识到我忘记实现 equals 和 hashCode 的一个 JDO 增强对象 我需要在集合中使用该对象 所以我做了 我在这些实现中并没有真正做任何特别的事情 事实上我
  • PyCharm 错误:无法运行程序,错误=2,没有这样的文件或目录

    尝试在 PyCharm 中执行 Python 代码时收到以下错误消息 无法运行程序 Users x virtualenvs untitled bin python 在目录 Users x PycharmProjects untitled 中
  • getUidRxBytes() 和 getUidTxBytes() 在 Android 4.3 中始终返回 0

    我觉得我现在正在服用疯狂的药物 我的应用程序的一个特定部分几天来一直工作得很好 今天它停止工作了 我不明白为什么 我的代码的这一部分用于输出自启动以来每个特定应用程序发送和接收的总数据 现在 这些值始终显示为 0 有几件事可能会或可能不会影