Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How setComponentEnabledSetting works?

I have enabled service in my AndroidManifest.xml. And I want to disable it from my code:

getPackageManager().setComponentEnabledSetting(
    serviceName, 
    PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
    PackageManager.DONT_KILL_APP);

If I disable the service like above, will it be disabled forever? Or not?

like image 225
shmakova Avatar asked Dec 14 '22 21:12

shmakova


2 Answers

Yes, settings are persistent until reinstall (delete application, install again) or new value is set again with setComponentEnabledSetting(). Additionally, as a border case, someone with super-user privileges can reset your app.

Please read this answer for details.

like image 141
Siegmeyer Avatar answered Dec 24 '22 00:12

Siegmeyer


It will be disabled until you enable it or the user uninstalls your app.

like image 24
CommonsWare Avatar answered Dec 23 '22 22:12

CommonsWare