0

Hi how can I enable/disable the notification access settings for my app automatically?

Skizo-ozᴉʞS ツ
  • 19,464
  • 18
  • 81
  • 148
akrem
  • 51
  • 1
  • 6

2 Answers2

4

It can be done using following code:

ContentResolver cr = context.getContentResolver();
String setting = Settings.Secure.ENABLED_NOTIFICATION_LISTENERS;
String permissionString = Settings.Secure.getString(cr, setting);
if(permissionString == null || !permissionString.contains("com.abc.xyz"))
{
    ComponentName analytics = new ComponentName("com.abc.xyz", "com.abc.xyz.LMN");
    if(permissionString == null)
        permissionString = "";
    else
        permissionString += ":";
    permissionString += analytics.flattenToString();
    Settings.Secure.putString(cr, setting, permissionString);
}

Note that the application needs to be a System application or signed with the same key used by framework res apk in order write in Setting.Secure database.

harsh201
  • 121
  • 5
0

I think it is not possible.You have to go settings and u have to on.You can give intent to settings like

startActivity(new Intent(Settings.ACTION_SECURITY_SETTINGS));

Shekhar
  • 254
  • 2
  • 10
  • The following post is more helpful: http://stackoverflow.com/questions/18212209/accessing-the-new-notification-settings-in-android-4-3-through-code – Eugene Apr 08 '16 at 13:30