Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用ADB shell清除通知_Android_Shell_Adb_Android Notifications - Fatal编程技术网

Android 如何使用ADB shell清除通知

Android 如何使用ADB shell清除通知,android,shell,adb,android-notifications,Android,Shell,Adb,Android Notifications,我知道我可以解锁屏幕,拉下通知,然后按下清除通知按钮,但一定有办法通过ADB清除通知,对吗?我猜是通过'am'命令发送的一些意图,或者更简单的东西,但我似乎在网上找不到任何东西。我得到的只是Java代码,可用于apk 编辑:我可能应该提到我运行的是4.3,有时不同版本的命令可能会有所不同。试试: adb shell service call notification 1 如果您知道设备的类型和Android版本,则可以使用ADB清除通知,而无需使用根设备 想法是下拉通知,然后逐个刷掉所有通知

我知道我可以解锁屏幕,拉下通知,然后按下清除通知按钮,但一定有办法通过
ADB
清除通知,对吗?我猜是通过'am'命令发送的一些
意图,或者更简单的东西,但我似乎在网上找不到任何东西。我得到的只是
Java
代码,可用于
apk

编辑:我可能应该提到我运行的是4.3,有时不同版本的命令可能会有所不同。

试试:

adb shell service call notification 1

如果您知道设备的类型和Android版本,则可以使用ADB清除通知,而无需使用根设备

想法是下拉通知,然后逐个刷掉所有通知

  • 下拉:

    adb shell input swipe 0 0 0 300
    
  • 刷走:

    adb shell input swipe 0 400 300 400
    
  • 值得一提的是,(x,y)在不同类型的设备和安卓版本之间有所不同。您需要通过多次检查来确定什么是最适合您的x,y

    全文
    更多详细信息可在此处找到:

    $adb外壳服务调用通知1结果:包裹(FFFFFFF C ffffffff’……您需要root用户才能使用
    服务
    命令。除此之外,它应该在4.3中起作用。没问题,谢谢,接受答案。我没有在根目录下重新启动设备,而是使用su-c:adb shell su-c服务调用通知1@MishaP:可能只是我,但我认为您必须将
    服务呼叫通知1
    用引号括起来,才能使
    su-c
    起作用。我尝试过,但在我的情况下,它不起作用,因为并非所有通知都可以取消,例如首次启动设备时可能出现的Android向导通知。见:
    adb shell input swipe 0 0 0 300
    num=$(adb shell dumpsys notification | grep NotificationRecord | wc -l)
    echo $num
    while [ $num -gt 0 ]; do
        adb shell input swipe 0 400 300 400
        num=$(( $num - 1 ))
    done