Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1274f2b4 authored by Jeff Sharkey's avatar Jeff Sharkey Committed by Android (Google) Code Review
Browse files

Merge "Include template in data warning/limit intents."

parents 0acb8d30 14711eb5
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package android.net;
import static android.text.format.Time.MONTH_DAY;

import android.content.Context;
import android.content.Intent;
import android.os.RemoteException;
import android.text.format.Time;

@@ -41,6 +42,28 @@ public class NetworkPolicyManager {
    /** Reject traffic on paid networks. */
    public static final int RULE_REJECT_PAID = 0x1;

    /**
     * {@link Intent} action launched when user selects {@link NetworkPolicy}
     * warning notification.
     */
    public static final String ACTION_DATA_USAGE_WARNING =
            "android.intent.action.DATA_USAGE_WARNING";

    /**
     * {@link Intent} action launched when user selects {@link NetworkPolicy}
     * limit notification.
     */
    public static final String ACTION_DATA_USAGE_LIMIT =
            "android.intent.action.DATA_USAGE_LIMIT";

    /**
     * {@link Intent} extra included in {@link #ACTION_DATA_USAGE_WARNING} and
     * {@link #ACTION_DATA_USAGE_LIMIT} to indicate which
     * {@link NetworkPolicy#networkTemplate} it applies to.
     */
    public static final String EXTRA_NETWORK_TEMPLATE =
            "android.intent.extra.NETWORK_TEMPLATE";

    private INetworkPolicyManager mService;

    public NetworkPolicyManager(INetworkPolicyManager service) {
+15 −11
Original line number Diff line number Diff line
@@ -25,6 +25,9 @@ import static android.Manifest.permission.READ_PHONE_STATE;
import static android.net.ConnectivityManager.CONNECTIVITY_ACTION;
import static android.net.NetworkPolicy.LIMIT_DISABLED;
import static android.net.NetworkPolicy.WARNING_DISABLED;
import static android.net.NetworkPolicyManager.ACTION_DATA_USAGE_LIMIT;
import static android.net.NetworkPolicyManager.ACTION_DATA_USAGE_WARNING;
import static android.net.NetworkPolicyManager.EXTRA_NETWORK_TEMPLATE;
import static android.net.NetworkPolicyManager.POLICY_NONE;
import static android.net.NetworkPolicyManager.POLICY_REJECT_PAID_BACKGROUND;
import static android.net.NetworkPolicyManager.RULE_ALLOW_ALL;
@@ -138,11 +141,6 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
    private static final String ATTR_UID = "uid";
    private static final String ATTR_POLICY = "policy";

    public static final String ACTION_DATA_USAGE_WARNING =
            "android.intent.action.DATA_USAGE_WARNING";
    public static final String ACTION_DATA_USAGE_LIMIT =
            "android.intent.action.DATA_USAGE_LIMIT";

    private static final long TIME_CACHE_MAX_AGE = DAY_IN_MILLIS;

    private final Context mContext;
@@ -402,9 +400,12 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
                builder.setTicker(title);
                builder.setContentTitle(title);
                builder.setContentText(body);
                builder.setContentIntent(PendingIntent.getActivity(mContext, 0,
                        new Intent(ACTION_DATA_USAGE_WARNING),
                        PendingIntent.FLAG_UPDATE_CURRENT));

                final Intent intent = new Intent(ACTION_DATA_USAGE_WARNING);
                intent.addCategory(Intent.CATEGORY_DEFAULT);
                intent.putExtra(EXTRA_NETWORK_TEMPLATE, policy.networkTemplate);
                builder.setContentIntent(PendingIntent.getActivity(
                        mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
                break;
            }
            case TYPE_LIMIT: {
@@ -426,9 +427,12 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
                builder.setTicker(title);
                builder.setContentTitle(title);
                builder.setContentText(body);
                builder.setContentIntent(PendingIntent.getActivity(mContext, 0,
                        new Intent(ACTION_DATA_USAGE_LIMIT),
                        PendingIntent.FLAG_UPDATE_CURRENT));

                final Intent intent = new Intent(ACTION_DATA_USAGE_LIMIT);
                intent.addCategory(Intent.CATEGORY_DEFAULT);
                intent.putExtra(EXTRA_NETWORK_TEMPLATE, policy.networkTemplate);
                builder.setContentIntent(PendingIntent.getActivity(
                        mContext, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT));
                break;
            }
        }