Quero verificar se o aplicativo está sendo executado em segundo plano.
No:
locationManagerDidUpdateLocation {
if(app is runing in background){
do this
}
}
Quero verificar se o aplicativo está sendo executado em segundo plano.
No:
locationManagerDidUpdateLocation {
if(app is runing in background){
do this
}
}
locationManager:didUpdateToLocation:fromLocation:
método?Respostas:
O delegado do aplicativo recebe retornos de chamada indicando transições de estado. Você pode rastreá-lo com base nisso.
Além disso, a propriedade applicationState em UIApplication retorna o estado atual.
fonte
[[UIApplication sharedApplication] applicationState] != UIApplicationStateActive
é melhor, como UIApplicationStateInactive é quase equivalente a estar em plano ...Isso pode ajudá-lo a resolver seu problema.
Veja o comentário abaixo - inativo é um caso bastante especial e pode significar que o aplicativo está em processo de lançamento em primeiro plano. Isso pode ou não significar "pano de fundo" para você, dependendo do seu objetivo ...
fonte
Swift 3
fonte
Versão rápida:
fonte
Se você preferir receber retornos de chamada em vez de "perguntar" sobre o estado do aplicativo, use estes dois métodos em
AppDelegate
:fonte
veloz 5
fonte
Swift 4+
fonte
Uma extensão do Swift 4.0 para facilitar o acesso:
Para acessar de dentro do seu aplicativo:
Se você estiver procurando informações sobre os vários estados (
active
,inactive
ebackground
), poderá encontrar a documentação da Apple aqui .fonte