백그라운드에서 작동하는 알람을 어떻게 만들까요?

핸드폰에는 기본적으로 시계, 알람 앱이 내장되어 있습니다. 이러한 앱들은 켜 있지 않은 상태로도 정해진 시각이 되면 알아서 이벤트를 발생하는 것으로 보아, 백그라운드에서 앱이 작동한다고 생각됩니다. 그런데 Xcode의 Background Modes에는 알람을 위한 시간 관련 카테고리가 존재하지 않습니다.

엉뚱한 백그라운드 모드를 선택하면 앱스토어 등록에서 리젝을 당할텐데, 그렇다면 알람을 발생시키는 앱을 위해서는 어떤 코드를 사용해야 하나요?

(저희는 현재 백그라운드 모드 중 Location updates를 사용하고 있습니다…)

좋아요 1

애플의 프로세스는 다른 시각으로 봐야 합니다.
애플은 스스로가 악성코드를 만들지 않습니다. 플랫폼 운영자니까요.
자해를 하려는 게 아니라면 일부러 악성 코드를 만들지 않겠죠.
그래서 애플이 만든 프로그램들은 백그라운드 프로세스로 동작할 수 있어요.

애플은 3rd Party 개발자들을 일정 수준 이상 신뢰하지 않습니다.
당연하죠. 서로의 이해관계가 다르니까.
악성코드를 심어서라도 돈을 벌고자 하는 개발자들이 많죠.
그래서 우리가 만든 프로그램은 '제한적’으로만 백그라운드에서 동작합니다.

알람 발생은 내부적으로 UILocalNotification 으로 만들거나

외부에 서버를 운영해서 PushNotification 으로 만들어야 합니다.

아하, 저희가 백그라운드를 마음대로 쓰지는 못하는군요…! 답변 감사합니다, 충고하신 방법으로도 접근해보겠습니다!

좋아요 1