1

我想在android中触发通知时显示灯光

我尝试使用以下代码,但屏幕不显示灯光

if(isBlink) {
        notification.ledOffMS=25; 
        notification.ledOnMS=100;   
        notification.ledARGB=Color.RED; 
        notification.flags=notification.flags|Notification.FLAG_SHOW_LIGHTS;
}
4

3 回答 3

1

我不确定您的代码和内部逻辑。但是以下问题可能会帮助您进行调试。

  1. 你如何触发 isBlink ?这是通过一些信号处理程序吗?

  2. 通知参数设置后如何得到确认?我想您正在使用一些计时器或循环逻辑。

于 2011-04-21T12:56:11.313 回答
0

尝试在屏幕关闭的情况下接收此通知。我认为谷歌有这个要求在 LED 上显示灯。

于 2011-08-04T14:52:09.330 回答
0

尝试在您的生成通知代码中执行以下操作。

PowerManager pm = (PowerManager) context
                .getSystemService(Context.POWER_SERVICE);

        boolean isScreenOn = pm.isScreenOn();

        Log.e("screen on.................................", "" + isScreenOn);

        if (isScreenOn == false) 
        {

            WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK
                    | PowerManager.ACQUIRE_CAUSES_WAKEUP
                    | PowerManager.ON_AFTER_RELEASE, "MyLock");

            wl.acquire(10000);
            WakeLock wl_cpu = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,
                    "MyCpuLock");

            wl_cpu.acquire(10000);
        }

您的 manifest.xml 文件中需要以下权限

<permission
        android:name="com.manish.gcm.push.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="com.manish.gcm.push.permission.C2D_MESSAGE" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
于 2015-09-18T12:23:00.497 回答