, так как я в начале с Android-кодированием, я не решался опубликовать свой вопрос, но сейчас я нахожусь в точке, где я не могу сопротивляться.
У меня есть служба, которая включает светодиод камеры при создании:
@Override
public void onCreate() {
// make sure we don't sleep
this.pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
this.mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "SleepLED");
this.mTimer = new Timer();
this.mTimerTask = new TimerTask() {
public void run() {
// turn on the LED
setFlashlight(Camera.Parameters.FLASH_MODE_TORCH);
mWakeLock.acquire();
}
};
// Get the notification-service
this.mNM = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
// Display a notification about us starting. We put an icon in the status bar.
showNotification();
// Open camera
this.frontCam = Camera.open();
this.frontCamPara = frontCam.getParameters();
this.frontCam.lock();
// Schedule the TimerTask
this.mTimer.schedule(mTimerTask, 0);
}
Я могу сказать, что WakeLock получает, я тестировал с FULL_WAKE_LOCK, и он не выключался, учитывая время ожидания экрана.
Но так как экран не должен быть включен, я не хочу использовать полный wakelock.
CyanogenMod для моего телефона (HTC Legend) приносит приложение-факел, которое может делать то, что я хочу.
Его исходный код здесь:
https://github.com/CyanogenMod/android_packages_apps_Torch/tree/gingerbread/src/net/cactii/flash2
Я заметил, что с этим приложением свет на короткое время выключается, если это подсказка для кого-то, очевидно, не для меня; (
Я не ожидаю, что кто-то изменит мой код, чтобы делать то, что я хочу
но я был бы благодарен, если бы кто-нибудь мог указать мне правильное направление!
Greets
SJ