8

I wish to open the Data Usage screen from an intent. I've searched the android.provider.Settings class for an appropriate intent. Tried :

new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS)
new Intent(android.provider.Settings.ACTION_DATA_ROAMING_SETTINGS)

Which doesn't lead to the the data usage.

enter image description here

I'm well aware of all the links which has this question, but none has a response. How to open System Data Usage Activity in android? Android programming to open Data Usage setting page etc...

Community
  • 1
  • 1
Dus
  • 4,052
  • 5
  • 30
  • 49

2 Answers2

19

You can use this to achieve the above !! I tested this on Kitkat and lollipop devices , On both of them its working

    Intent intent = new Intent();
    intent.setComponent(new ComponentName("com.android.settings","com.android.settings.Settings$DataUsageSummaryActivity"));
    startActivity(intent);
Punit Sharma
  • 2,951
  • 1
  • 20
  • 35
1
private static final String SETTINGS_PACKAGE = "com.android.settings";
private static final String SETTINGS_CLASS_DATA_USAGE_SETTINGS = "com.android.settings.Settings$DataUsageSummaryActivity";

try {
            final Intent intent = new Intent(Intent.ACTION_MAIN, null);
            final ComponentName cn = new ComponentName(SETTINGS_PACKAGE, SETTINGS_CLASS_DATA_USAGE_SETTINGS);
            intent.setComponent(cn);
            context.startActivity(intent);
        } catch (ActivityNotFoundException e) {
            Log.v(TAG, "Data settings usage Activity is not present");
        }
Nikhil
  • 3,711
  • 8
  • 32
  • 43
Navas pk
  • 331
  • 3
  • 17