2014-10-07 5 views
3

저는 주기적으로 (하루에 한 번) 백그라운드에서 GET 요청을 수행하고 해당 데이터를 기반으로 알림을 예약하려고합니다. 문서에 따르면, 가능해야하지만, 실제로이 일을하는 사람의 코드 예제는 찾을 수 없습니다. 누구든지 이것을 보여주는 신속한 코드의 방향으로 나를 가리킬 수 있습니까? 주기적으로 깨워 시스템을 요청할 수있는 새로운 콘텐츠를 확인해야 앱 그들이가 작동을 가져 오기 시작할 수 있도록 : 가져 오기 소에ios8 기회주의 배경 가져 오기 GET 요청

문서는 기회 주의적 https://developer.apple.com/library/ios/documentation/iphone/conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH4-SW56

문서에서

관련 단락 내용의 금액 그 내용. 이 모드를 지원하려면 Xcode 프로젝트의 Capabilities 탭에있는 Background modes 섹션에서 Background fetch 옵션을 활성화하십시오. 앱의 Info.plist 파일에 가져 오기 값과 함께 UIBackgroundModes 키를 포함시켜이 지원을 활성화 할 수도 있습니다.이 모드를 활성화한다고해서 시스템이 앱에 백그라운드 가져 오기를 수행 할 수있는 시간을 보장 할 수는 없습니다. 시스템은 콘텐츠를 다른 앱 및 시스템 자체의 필요와 가져 오는 앱의 필요성을 조정해야합니다. 정보를 평가 한 후에 시스템은 좋은 기회가있을 때 앱에 시간을줍니다.

좋은 기회가 생기면 시스템이 앱을 백그라운드로 시작하거나 실행하고 앱 위임자의 application : performFetchWithCompletionHandler : 메소드를 호출합니다. 이 방법을 사용하여 새로운 컨텐트를 확인하고 컨텐트를 사용할 수있는 경우 다운로드 작업을 시작하십시오. 새 콘텐츠를 다운로드하는 즉시 제공된 완성 처리기 블록을 실행하여 콘텐츠를 사용할 수 있는지 여부를 나타내는 결과를 전달해야합니다. 이 블록을 실행하면 앱을 일시 중지 상태로 되돌리고 전력 사용량을 평가할 수 있음을 시스템에 알려줍니다. 소량의 콘텐츠를 신속하게 다운로드하고 다운로드 할 수있는 콘텐츠를 정확하게 반영하는 앱은 오랫동안 콘텐츠를 다운로드하거나 해당 콘텐츠를 사용할 수 있었지만 그렇게 한 앱보다 나중에 실행 시간을받을 가능성이 큽니다. 아무것도 다운로드하지 마십시오.

답변