是否有adb/shell命令列出android的通知栏上的项目?

L. *_*mes 4 notifications android adb

有人能告诉我是否有办法获得当前正在通知栏中显示的项目的完整列表?我正在尝试编写一个界面,根据发出通知的特定应用程序触发通知到我的PC.

我使用adb cli工具对类似内容的唯一命中是使用adb shell命令接收推送通知,该命令似乎试图从特定应用程序获取通知.

我发现的其他参考与实际的android编程有关,并将自己的通知发送到栏.


为了格式化,我正在重复我对fRoStBiT的评论,他在答案中提供了资源.以下cli提供了具体项目:

$ adb shell dumpsys notification | egrep NotificationRecord | awk -F\| '{print $2}'
Run Code Online (Sandbox Code Playgroud)

Vla*_*ich 17

您可以使用

adb shell dumpsys notification
Run Code Online (Sandbox Code Playgroud)

它显示有关当前显示的通知的详细信息.


小智 9

adb shell dumpsys notification | grep ticker | cut -d= -f2
Run Code Online (Sandbox Code Playgroud)

显示了屏幕文本的一些描述。 tickerText似乎是包含通知文本的属性名称


And*_*man 7

在 Android >= 6 上获取通知附加功能使用此命令

adb shell dumpsys notification --noredact
Run Code Online (Sandbox Code Playgroud)

您可以在该extras部分看到的完整通知文本:


      extras={
          android.title=String (Bring The Rain)
          android.reduced.images=Boolean (true)
          android.subText=null
          android.template=String (android.app.Notification$MediaStyle)
          toSingleLine=Boolean (false)
          android.text=String (Upon A Burning Body)
          android.appInfo=ApplicationInfo (ApplicationInfo{c8165e6 org.telegram.messenger})
          android.showWhen=Boolean (false)
          android.largeIcon=Icon (Icon(typ=BITMAP size=100x100))
          android.mediaSession=Token (android.media.session.MediaSession$Token@608a746)
          gameDndOn=Boolean (false)
          android.compactActions=int[] (3)
            [0] 0
            [1] 1
            [2] 2
      }
Run Code Online (Sandbox Code Playgroud)