Nexus 5通知灯颜色

时间:2014-07-31 12:35:56

标签: java android colors notifications light

我使用的是Nexus 5(SDK 4.4.4),我尝试发送一些不同颜色的通知。我尝试用简单的代码测试颜色:

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    NotificationManager notif = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    for (int i = 0; i < 8; i++) {
        notif.cancel(1); // clear previous notification
        final Notification notification = new Notification();
        if (i == 0){
            notification.ledARGB = Color.MAGENTA;
        }else if (i == 1){
            notification.ledARGB = Color.BLUE;
        }else if (i == 2){
            notification.ledARGB = Color.CYAN;
        }else if (i == 3){
            notification.ledARGB = Color.GRAY;
        }else if (i == 4){
            notification.ledARGB = Color.GREEN;
        }else if (i == 5){
            notification.ledARGB = Color.RED;
        }else if (i == 6){
            notification.ledARGB = Color.WHITE;
        }else if (i == 7){
            notification.ledARGB = Color.YELLOW;
        }
        notification.ledOnMS = 1000;
        notification.flags |= Notification.FLAG_SHOW_LIGHTS;
        notif.notify(1, notification);
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

此代码应发送8种不同的颜色通知。我的手机实际上做的是复制3种颜色,蓝色,红色和洋红色。剩下的颜色似乎不起作用。

当然,其他颜色应该可以正常工作,因为Light Flow应用程序成功发送绿色等颜色的通知。

这可能是什么问题?还有其他代码可以实际运行吗?

2 个答案:

答案 0 :(得分:0)

你可以阅读以下内容:https://developer.android.com/preview/notifications.html,如果你看到那里,你可以看到谷歌不建议改变通知的颜色,他们建议使用透明色,我引用:

&#34;的唐&#39;吨

使用颜色区分您的应用与其他应用。通知图标应仅为白色透明背景图像。 &#34;

- EDIT-- 我的错误,我还没有看到你想改变led颜色,

但如果您只想更改LED颜色,请尝试使用代码:notification.ledARGB = 0xFFff0000;作为您想要的颜色。

答案 1 :(得分:-1)

我再次尝试编译这个程序,我找到了解决方案。

对于遇到同样问题的其他人,在我多次运行程序后,颜色开始显示,并且在重新启动手机后,此程序现在可以正常运行。