2

これは通知を設定する際の私のコードであり、動作します:

@Override
    public void onReceive(Context context, Intent intent) {

        category = (String) intent.getExtras().get("CATEGORY");
        notes = (String) intent.getExtras().get("NOTES");

        PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
                new Intent(context, MainActivity.class), 0);

        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
                context).setSmallIcon(R.drawable.ic_launcher)
                .setContentTitle(category).setContentText(notes);

        mBuilder.setContentIntent(contentIntent);
        mBuilder.setDefaults(Notification.DEFAULT_SOUND);
        mBuilder.setAutoCancel(true);

        NotificationManager mNotificationManager = (NotificationManager) context
                .getSystemService(Context.NOTIFICATION_SERVICE);
        mNotificationManager.notify(1, mBuilder.build());       
    }

これは、BroadcastReceiver のコード スニペットです。この BroadcastReceiver が呼び出されるたびに、ステータス バーに通知が表示されます。デバッグ中に、画面がオフになっていて新しい通知が行われると、画面がオンにならないことに気付きました。これを行う方法はありますか?新しい通知が行われ、画面がオフになっているときはいつでも、一定時間オンにする必要があります。新しいSMSを受信するようにシミュレートします。

4

3 に答える 3

4

これを試して:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Tag");
wl.acquire(3000);
wl.release();
于 2013-05-15T09:53:10.883 に答える