Pergunta

Eu estava me perguntando se era possível criar um aplicativo iOS que rastrearia sua localização via GPS enquanto estava em segundo plano.

Eu tentei isso com o aplicativo interno "Maps", mas sem sucesso.

Se isso for possível, seria ótimo se você pudesse me indicar algum código de exemplo, documentações ou tutoriais!

(Se isso for uma duplicata, por favor me avise e eu vou removê -lo)

Foi útil?

Solução

Isso é possível - veja esse documento para multitarefa em geral e Esta seção do Guia de Programação de Conscientização para Localização para "Obter eventos de localização em segundo plano". Obviamente, tudo isso fala sobre todas as várias maneiras pelas quais um dispositivo iOS pode obter sua localização (triangulação da torre de celular, observação da rede Wi-Fi no estilo Skyhook e GPS), não GPS exclusivos.

Em suma, ao ler esses documentos: adicione a chave do UibackgroundModes à sua info.plist, que é uma matriz, e coloque o valor 'localização' nela. Você receberá atualizações do CllocationManager, mesmo quando em segundo plano.

No entanto, se você deseja ser gentil com a bateria, é melhor usar o método StartMonitoringSignificAntLocationChanges em um cllocationManager. Em seguida, você obtém atualizações de localização adequadamente significativas, mesmo quando estão em segundo plano sem ser um aplicativo completo em segundo plano. Outras partes da documentação afirmam que uma mudança significativa é qualquer alteração de uma torre de celular para outra.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top