diff options
author | Robin Lee <rgl@google.com> | 2016-03-24 12:02:50 +0000 |
---|---|---|
committer | Robin Lee <rgl@google.com> | 2016-04-07 15:14:11 +0000 |
commit | 26c68db9ccf1983f5d6e8a734f8ffccea3849f10 (patch) | |
tree | 3654c7a8ff8c3a9c035756adda6a1b79fcbdc4b1 /src/com/android/providers/downloads/RealSystemFacade.java | |
parent | a013d5b1a3a66297ea9471767fcbfef7f6ba4d69 (diff) | |
download | android_packages_providers_DownloadProvider-26c68db9ccf1983f5d6e8a734f8ffccea3849f10.tar.gz android_packages_providers_DownloadProvider-26c68db9ccf1983f5d6e8a734f8ffccea3849f10.tar.bz2 android_packages_providers_DownloadProvider-26c68db9ccf1983f5d6e8a734f8ffccea3849f10.zip |
Implement multi-network downloads
Downloads should use the default network for the caller. This prevents
applications from, for example, bypassing VPN by routing all requests
through the DownloadProvider.
Bug: 27074270
Change-Id: I7830226dd2910757d3a5c78f373330f84637ccfa
Diffstat (limited to 'src/com/android/providers/downloads/RealSystemFacade.java')
-rw-r--r-- | src/com/android/providers/downloads/RealSystemFacade.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/com/android/providers/downloads/RealSystemFacade.java b/src/com/android/providers/downloads/RealSystemFacade.java index b3f170fb..48df2a09 100644 --- a/src/com/android/providers/downloads/RealSystemFacade.java +++ b/src/com/android/providers/downloads/RealSystemFacade.java @@ -26,6 +26,7 @@ import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.net.ConnectivityManager; +import android.net.Network; import android.net.NetworkInfo; import android.telephony.TelephonyManager; import android.util.Log; @@ -59,6 +60,13 @@ class RealSystemFacade implements SystemFacade { } @Override + public Network getActiveNetwork(int uid) { + ConnectivityManager connectivity = + (ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE); + return connectivity.getActiveNetworkForUid(uid); + } + + @Override public boolean isActiveNetworkMetered() { final ConnectivityManager conn = ConnectivityManager.from(mContext); return conn.isActiveNetworkMetered(); |