通知监听器

时间:2016-12-12 12:32:36

标签: android start-activity startactivityforresult notification-listener

是否可以从通知侦听器设置屏幕获取结果?

目前,我的项目正在使用

startActivity(new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"));

我尝试使用startActivityForResult,但无法为我指定的requestCode获取RESULT_OK resultCode。

我想知道我的应用是否获得了通知访问权限(当我返回应用中的活动时,togglebutton已开启或关闭)

2 个答案:

答案 0 :(得分:2)

在onActivityResult中,您可以通过执行以下操作获取已启用列表的列表。

    String listeners = Settings.Secure.getString(getContentResolver(),
            "enabled_notification_listeners");
    if (listeners != null)
        CommonMethods.printLog("e",TAG,"Listeners are : " + listeners);

然后检查是否已获得访问权限。如果有访问权,您自己的监听器将在此列表中。

我无法从通知侦听器设置屏幕中获得RESULT_OK的结果。

答案 1 :(得分:0)

  

我尝试使用startActivityForResult,但无法为我指定的requestCode获取RESULT_OK resultCode。

很少有活动与startActivityForResult()一起使用。 两个方都必须实现对它的支持。除非某些文档(例如,在Intent操作上)表明活动有一些输出,否则您应该假设startActivityForResult()没有任何有用的影响。