public class NetworkPolicyManager extends Object
Modifier and Type | Field and Description |
---|---|
static String |
EXTRA_NETWORK_TEMPLATE
Intent extra that indicates which NetworkTemplate rule it
applies to. |
static int |
POLICY_NONE
No specific network policy, use system default.
|
static int |
POLICY_REJECT_METERED_BACKGROUND
Reject network usage on metered networks when application in background.
|
static int |
RULE_ALLOW_ALL
All network traffic should be allowed.
|
static int |
RULE_REJECT_METERED
Reject traffic on metered networks.
|
Constructor and Description |
---|
NetworkPolicyManager(INetworkPolicyManager service) |
Modifier and Type | Method and Description |
---|---|
static long |
computeLastCycleBoundary(long currentTime,
NetworkPolicy policy)
Compute the last cycle boundary for the given
NetworkPolicy . |
static long |
computeNextCycleBoundary(long currentTime,
NetworkPolicy policy) |
static void |
dumpPolicy(PrintWriter fout,
int policy) |
static void |
dumpRules(PrintWriter fout,
int rules) |
static NetworkPolicyManager |
from(Context context) |
NetworkPolicy[] |
getNetworkPolicies() |
boolean |
getRestrictBackground() |
int |
getUidPolicy(int uid) |
int[] |
getUidsWithPolicy(int policy) |
static boolean |
isUidValidForPolicy(Context context,
int uid)
Deprecated.
|
void |
registerListener(INetworkPolicyListener listener) |
void |
setNetworkPolicies(NetworkPolicy[] policies) |
void |
setRestrictBackground(boolean restrictBackground) |
void |
setUidPolicy(int uid,
int policy)
Set policy flags for specific UID.
|
static void |
snapToCycleDay(Time time,
int cycleDay)
Snap to the cycle day for the current month given; when cycle day doesn't
exist, it snaps to last second of current month.
|
void |
unregisterListener(INetworkPolicyListener listener) |
public static final int POLICY_NONE
public static final int POLICY_REJECT_METERED_BACKGROUND
public static final int RULE_ALLOW_ALL
public static final int RULE_REJECT_METERED
public static final String EXTRA_NETWORK_TEMPLATE
Intent
extra that indicates which NetworkTemplate
rule it
applies to.public static NetworkPolicyManager from(Context context)
public void setUidPolicy(int uid, int policy)
policy
- POLICY_NONE
or combination of flags like
POLICY_REJECT_METERED_BACKGROUND
.public int getUidPolicy(int uid)
public int[] getUidsWithPolicy(int policy)
public void registerListener(INetworkPolicyListener listener)
public void unregisterListener(INetworkPolicyListener listener)
public void setNetworkPolicies(NetworkPolicy[] policies)
public NetworkPolicy[] getNetworkPolicies()
public void setRestrictBackground(boolean restrictBackground)
public boolean getRestrictBackground()
public static long computeLastCycleBoundary(long currentTime, NetworkPolicy policy)
NetworkPolicy
. For
example, if cycle day is 20th, and today is June 15th, it will return May
20th. When cycle day doesn't exist in current month, it snaps to the 1st
of following month.public static long computeNextCycleBoundary(long currentTime, NetworkPolicy policy)
public static void snapToCycleDay(Time time, int cycleDay)
@Deprecated public static boolean isUidValidForPolicy(Context context, int uid)
setUidPolicy(int, int)
defined,
usually to protect critical system services.public static void dumpPolicy(PrintWriter fout, int policy)
public static void dumpRules(PrintWriter fout, int rules)