手动切换notificationListenerService打开和关闭

时间:2015-02-05 16:33:29

标签: java android android-intent service android-service

您如何使用按钮手动打开和关闭notificationListenerService?

当服务开始时,应用程序被允许进入Security-> Notifications但是我不确定如何防止这种情况,而是手动执行。

我意识到有一些函数,比如startService(),但我不确定如何在服务中实现它。

由于

1 个答案:

答案 0 :(得分:0)

您可以使用PackageManager.setComponentEnabledSetting()以编程方式启用或禁用服务:

PackageManager packageManager = getPackageManager();
ComponentName notificationListenerService = new ComponentName(this,
    YourNotificationListenerService.class);

// The new state of the service - either enabled or disabled
int newState = enableService
    ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED
    : PackageManager.COMPONENT_ENABLED_STATE_DISABLE;

packageManager.setComponentEnabledSetting(
    notificationListenerService,
    newState,
    PackageManager.DONT_KILL_APP);