백그라운드에서 실행할 Xamarin.iOS 앱 등록

백그라운드 권한에 대한 개별 작업을 등록하는 것은 일부 애플리케이션에서 작동하지만, GPS를 통해 사용자의 길 안내를 받는 것과 같이 중요한 장기 실행 작업을 수행하도록 애플리케이션이 지속적으로 요청되면 어떻게 되나요? 이러한 애플리케이션은 대신 알려진 백그라운드 필수 애플리케이션으로 등록되어야 합니다.

앱을 등록하면 애플리케이션에 백그라운드에서 작업을 수행하는 데 필요한 특별한 권한이 부여되어야 한다는 신호가 iOS에 표시됩니다.

애플리케이션 등록 범주

등록된 앱은 다음과 같은 여러 범주로 분류될 수 있습니다.

  • 오디오 - 음악 플레이어 및 오디오 콘텐츠와 함께 작동하는 다른 응용 프로그램은 앱이 더 이상 포그라운드에 없는 경우에도 오디오 재생을 계속하도록 등록될 수 있습니다. 이 범주의 앱이 백그라운드에서 오디오 재생 또는 다운로드 이외의 작업을 수행하려고 하면 iOS에서 종료됩니다.
  • VoIP - VoIP(Voice Over Internet Protocol) 애플리케이션은 오디오를 백그라운드에서 계속 처리하기 위해 오디오 애플리케이션에 부여된 동일한 권한을 받습니다. 또한 전원을 공급하는 VoIP 서비스에 필요에 따라 응답하여 연결을 활성 상태로 유지할 수 있습니다.
  • 외부 액세서리 및 Bluetooth - Bluetooth 장치 및 기타 외부 하드웨어 액세서리와 통신해야 하는 애플리케이션용으로 예약되어 있으며, 이러한 범주에 따라 등록하면 앱이 하드웨어에 계속 연결되도록 할 수 있습니다.
  • Newsstand - Newsstand 애플리케이션은 백그라운드에서 콘텐츠를 계속 동기화할 수 있습니다.
  • 위치 - GPS 또는 네트워크 위치 데이터를 사용하는 애플리케이션은 백그라운드에서 위치 업데이트를 보내고 받을 수 있습니다.
  • Fetch(iOS 7 이상) - 백그라운드 페치 권한에 등록된 애플리케이션은 정기적으로 새 콘텐츠에 대한 공급자를 검사 애플리케이션으로 돌아갈 때 업데이트된 콘텐츠를 사용자에게 표시할 수 있습니다.
  • 원격 알림(iOS 7 이상) - 애플리케이션은 공급자로부터 알림을 수신하도록 등록하고, 사용자가 애플리케이션을 열기 전에 알림을 사용하여 업데이트를 시작할 수 있습니다. 알림은 푸시 알림 형식으로 표시되거나 애플리케이션을 자동으로 해제하도록 선택할 수 있습니다.

애플리케이션의 Info.plist에서 필수 백그라운드 모드 속성을 설정하여 애플리케이션을 등록할 수 있습니다. 애플리케이션은 필요한 만큼 범주에 등록할 수 있습니다.

Setting the background modes

백그라운드 위치 업데이트에 대한 애플리케이션을 등록하는 단계별 가이드는 백그라운드 위치 연습을 참조 하세요.

백그라운드 속성에서 애플리케이션이 실행되지 않음

Info.plist에서 설정할 수 있는 다른 속성은 애플리케이션이 백그라운드UIApplicationExitsOnSuspend에서 실행되지 않거나 속성입니다.

Disabling Background Running

이는 개발자 쪽에서만 변경할 수 있고 iOS 4 이상에서만 사용할 수 있다는 점을 제외하고, 백그라운드 앱 새로 고침 설정을 iOS 7 이상에서 해제로 설정하는 것과 정확히 동일한 효과를 찾습니다. 애플리케이션은 백그라운드를 입력한 직후 일시 중단되며 처리를 수행할 수 없습니다.

예기치 않은 동작을 방지하는 데 도움이 되므로 애플리케이션이 백그라운드 처리를 처리하도록 설계되지 않은 경우 이 속성을 사용합니다.

백그라운드 인출 및 원격 알림

백그라운드 페치 및 원격 알림은 iOS 7에 도입된 특별한 등록 범주입니다. 이러한 범주를 사용하면 애플리케이션이 공급자로부터 새 콘텐츠를 수신하고 백그라운드에서 업데이트할 수 있습니다. 다음 섹션에서는 페치 및 원격 알림을 자세히 살펴보고 iOS 6에서 백그라운드에서 애플리케이션을 업데이트하기 위한 수단으로 위치 인식을 소개합니다.