Search in sources :

Example 1 with DataUsageController

use of com.android.settingslib.net.DataUsageController in project android_packages_apps_Settings by LineageOS.

the class DataPlanUsageSummary method onCreate.

@Override
public void onCreate(Bundle bundle) {
    super.onCreate(bundle);
    final Context context = getContext();
    NetworkPolicyManager policyManager = NetworkPolicyManager.from(context);
    mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
    mPolicyEditor = new NetworkPolicyEditor(policyManager);
    mDataUsageController = new DataUsageController(context);
    mDataInfoController = new DataUsageInfoController();
    int defaultSubId = DataUsageUtils.getDefaultSubscriptionId(context);
    boolean hasMobileData = DataUsageUtils.hasMobileData(context);
    if (defaultSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
        hasMobileData = false;
    }
    mDefaultTemplate = DataUsageUtils.getDefaultTemplate(context, defaultSubId);
    if (hasMobileData) {
        addDataPlanSection(defaultSubId);
    }
    if (DataUsageUtils.hasWifiRadio(context)) {
        addWifiSection();
    }
    if (hasEthernet(context)) {
        addEthernetSection();
    }
    setHasOptionsMenu(true);
}
Also used : Context(android.content.Context) NetworkPolicyEditor(com.android.settingslib.NetworkPolicyEditor) NetworkPolicyManager(android.net.NetworkPolicyManager) DataUsageController(com.android.settingslib.net.DataUsageController)

Example 2 with DataUsageController

use of com.android.settingslib.net.DataUsageController in project android_packages_apps_Settings by LineageOS.

the class SettingsDumpService method dumpDataUsage.

private JSONObject dumpDataUsage() throws JSONException {
    JSONObject obj = new JSONObject();
    DataUsageController controller = new DataUsageController(this);
    ConnectivityManager connectivityManager = getSystemService(ConnectivityManager.class);
    SubscriptionManager manager = SubscriptionManager.from(this);
    TelephonyManager telephonyManager = TelephonyManager.from(this);
    if (connectivityManager.isNetworkSupported(ConnectivityManager.TYPE_MOBILE)) {
        JSONArray array = new JSONArray();
        for (SubscriptionInfo info : manager.getAllSubscriptionInfoList()) {
            NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(telephonyManager.getSubscriberId(info.getSubscriptionId()));
            final JSONObject usage = dumpDataUsage(mobileAll, controller);
            usage.put("subId", info.getSubscriptionId());
            array.put(usage);
        }
        obj.put("cell", array);
    }
    if (connectivityManager.isNetworkSupported(ConnectivityManager.TYPE_WIFI)) {
        obj.put("wifi", dumpDataUsage(NetworkTemplate.buildTemplateWifiWildcard(), controller));
    }
    if (connectivityManager.isNetworkSupported(ConnectivityManager.TYPE_ETHERNET)) {
        obj.put("ethernet", dumpDataUsage(NetworkTemplate.buildTemplateEthernet(), controller));
    }
    return obj;
}
Also used : NetworkTemplate(android.net.NetworkTemplate) JSONObject(org.json.JSONObject) TelephonyManager(android.telephony.TelephonyManager) ConnectivityManager(android.net.ConnectivityManager) DataUsageController(com.android.settingslib.net.DataUsageController) JSONArray(org.json.JSONArray) SubscriptionInfo(android.telephony.SubscriptionInfo) SubscriptionManager(android.telephony.SubscriptionManager)

Example 3 with DataUsageController

use of com.android.settingslib.net.DataUsageController in project android_packages_apps_Settings by omnirom.

the class SettingsDumpService method dumpDataUsage.

private JSONObject dumpDataUsage() throws JSONException {
    JSONObject obj = new JSONObject();
    DataUsageController controller = new DataUsageController(this);
    ConnectivityManager connectivityManager = getSystemService(ConnectivityManager.class);
    SubscriptionManager manager = SubscriptionManager.from(this);
    TelephonyManager telephonyManager = TelephonyManager.from(this);
    if (connectivityManager.isNetworkSupported(ConnectivityManager.TYPE_MOBILE)) {
        JSONArray array = new JSONArray();
        for (SubscriptionInfo info : manager.getAllSubscriptionInfoList()) {
            NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(telephonyManager.getSubscriberId(info.getSubscriptionId()));
            final JSONObject usage = dumpDataUsage(mobileAll, controller);
            usage.put("subId", info.getSubscriptionId());
            array.put(usage);
        }
        obj.put("cell", array);
    }
    if (connectivityManager.isNetworkSupported(ConnectivityManager.TYPE_WIFI)) {
        obj.put("wifi", dumpDataUsage(NetworkTemplate.buildTemplateWifiWildcard(), controller));
    }
    if (connectivityManager.isNetworkSupported(ConnectivityManager.TYPE_ETHERNET)) {
        obj.put("ethernet", dumpDataUsage(NetworkTemplate.buildTemplateEthernet(), controller));
    }
    return obj;
}
Also used : NetworkTemplate(android.net.NetworkTemplate) JSONObject(org.json.JSONObject) TelephonyManager(android.telephony.TelephonyManager) ConnectivityManager(android.net.ConnectivityManager) DataUsageController(com.android.settingslib.net.DataUsageController) JSONArray(org.json.JSONArray) SubscriptionInfo(android.telephony.SubscriptionInfo) SubscriptionManager(android.telephony.SubscriptionManager)

Example 4 with DataUsageController

use of com.android.settingslib.net.DataUsageController in project android_packages_apps_Settings by omnirom.

the class SettingsDumpService method dumpDataUsage.

private JSONObject dumpDataUsage(NetworkTemplate template, DataUsageController controller) throws JSONException {
    JSONObject obj = new JSONObject();
    DataUsageController.DataUsageInfo usage = controller.getDataUsageInfo(template);
    obj.put("carrier", usage.carrier);
    obj.put("start", usage.startDate);
    obj.put("usage", usage.usageLevel);
    obj.put("warning", usage.warningLevel);
    obj.put("limit", usage.limitLevel);
    return obj;
}
Also used : JSONObject(org.json.JSONObject) DataUsageController(com.android.settingslib.net.DataUsageController)

Example 5 with DataUsageController

use of com.android.settingslib.net.DataUsageController in project android_packages_apps_Settings by omnirom.

the class BillingCycleSettings method onCreate.

@Override
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    mDataUsageController = new DataUsageController(getContext());
    Bundle args = getArguments();
    mNetworkTemplate = args.getParcelable(DataUsageList.EXTRA_NETWORK_TEMPLATE);
    addPreferencesFromResource(R.xml.billing_cycle);
    mBillingCycle = findPreference(KEY_BILLING_CYCLE);
    mEnableDataWarning = (SwitchPreference) findPreference(KEY_SET_DATA_WARNING);
    mEnableDataWarning.setOnPreferenceChangeListener(this);
    mDataWarning = findPreference(KEY_DATA_WARNING);
    mEnableDataLimit = (SwitchPreference) findPreference(KEY_SET_DATA_LIMIT);
    mEnableDataLimit.setOnPreferenceChangeListener(this);
    mDataLimit = findPreference(KEY_DATA_LIMIT);
}
Also used : Bundle(android.os.Bundle) DataUsageController(com.android.settingslib.net.DataUsageController)

Aggregations

DataUsageController (com.android.settingslib.net.DataUsageController)43 JSONObject (org.json.JSONObject)14 Context (android.content.Context)13 SubscriptionInfo (android.telephony.SubscriptionInfo)13 NetworkPolicyManager (android.net.NetworkPolicyManager)12 NetworkPolicyEditor (com.android.settingslib.NetworkPolicyEditor)12 SubscriptionManager (android.telephony.SubscriptionManager)8 ConnectivityManager (android.net.ConnectivityManager)7 NetworkTemplate (android.net.NetworkTemplate)7 Bundle (android.os.Bundle)7 TelephonyManager (android.telephony.TelephonyManager)7 JSONArray (org.json.JSONArray)7 Intent (android.content.Intent)1 SpannableString (android.text.SpannableString)1 IconCompat (androidx.core.graphics.drawable.IconCompat)1 ListBuilder (androidx.slice.builders.ListBuilder)1 SliceAction (androidx.slice.builders.SliceAction)1