这个问题与Lollipop之前的Android版本有关。对于Lollipop API,请检查相关问题:

  • Lollipop API for controlling the Alarm icon in status bar


  • 我想知道如何打开/关闭状态栏中的系统“警报”图标,如下图所示:

    根据我对系统的了解以及过去所读的内容,它由内置的系统闹钟应用程序控制。而且,第三方应用程序无法在没有开启Root的设备上对其进行控制。没有理由我们应该能够控制它。
  • Android, the alarm icon on the right side of notification area?

  • 但是, Timely v1.2.7可以在我未 Root 的Galaxy Nexus v4.2.1和Nexus 5 v4.4.2上控制此图标。因此有可能。

    我想知道在没有开启Root的设备上执行此操作的技术是什么。我怀疑有黑客或未公开的代码,但仍对有人能透露一些信息仍然感兴趣。

    最佳答案

    v5 Lollipop

    Lollipop 最终删除了那些私有(private)API功能。此技术从v5起不再有效。

    我专门发布了一个有关 Lollipop 的新问题,上面有一个答案:

  • Lollipop API for controlling the Alarm icon in status bar

  • Lollipop 前

    这是使用私有(private)api 属性完成的:
    protected void setStatusBarIcon(boolean enabled)
    {
        Intent alarmChanged = new Intent("android.intent.action.ALARM_CHANGED");
        alarmChanged.putExtra("alarmSet", enabled);
        sendBroadcast(alarmChanged);
    }
    

    感谢Andy Savage在此Google网上论坛线程上:
  • AlarmManager with alarm icon
  • direct link to archived post


  • 重要说明:如上所述,使用私有(private)的,未记录的属性。正如Dianne Hackborn在同一主题中指出的那样,所有常规警告都适用于此:

    关于android - 控制状态栏中的“警报”图标,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23105038/

    10-10 20:09