так как я только начинаю писать код для Android, я не решился опубликовать свой вопрос, но теперь я нахожусь на точка, где я не могу сопротивляться.
У меня есть служба, которая включает светодиод камеры onCreate:
@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, и он не отключился, учитывая время ожидания экрана. Но поскольку экран не должен быть включен, я не хочу использовать полную блокировку пробуждения.
Cyanogenmod для моего телефона (HTC Legend) содержит приложение torch, которое может делать то, что я хочу.
Его исходный код находится здесь:
https://github.com/CyanogenMod/android_packages_apps_Torch/ tree / gingerbread / src / net / cactii / flash2
Я заметил, что в этом приложении на короткое время гаснет свет, если это кому-то подсказка, очевидно, не мне; (
Я не ожидаю, что кто-то изменит мой код, чтобы делать то, что я хочу но я был бы благодарен, если бы кто-нибудь мог указать мне в правильном направлении!
Приветствует
SJ