Android - получение блокировки удержания от приемника вещания - PullRequest
0 голосов
/ 13 августа 2010

Я пытаюсь установить функцию пробуждения в приемнике вещания, чтобы приложение будильника могло разбудить телефон из спящего режима.Он вылетает в следующей строке кода ниже:

PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");

Есть идеи, что происходит?Есть лучший способ сделать это?Спасибо!

import android.content.BroadcastReceiver;

import android.content.Context;

import android.content.Intent;

import android.os.PowerManager;

public class RepeatingAlarmReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) { 
         AlarmAlertWakeLock.acquireCpuWakeLock(context);
         PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
         PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Tag");
         wl.acquire();

    }

}

Ответы [ 2 ]

1 голос
/ 13 августа 2010

Убедитесь, что у вас есть разрешение WAKE_LOCK (проверьте AndroidManifest.xml).

0 голосов
/ 13 августа 2010

Вы используете контекст метода приема для получения менеджера питания, и я думаю, что это контекст отправителя намерения, поэтому используйте контекст вашего приложения, который должен работать.

...