먼저 안드로이드에서 네트워크 데이터 카운팅이 쉽지 않다고 말하겠습니다.이 정보를 깔끔하게 제공하는 API가 없기 때문입니다. 앱 개발자는 일부 Linux 내부 및 기타 문제를 다루어야합니다. 이것이 대부분의 트래픽 카운팅 앱이 모든 하드웨어 / 소프트웨어 조합에서 작동하지 않는 이유입니다. 예를 들어 Eclair와 함께 작동하지만 Galaxy S에서 Gingerbread와 함께 작동하지 않는 앱이 있습니다.
Android는 API 레벨 11 (Honeycomb)을 통해 4G (Long Term Evolution) 지원을 도입했습니다. 대부분의 트래픽 카운터는 기본 Linux 네트워크 인터페이스에서 볼륨 정보를 읽습니다. AFAIK에는 Wifi 용 인터페이스와 2G / 3G / 4G 용 인터페이스가 있습니다.
- 2G / 3G에서 분리 된 4G 데이터를 모니터링하기가 어렵습니다.
- 앱이 2G / 3G를 모니터링한다고하면 4G도 포함되어있을 가능성이 높습니다
- Android 4G API는 비교적 새롭습니다. 별도의 트래픽 카운팅 (가능한 경우)을 포함한 지원은 가까운 시일 내에 앱에 영향을 줄 것입니다.
다음은 내 Galaxy S의 인터페이스 및 트래픽을 보여주는 예제 목록입니다. pdp0은 모바일 이고 eth0은 wifi iterface입니다.
Interface name: lo
Bytes in: 204335770
Bytes out: 204335770
Interface name: svnet0
Bytes in: 669002
Bytes out: 38238
Interface name: ifb0
Bytes in: 0
Bytes out: 0
Interface name: ifb1
Bytes in: 0
Bytes out: 0
Interface name: usb0
Bytes in: 0
Bytes out: 0
Interface name: sit0
Bytes in: 0
Bytes out: 0
Interface name: ip6tnl0
Bytes in: 0
Bytes out: 0
Interface name: eth0
Bytes in: 9981470
Bytes out: 3524023
Interface name: pdp0
Bytes in: 1421620
Bytes out: 361198