我尝试将LED设置为不同的颜色和速度,以便我在一台设备(运行Lolipop)上工作,但在其他设备上运行(运行Marshmallow)。
这可能是因为Android版本或我的代码设置不正确吗?
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context)
.setContentTitle(title)
.setSmallIcon(notify)
.setContentText(body)
.setPriority(2)
.setTicker("Notification received")
.setAutoCancel(true)
.setLights(Color.WHITE, 250, 250)
.setVibrate(pattern);
请原谅我的英语和可能不正确的问题格式。
非常感谢你解释我的问题!
答案 0 :(得分:1)
我有一个类似的问题是在将应用推送给用户很久之后发现的。正如CommonsWare所说,我强烈建议您不要太依赖振动或LED。您可以使用它,但不要将其用作区分通知的主要功能。
至于它不能始终如一地工作的原因,这只是普通的Android行为。不同的制造商以不同的方式创建他们的设备,而像这样影响硬件的代码并不总能提供一致的结果。
但是,我会说,我的特定问题是通过使用:
来解决的notifications.ledARGB = 0xffffffff;
用于白色LED。这对于我在AT& T的Galaxy S6上的Marshmallow版本起作用,而不同的代码适用于我当时运行Lolipop的Note 3 Verizon设备。 (我不记得我用过的确切代码)。
无论哪种方式,尝试一些不同的东西。您可能需要相应地对代码和代码进行版本检查。
免责声明:我不是专家。我编码是一种爱好,所以如果其他人有更好的答案和更高的代表,你很可能想要回答他们的问题;)