2012-05-11 6 views
0

누군가이 작업에 대해 분류 된 대답을하면 매우 감사 할 것입니다. 비록이 백그라운드 실행과 관련하여 더 많은 문서를 읽었지만 코딩 할 때 구현할 때 이상한 동작을 경험했습니다.포 그라운드와 백그라운드에서 무한대로 작업 실행

내 응용 프로그램이 백그라운드 모드 (GPS)를 지원하며 위치 업데이트가 정기적으로 로그에 인쇄되는 것을 볼 수 있습니다. 1 시간마다 내 서버에 위치 업데이트를 보낼 NSTimer를 실행하고 있습니다. 타이머가 여러 시간 동안 작동하고 갑자기 멈추는 것은 이상합니다.

저는 사과의 문서를 읽었지만 계속 묻고 있습니다.

1 - 타이머를 사용하여 백그라운드/포 그라운드에서 무한대로 작업을 실행할 수 있습니까? 타이머가 옵션이 아니면 태스크를 무한히 실행하는 데 사용할 수있는 API는 무엇입니까?

2 - 사용자가 내 앱의 위치 서비스를 사용 중지 할 수있는 옵션이있는 경우 사라졌습니다. 사용자가 특정 앱의 위치 서비스를 사용 중지하지 못하도록하고 싶습니다. 그게 끝날 수 있습니까?

즐거운 도움 !!!!

답변

1

나는 첫 번째 질문에 실제로 답할 수는 없지만 백그라운드에서 실행하는 동안 최소한의 작업을해야합니다. [...] 백그라운드에서 실행하는 데 너무 많은 시간을 소비하는 앱은 다시 감속 할 수 있습니다. 체계 또는 살해했다 "(Source).

UIBackgroundMode:location을 요청 했습니까? 그렇지 않은 경우에는 한정된 시간 동안 백그라운드에서 코드를 실행할 수 있습니다.

두 번째 질문 : 사용자 위치를 알기 전에 앱에 사용자에게 권한에 대해 묻습니다. 이 권한은 거부 될 수 있으며 사용자 위치에 대한 액세스 권한은 없습니다. 허가가 부여 된 경우에도 사용자는 언제든지 사용 권한을 철회 할 수 있습니다. 따라서 사용자는 앱의 위치 서비스를 사용 중지 할 수 있습니다.

+0

응답 해 주셔서 감사 드리며 일부 회신을 보내 주시면 답변 드리겠습니다. 조금 도와 주시면 감사하겠습니다. 실제로 응용 프로그램이 백그라운드에서 전경에있을지라도 무한정 작업을 실행하고 싶습니다. GPS를 사용하는 이유를 알려줍니다. 배터리는 현재 문제가 아닙니다. 어떻게 달성 할 수 있는지 알고 있습니까? – Perseus

+0

GSP 데이터를 사용하지 않고 GSP 만 사용하여 백그라운드에서 실행할 수 있습니까? 그렇다면 애플이 앱을 거부 할 것이라고 확신한다. – pre

+0

GPS 데이터도 사용하고 있습니다. 그것은 n 분마다 GPS 좌표를 서버에 게시 할 때와 같습니다. – Perseus

관련 문제