Chromium Code Reviews| Index: chrome/browser/metrics/metrics_network_observer.cc |
| diff --git a/chrome/browser/metrics/metrics_network_observer.cc b/chrome/browser/metrics/metrics_network_observer.cc |
| index 9717d1d837236d1067bff08a32626a3571acfad3..dd4fcf2042cf58288ea9a946d705b782518af0fc 100644 |
| --- a/chrome/browser/metrics/metrics_network_observer.cc |
| +++ b/chrome/browser/metrics/metrics_network_observer.cc |
| @@ -9,6 +9,20 @@ |
| #include "base/threading/sequenced_worker_pool.h" |
| #include "content/public/browser/browser_thread.h" |
| +#if defined(OS_ANDROID) |
| +#include "content/common/android/device_telephony_info.h" |
| +#endif |
| + |
| +#if defined(OS_ANDROID) |
| +namespace { |
| + |
| + std::string GetAndroidNetworkOperatorID() { |
| + content::DeviceTelephonyInfo device_info; |
| + return device_info.GetNetworkOperator(); |
|
bengr
2014/04/25 20:39:41
Sorry to have not caught this in your last CL, but
bolian
2014/04/25 23:33:05
It is existing code. I added a method. Anyway, it
|
| + } |
| + |
| +} |
| +#endif |
| MetricsNetworkObserver::MetricsNetworkObserver() |
| : weak_ptr_factory_(this), |
| @@ -18,6 +32,7 @@ MetricsNetworkObserver::MetricsNetworkObserver() |
| net::NetworkChangeNotifier::AddConnectionTypeObserver(this); |
| connection_type_ = net::NetworkChangeNotifier::GetConnectionType(); |
| ProbeWifiPHYLayerProtocol(); |
| + GetNetworkOperatorID(); |
| } |
| MetricsNetworkObserver::~MetricsNetworkObserver() { |
| @@ -41,6 +56,7 @@ void MetricsNetworkObserver::OnConnectionTypeChanged( |
| connection_type_ = type; |
| ProbeWifiPHYLayerProtocol(); |
| + GetNetworkOperatorID(); |
| } |
| SystemProfileProto::Network::ConnectionType |
| @@ -104,3 +120,17 @@ void MetricsNetworkObserver::OnWifiPHYLayerProtocolResult( |
| wifi_phy_layer_protocol_ = mode; |
| } |
| +void MetricsNetworkObserver::GetNetworkOperatorID() { |
| +#if defined(OS_ANDROID) |
| + PostTaskAndReplyWithResult( |
| + content::BrowserThread::GetBlockingPool(), |
| + FROM_HERE, |
| + base::Bind(&GetAndroidNetworkOperatorID), |
| + base::Bind(&MetricsNetworkObserver::OnNetworkOperatorID, |
| + weak_ptr_factory_.GetWeakPtr())); |
| +#endif |
| +} |
| + |
| +void MetricsNetworkObserver::OnNetworkOperatorID(std::string id) { |
|
bengr
2014/04/25 20:39:41
const std::string&
bolian
2014/04/25 23:33:05
reverted in the new CL.
|
| + network_operator_id_ = id; |
| +} |