2011-01-09 8 views
1

iOS 4.x에서 실행되는 실제 데몬 (또는 서비스)을 작성하는 방법이 있는지 알고 싶습니다.iphone 데몬 프로세스

공식 SDK는 앱 스토어에 배포되는 것을 허용하지 않지만 예를 들어 "엔터프라이즈"프로그램을 사용하여 내 앱을 직원 세트에 배포하려는 경우 어떻게 될까요?

그리고 아니오, 제 직원의 아이폰을 본때로 감고 싶지 않습니다.

+0

아무도 모르게 장치를 탈옥시킬 수는 있지만 지역 윤리에 위배 될 수 있습니다. :) –

답변

3

답변은 '일종의'것 같습니다. 당신이 전화를 탈옥하고 싶지 않다면, 당신의 선택은 제한되어 있습니다. 내부적으로 배포하려는 경우 VOIP 백그라운드 서비스를 살펴볼 수 있습니다.

iOS 4의 백그라운드 서비스에 속하며 수신 전화와 같은 이벤트를 받기 위해 VOIP 앱을 백그라운드에서 계속 실행할 수 있도록하기위한 것입니다.이 기능을 사용하여 정기적으로 예정된 서비스 (나는 최근에 누군가가 그것을 '데이터 카운터'처럼 행동하기 위해, 다시 엔터프라이즈 프로그램을 위해 사용하기를 원했던 질문이 있다고 생각한다).

정말 올바른 해결책은 아니지만 휴대 전화를 탈옥하기 전까지는 최상의 방법입니다. 앱을 상점에 배포하는 것은 부적절하지는 않습니다.

+0

그래, 나는 그 정도를 알았다. 그러나 휴대 전화가 다시 시작될 때 앱을 자동으로 시작해야하며 (내가 필요한 경우 VOIP 앱에 해당 기능이 필요하다고 가정하지만 찾을 수는 없습니다.) 방법이 없습니다. 어쨌든 OS 레벨로 내려 가서 유닉스 명령을 실행하면됩니까? –

+1

이것은 VOIP 백그라운드 서비스와 함께 자동으로 제공됩니다. UIBackgroundModes에 대한 Apple의 문서에서 "이 키가있는 응용 프로그램은 시스템 부팅 후 자동으로 시작됩니다." 나는 당신이 장치를 탈옥 할 준비가되어 있지 않으면 iOS에서 얻을 수있는 최선의 방법이라고 확신한다. – lxt

1

샌드 박스 보안의 일환으로, 재고 iOS OS는 OS가 아닌 다른 프로세스에서 시작되었거나 실행을 위해 등록되지 않은 프로세스를 종료합니다 (백그라운드에서 백그라운드 plist 키를 가지고있는 경우와 같이) . 프로세스를 시작하는 Unix 명령은 작동하지 않습니다.

현재 재고가있는 OS 기기에서이 작업을 수행하는 유일한 방법은 VOIP 앱을 사용하는 것입니다. 또는 재부팅시 자동 실행하려면 개인용으로 가짜 VOIP 앱을 사용하는 것입니다. 재부팅시 실행할 필요가 없으면 자동 재생되거나/dev/null에 기록되는 백그라운드 오디오 앱이 작동 할 수도 있습니다.

사용자는 이러한 배경 응용 프로그램을 매우 쉽게 종료 할 수 있으며 다른 재부팅 또는 수동 실행이있을 때까지 다시 시작되지 않습니다.