Merge changes from topics "ms34-tm", "ms40-clock"
* changes: [MS09] Expose NetworkTemplate APIs which are needed by NetworkPolicy [MS34.1] Replace TelephonyManager#getSubscriberId(subId) with public API [MS40.1] Remove Clock dependencies from NetworkStatsService [MS27] Expose noteUntaggedSocket SystemApi
This commit is contained in:
@@ -83,10 +83,7 @@ public final class NetworkStats implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
// TODO: Rename TAG_ALL to TAG_ANY.
|
// TODO: Rename TAG_ALL to TAG_ANY.
|
||||||
public static final int TAG_ALL = -1;
|
public static final int TAG_ALL = -1;
|
||||||
/**
|
/** {@link #set} value for all sets combined, not including debug sets. */
|
||||||
* {@link #set} value for all sets combined, not including debug sets.
|
|
||||||
* @hide
|
|
||||||
*/
|
|
||||||
public static final int SET_ALL = -1;
|
public static final int SET_ALL = -1;
|
||||||
/** {@link #set} value where background data is accounted. */
|
/** {@link #set} value where background data is accounted. */
|
||||||
public static final int SET_DEFAULT = 0;
|
public static final int SET_DEFAULT = 0;
|
||||||
@@ -114,9 +111,6 @@ public final class NetworkStats implements Parcelable {
|
|||||||
SET_ALL,
|
SET_ALL,
|
||||||
SET_DEFAULT,
|
SET_DEFAULT,
|
||||||
SET_FOREGROUND,
|
SET_FOREGROUND,
|
||||||
SET_DEBUG_START,
|
|
||||||
SET_DBG_VPN_IN,
|
|
||||||
SET_DBG_VPN_OUT
|
|
||||||
})
|
})
|
||||||
public @interface State {
|
public @interface State {
|
||||||
}
|
}
|
||||||
@@ -131,10 +125,7 @@ public final class NetworkStats implements Parcelable {
|
|||||||
// TODO: Rename TAG_NONE to TAG_ALL.
|
// TODO: Rename TAG_NONE to TAG_ALL.
|
||||||
public static final int TAG_NONE = 0;
|
public static final int TAG_NONE = 0;
|
||||||
|
|
||||||
/**
|
/** {@link #metered} value to account for all metered states. */
|
||||||
* {@link #metered} value to account for all metered states.
|
|
||||||
* @hide
|
|
||||||
*/
|
|
||||||
public static final int METERED_ALL = -1;
|
public static final int METERED_ALL = -1;
|
||||||
/** {@link #metered} value where native, unmetered data is accounted. */
|
/** {@link #metered} value where native, unmetered data is accounted. */
|
||||||
public static final int METERED_NO = 0;
|
public static final int METERED_NO = 0;
|
||||||
@@ -152,10 +143,7 @@ public final class NetworkStats implements Parcelable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/** {@link #roaming} value to account for all roaming states. */
|
||||||
* {@link #roaming} value to account for all roaming states.
|
|
||||||
* @hide
|
|
||||||
*/
|
|
||||||
public static final int ROAMING_ALL = -1;
|
public static final int ROAMING_ALL = -1;
|
||||||
/** {@link #roaming} value where native, non-roaming data is accounted. */
|
/** {@link #roaming} value where native, non-roaming data is accounted. */
|
||||||
public static final int ROAMING_NO = 0;
|
public static final int ROAMING_NO = 0;
|
||||||
@@ -172,10 +160,7 @@ public final class NetworkStats implements Parcelable {
|
|||||||
public @interface Roaming {
|
public @interface Roaming {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** {@link #onDefaultNetwork} value to account for all default network states. */
|
||||||
* {@link #onDefaultNetwork} value to account for all default network states.
|
|
||||||
* @hide
|
|
||||||
*/
|
|
||||||
public static final int DEFAULT_NETWORK_ALL = -1;
|
public static final int DEFAULT_NETWORK_ALL = -1;
|
||||||
/** {@link #onDefaultNetwork} value to account for usage while not the default network. */
|
/** {@link #onDefaultNetwork} value to account for usage while not the default network. */
|
||||||
public static final int DEFAULT_NETWORK_NO = 0;
|
public static final int DEFAULT_NETWORK_NO = 0;
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package android.net;
|
package android.net;
|
||||||
|
|
||||||
|
import static android.annotation.SystemApi.Client.MODULE_LIBRARIES;
|
||||||
import static android.net.ConnectivityManager.TYPE_BLUETOOTH;
|
import static android.net.ConnectivityManager.TYPE_BLUETOOTH;
|
||||||
import static android.net.ConnectivityManager.TYPE_ETHERNET;
|
import static android.net.ConnectivityManager.TYPE_ETHERNET;
|
||||||
import static android.net.ConnectivityManager.TYPE_MOBILE;
|
import static android.net.ConnectivityManager.TYPE_MOBILE;
|
||||||
@@ -39,7 +40,9 @@ import static android.net.NetworkStats.ROAMING_YES;
|
|||||||
import android.annotation.IntDef;
|
import android.annotation.IntDef;
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
import android.annotation.Nullable;
|
import android.annotation.Nullable;
|
||||||
|
import android.annotation.SystemApi;
|
||||||
import android.compat.annotation.UnsupportedAppUsage;
|
import android.compat.annotation.UnsupportedAppUsage;
|
||||||
|
import android.net.wifi.WifiInfo;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
@@ -70,7 +73,7 @@ import java.util.TreeSet;
|
|||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
// @SystemApi(client = MODULE_LIBRARIES)
|
@SystemApi(client = MODULE_LIBRARIES)
|
||||||
public final class NetworkTemplate implements Parcelable {
|
public final class NetworkTemplate implements Parcelable {
|
||||||
/** @hide */
|
/** @hide */
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
@@ -572,6 +575,7 @@ public final class NetworkTemplate implements Parcelable {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Get subscriber Id of the template.
|
* Get subscriber Id of the template.
|
||||||
|
* @hide
|
||||||
*/
|
*/
|
||||||
@Nullable
|
@Nullable
|
||||||
@UnsupportedAppUsage
|
@UnsupportedAppUsage
|
||||||
@@ -588,26 +592,19 @@ public final class NetworkTemplate implements Parcelable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Wifi Network Key of the template. See {@link WifiInfo#getCurrentNetworkKey()}.
|
* Get the set of Wifi Network Keys of the template.
|
||||||
|
* See {@link WifiInfo#getCurrentNetworkKey()}.
|
||||||
*/
|
*/
|
||||||
@Nullable
|
@NonNull
|
||||||
public String getWifiNetworkKey() {
|
|
||||||
return CollectionUtils.isEmpty(mMatchWifiNetworkKeys) ? null : mMatchWifiNetworkKeys[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get set of Wifi Network Keys of the template.
|
|
||||||
*/
|
|
||||||
@Nullable
|
|
||||||
public Set<String> getWifiNetworkKeys() {
|
public Set<String> getWifiNetworkKeys() {
|
||||||
return new ArraySet<>(Arrays.asList(mMatchWifiNetworkKeys));
|
return new ArraySet<>(Arrays.asList(mMatchWifiNetworkKeys));
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
// TODO: Remove this and replace all callers with {@link #getWifiNetworkKey()}.
|
// TODO: Remove this and replace all callers with {@link #getWifiNetworkKeys()}.
|
||||||
@Nullable
|
@Nullable
|
||||||
public String getNetworkId() {
|
public String getNetworkId() {
|
||||||
return getWifiNetworkKey();
|
return getWifiNetworkKeys().isEmpty() ? null : getWifiNetworkKeys().iterator().next();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -113,7 +113,6 @@ import android.net.Uri;
|
|||||||
import android.net.netstats.provider.INetworkStatsProvider;
|
import android.net.netstats.provider.INetworkStatsProvider;
|
||||||
import android.net.netstats.provider.INetworkStatsProviderCallback;
|
import android.net.netstats.provider.INetworkStatsProviderCallback;
|
||||||
import android.net.netstats.provider.NetworkStatsProvider;
|
import android.net.netstats.provider.NetworkStatsProvider;
|
||||||
import android.os.BestClock;
|
|
||||||
import android.os.Binder;
|
import android.os.Binder;
|
||||||
import android.os.DropBoxManager;
|
import android.os.DropBoxManager;
|
||||||
import android.os.Environment;
|
import android.os.Environment;
|
||||||
@@ -149,6 +148,7 @@ import android.util.proto.ProtoOutputStream;
|
|||||||
import com.android.internal.annotations.GuardedBy;
|
import com.android.internal.annotations.GuardedBy;
|
||||||
import com.android.internal.annotations.VisibleForTesting;
|
import com.android.internal.annotations.VisibleForTesting;
|
||||||
import com.android.internal.util.FileRotator;
|
import com.android.internal.util.FileRotator;
|
||||||
|
import com.android.net.module.util.BestClock;
|
||||||
import com.android.net.module.util.BinderUtils;
|
import com.android.net.module.util.BinderUtils;
|
||||||
import com.android.net.module.util.CollectionUtils;
|
import com.android.net.module.util.CollectionUtils;
|
||||||
import com.android.net.module.util.NetworkStatsUtils;
|
import com.android.net.module.util.NetworkStatsUtils;
|
||||||
|
|||||||
@@ -101,7 +101,8 @@ public class NetworkStatsSubscriptionsMonitor extends
|
|||||||
// with empty IMSI. So filter the subs w/o a valid IMSI to prevent such registration.
|
// with empty IMSI. So filter the subs w/o a valid IMSI to prevent such registration.
|
||||||
final List<Pair<Integer, String>> filteredNewSubs = new ArrayList<>();
|
final List<Pair<Integer, String>> filteredNewSubs = new ArrayList<>();
|
||||||
for (final int subId : newSubs) {
|
for (final int subId : newSubs) {
|
||||||
final String subscriberId = mTeleManager.getSubscriberId(subId);
|
final String subscriberId =
|
||||||
|
mTeleManager.createForSubscriptionId(subId).getSubscriberId();
|
||||||
if (!TextUtils.isEmpty(subscriberId)) {
|
if (!TextUtils.isEmpty(subscriberId)) {
|
||||||
filteredNewSubs.add(new Pair(subId, subscriberId));
|
filteredNewSubs.add(new Pair(subId, subscriberId));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user