응용 프로그램과 관계없이 매시간 메서드를 트리거하는 방법은 활성 상태이거나 배경 또는 종료됩니다. 메서드는 매시간마다 트리거해야합니다.앱 활성화, 백그라운드 또는 종료에 관계없이 매시간 메서드를 트리거하는 방법
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:60*60 target:self selector:@selector(callYourMethod:) userInfo:nil repeats:YES];
10 분 후에 NSTimer가 작동하지 않는다고 들었습니다.
수있는 하나의 충고 나 방법 로컬 나쁜 생각이 방법에게 아이폰 OS Objecitve-C
확실한 방법이 없습니다. 타이머에 시간 제한이 있다고 말한 사람이나 컨텍스트가 누락되었습니다. 앱이 종료되면 푸시 킷 알림과 같은 외부 트리거를 사용하여 앱을 다시 시작해야합니다. 배경에있을 때와 거의 비슷하지만 깨어 난 더 많은 옵션이 있습니다. PK가 가장 가까워 지긴하지만 100 % 신뢰도는 없습니다. 물론 응용 프로그램은 VoIP 응용 프로그램 이어야만 사용할 수 있습니다. – Avi
매시간 무언가를해야합니까? 모바일 앱의 디자인이 좋지 않기 때문입니다. 이렇게하면 배터리가 소모됩니다. 그리고 사용자가 앱을 죽이면 작업이 완료되지 않습니다. 이 서버 측을 수행하고 필요할 경우 푸시 알림을 사용하여 앱에 푸시하는 것이 더 좋습니다. 또한 VOIP, 오디오, 위치 및 액세서리 앱만 백그라운드에서 실행할 수 있습니다. 백그라운드에서 앱을 실행하도록 이들 중 하나를 잘못 사용하면 앱이 거부됩니다. – rckoenes
타이머는 주 스레드에서 작동합니다. 응용 프로그램이 백그라운드로 들어가면 타이머가 유효하지 않게됩니다. 따라서 응용 프로그램이 백그라운드로 들어가면 같은 작업을 수행 할 수 없습니다. –