如何查看我的 Android 应用程序的网络消耗?

How can I check my Android app's network consumption?

我需要检查我的 Android 应用程序的互联网消耗。在我的应用程序中,我调用了大量的 Web 服务 API。

我想知道我的应用在 kB/MB 中完整消耗了多少互联网资源。

我该如何检查?有什么工具可以检查吗?

Android Studio 2.0Android Monitor 中引入新的 Network 部分,这可以帮助您解决问题。

Tx == Transmit Bytes Rx == Receive Bytes

为了便于查看,您可以按照MD所说的在监视器中查看。

要存储,您可以通过编程方式进行

    int UID = android.os.Process.myUid();
    rxBytes += getUidRxBytes(UID);
    txBytes += getUidTxBytes(UID);
    /**
     * Read UID Rx Bytes
     *
     * @param uid
     * @return rxBytes
     */
    public Long getUidRxBytes(int uid) {
        BufferedReader reader;
        Long rxBytes = 0L;
        try {
            reader = new BufferedReader(new FileReader("/proc/uid_stat/" + uid
                    + "/tcp_rcv"));
            rxBytes = Long.parseLong(reader.readLine());
            reader.close();
        }
        catch (FileNotFoundException e) {
            rxBytes = TrafficStats.getUidRxBytes(uid);
            //e.printStackTrace();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
        return rxBytes;
    }

    /**
     * Read UID Tx Bytes
     *
     * @param uid
     * @return txBytes
     */
    public Long getUidTxBytes(int uid) {
        BufferedReader reader;
        Long txBytes = 0L;
        try {
            reader = new BufferedReader(new FileReader("/proc/uid_stat/" + uid
                    + "/tcp_snd"));
            txBytes = Long.parseLong(reader.readLine());
            reader.close();
        }
        catch (FileNotFoundException e) {
            txBytes = TrafficStats.getUidTxBytes(uid);
            //e.printStackTrace();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
        return txBytes;
    }
}

看看:Android Monitor.

因为您可以监控的主题很多。

你会发现 Network Monitor.

正在网络监视器中显示 运行 应用程序:

按照以下步骤操作:

  • 连接硬件设备。
  • 显示器Android显示器
  • 单击“网络”选项卡。
  • 打开一个应用程序项目并运行它在硬件设备上。
  • 要启动网络监视器,请单击暂停暂停图标以取消select它。

任何网络流量开始出现在网络监视器中:

网络监视器将设备传输和接收千字节数据所需的时间相加。 y 轴以千字节每秒为单位。 x轴以秒开始,然后是分秒,依此类推。

  • 要停止网络监视器,请再次单击暂停图标 select。

参考:Android Monitor

三种方式...

  1. 您可以在Device/Emulator中查看。转到设置 -> 数据使用,然后在列表中找到您的应用程序

  2. 在 Eclipse 中,selectDDMS(透视图)-> Select 您来自 Devices 的包(左侧)-> 单击 Network Statistics 选项卡- > 点击开始

  3. 如前所述,在 Android Studio 中,转到 Android 监视器(底部选项卡)-> 网络(选项卡)-> 查找 Tx (传输数据)/ Rx(接收数据)