지오 펜싱으로 수행 할 수있는 작업은 OS에 하나 이상의 영역 (최대 20 개)을 모니터링하도록 요청하는 것입니다. 그런 다음 기기가이 지역에 진입하면 OS가 백그라운드에서 앱을 깨우고 원하는 모든 작업을 수행 할 수있게됩니다. 알림은 사용자가 할 수있는 일의 한 예일뿐입니다. 아직 시작되지 않은 경우 앱을 시작합니다.
기본적으로 앱은 백그라운드에서 계속 실행되지 않으므로 몇 분 (또는 배터리 수명에 따라 OS가 결정할 때까지는 몇 초 후에) 앱이 다시 잠자기 상태가됩니다. 이것이 앱이 대개 매우 짧은 작업을 수행하는 이유입니다.
그러나 앱이 백그라운드에서 계속 실행될 수 있으면 앱을 지역을 벗어나지도 백그라운드에서 계속 실행됩니다. 이것은 앱이 기본적으로 할 수있는 것이 아니라 Xcode 기능에서 명시 적으로 요청해야하는 기능입니다.
그래서 사용자가 자동으로 지오 펜싱을 사용하여 자동으로 다시 시작하는 것처럼 보입니까? 시스템을 사용하면 이전에 사용자가 스 와이프하여 백그라운드에서 앱을 깨우지 않습니다. 이것은 시스템이 사용자에게 제공하는 보증입니다. 앱을 죽이면 죽거나 다른 이유로 다시 시작하지 않습니다.
짧은 이야기 : 사용자가 앱을 죽이는 경우 다시 시작하는 유일한 방법은 홈 화면에서 아이콘을 탭하여 시작하는 것입니다. 개발자에게있어 좋지 않은 일이지만 실제로는 사용자에게 좋은 점입니다.
답변 해 주셔서 감사합니다. 당신은 "아직 시작하지 않았다면 앱을 시작할 것"이라고 썼다. 마지막 두 단락은 불가능하다고 말합니다. 모순 된 것처럼 느껴져. – KotaBear233
. 백그라운드에서 잠자고있는 앱이 많기 때문에 메모리가 부족하면 시스템에서 일부 앱을 죽일 권한이 있습니다. 이 경우 사용자가 시작한 종료가 아니기 때문에 필요한 경우 시스템에서 원활하게 응용 프로그램을 다시 시작합니다. – deadbeef
홈 버튼을 두 번 탭하여 '오래 된'앱 (한동안 사용하지 않은 앱)으로 이동해보십시오. 마지막 상태 인 스크린 샷을 보았기 때문에 실행중인 것처럼 보입니다.하지만 탭하면 당신은 그것이 원래 있던 곳으로 되돌아 가지 않고 처음부터 시작된다는 것을 알게 될 것입니다. 이는 시스템에서 사용자에게 묻지 않고 시스템을 종료하고 필요할 때 정상적으로 다시 시작하기 때문입니다. – deadbeef