3

我想实现这一点:

  • 当警报开始响起时,通知声音应持续播放,直到用户拖动通知栏。
  • 当我向下拖动通知栏时,声音应该停止播放。
4

2 回答 2

5

在通知中,很少有用于自动停止通知的标志,您必须使用它们。

  1. Notification.DEFAULT_SOUND:用于播放声音。

2.Notification.FLAG_INSISTENT:此标志使您的声音持续响起,直到您对通知进行了一​​些操作,即拖动条或单击条。

3.Notification.FLAG_AUTO_CANCEL:此标志用于在您看到通知后自动取消通知

于 2013-03-08T09:47:52.443 回答
1
why the nastiness with reflection?

因为它不是 Android SDK 的一部分。StatusBarManager只有对创建不可靠的应用程序感兴趣的人才会尝试与Android 源代码本身的外部进行交互。由于核心 Android 团队和设备制造商欢迎随时更改 SDK 之外的任何内容。

Why can't I find a reference to the StatusBarManager class directly?

因为它不是 Android SDK 的一部分。Android 框架中有很多很棒的类和方法都标有 @hide 注释,原因有很多:不愿意无限期地支持 API,“默默无闻的安全性”等。

Why is there not a constant in the Context class for the "statusbar" service?

因为它不是 Android SDK 的一部分。当然欢迎您向 AOSP 提供补丁,以使 StatusBarManager 被“提升”到与其他系统服务(例如 LocationManager、NotificationManager)相同的状态。如果 StatusBarManager 的情况仅仅是 SDK 在 2007 年创建之后的疏忽,那么您的补丁很可能会被接受,并且您会在即将发布的 Android 版本中看到这些变化。

为什么我不能直接找到对 StatusBarManager 类的引用?

于 2013-03-08T05:59:00.547 回答