당신은 PendingIntent
와 AlarmManager
를 사용하고 Activity.onNewIntent
방법에 카메라 캡처를 복용 처리 할 수 있지만, 그것은이다
정확하게, 나는 다음과 같은 하나보다 에 다른 솔루션을 사용하고 싶습니다 당신이 해결하려고하는 것에 대한 매우 혼란스러운 해결책 (AlarmManager
의 훨씬 더 나은 사용은 사용자가 당신의 응용 프로그램을 나가더라도 수행되도록 작업을 스케쥴하는 것입니다). 이 솔루션은 또한 더 많은 코드가 필요하며 정확도/신뢰성이 떨어지며 효율성이 떨어집니다 (Handler
사용).
편집 : 과 함께 Runnable
을 사용할 수도 있습니다.
(개인 의견은 다음과 같습니다.) 시간이 초과 된 작업을 수행하기 위해 Android에서 사용할 수있는 API를 탐색하는 중이라면 괜찮습니다. AlarmManager
을 사용하여 이미 실행중인 Activity
시간 내에 작업을 예약하지 마십시오. 당신은 조금 더 정리 코드를 갖고 싶어
, 당신은 Runnable
를 구현하는 내부 클래스를 만들고이 같은 액션 예약 할 수 있습니다
class MyCameraActivity extends Activity
{
class TakePictureTask implements Runnable
{
public void run()
{
MyCameraActivity.this.takePicture();
}
}
void scheduleCameraShot()
{
(new Handler(this.getMainLooper())).postDelayed(new TakePictureTask(), 2000);
}
}
이 목적을 위해 핸들러를 사용을 – Raghunandan
감사 @Raghunandan에 대한 귀하의 회신하지만 난 직접 핸들러를 사용하고 싶지 않아요. 내 질문을 조금 수정했습니다. – user2923045
왜 다른 솔루션을 사용 하시겠습니까? – npace