2012-07-10 2 views
0

"Glympse"라는 애플리케이션을 보았습니다. 이 응용 프로그램에서 SMS는 iPhone에서 가능하지 않은 사용자 상호 작용없이 전송합니다. 내 장치 로그에 "Glympse"애플리케이션 호출 mfmessagecontroller를 표시했습니다.사용자없이 SMS 보내기 상호 작용 iPhone

Jul 10 16:24:13 unknown Glympse[3004] <Warning>: GlympseAppDelegate::sendViaSMSWithMessage:toRecipient:withDelegate: 
Jul 10 16:24:13 unknown Glympse[3004] <Warning>: 0 
Jul 10 16:24:13 unknown Glympse[3004] <Warning>: presentModalViewController 
Jul 10 16:24:14 unknown Glympse[3004] <Warning>: messageComposeViewController:didFinishWithResult: 
Jul 10 16:24:14 unknown CommCenter[57] <Notice>: queuing sms message with id 584 
Jul 10 16:24:14 unknown SpringBoard[52] <Error>: mms: queued messageId 584 

내 응용 프로그램에서 어떻게 구현해야합니까?

미리 감사드립니다.

+0

질문하기 전에 [검색 기능] (http://stackoverflow.com/search?q=sms+without+user+iphone)을 사용하십시오. 전에 여러 번 물었습니다. –

+0

@NickBull 모든 질문을 확인했지만 해결책이 없습니다. 그리고 나는 앱에서 이것을 보여 주며 질문을 던졌습니다. 그리고 도움을 주셔서 감사합니다 – ios

+0

내 대답이 도움이 되었습니까? 해당 응용 프로그램에서 –

답변

8

MFMessageComposerViewController 사용자 개입없이 보낼 수 없습니다.

SMS 게이트웨이를 사용하고 SMS 만 보내는 방법을 구현해야합니다. 웹 서비스를 만들고 phonenumber 및 message와 같은 iPhone에서 매개 변수를 허용하고 SMS 게이트웨이를 사용하여 SMS를 보내야하는 것처럼.

희망이 도움이됩니다.

+0

작동합니다. 따라서 설치하고 – ios

+0

을 참조하십시오 현재 SDK에서는 그렇게 할 수 없습니다. 그들이 그렇게 생각한다면, 그들은 인터페이스를 만들었을 것입니다. 즉, 자신의 메시지 작곡가를 디자인하고 이에 따라 처리했을 것입니다. 그러나 MFMessageComposerViewController를 사용하면 전혀 불가능합니다. –

+0

Janak Nirmal, 당신은 그 사실에 대해 정확하지 않습니다. iOS 4와 5에서는 컨트롤러를 표시하고 "보내기"버튼을 찾아 프로그래밍 방식으로 누를 수있었습니다. 이 숨겨진 기능을 활용 한 응용 프로그램은 거의 없습니다. 애플은 결코 그렇게하는 것을 금지했다. iOS 6에서는 MFMessageComposerViewController의 기본 디자인을 변경했습니다 (이제는 "원격 뷰"개념을 기반으로합니다). 위에서 설명한 해킹이 작동하지 않습니다. 하지만 예전에는 .. –

2

Glympse는 SMS를 보내지 않으며 서버에 웹 요청을 시작합니다. 서버에는 SMS 엔진이 있으며 요청에 따라 매개 변수에 따라 SMS를 전송합니다. 그렇지 않으면이 기능을 구현하는 것이 불가능합니다.

1

업데이트 : 아래 답변은 iOS 5.1 이하 버전에만 해당됩니다. 애플사가 iOS 6에서 작동하지 못하게 한 것처럼 보입니다. 실제로 Glympse는 사용자 상호 작용을 통해 텍스트를 전송하는 초기 전략으로 되돌아 왔습니다.

Glympse로 게임하면 ios에서 질문하는 동작을 확인합니다. Glympse는 문자 메시지를 장치에서 직접 보낼 수 없을 때 자체 서버를 사용하지만 기능이있는 경우 장치에서 텍스트를 직접 전송합니다 (iMessage 또는 SMS 사용). 요청을 보낸 다음 결과 텍스트 메시지가 메시지 기록에 표시되는지 확인하여이를 확인할 수 있습니다.

MFMessageComposeViewController이 사용자 상호 작용을 필요로하는 것처럼 보일지라도 Glympse가 남긴 로그 메시지는 UI를 사용하지 않고 UI를 사용하지 않을 것을 강력하게 제안합니다. 나는 같은 방식으로 동작하는 것을 너무 어렵지 않다는 것을 발견했다 : (UI를 표시하지 않기 위해) MFMessageComposeViewController의 뷰를 간단히 대체 한 다음, 호출 한 후 presentViewController 타이머 이벤트를 발생시킨 후 컨트롤러가 가동되었습니다. 타이머 이벤트는 사용자가 "보내기"버튼을 클릭하는 것을 시뮬레이트하는 컨트롤러에 메시지를 보냈습니다.

내가 답변 할 수없는 것은 이것이 iOS 개발자 프로그램 사용권 계약의 조항을 따르는 지 여부입니다. 이는 "Apple에서 정한 방식으로 문서화 된 API 사용"(3.3.1) 또는 " Apple이 사용자에게 제공하려고 시도하는 경고를 방해하지 않아야합니다. "(3.3.14). Glympse는 사용자의 유익을 위해 이러한 행동을 이용하고 있습니다. 사용자의 지식/동의없이 사용자 경험을 매우 명확하게 개선하고 메시지를 보내지 않습니다. 나는 그 행동을 너무 활용하고 싶다. 그러나이 동작이 그늘진 응용 프로그램에서 사용자를 가장하거나 스팸을 보내는 등의 용도로 사용될 수 있음을 알 수 있습니다. 일반적인 경우라면 애플은이 동작을 찾고 해당 응용 프로그램을 거부하기 시작할 것입니다 (Glympse조차도 행동을 풀다.)https://github.com/0xced/Stealth-Messenger

을하지만 당신은 개발자가 명확하게 말 수 :

0

나는이 작업을 수행 할 수있는 방법이 여기에 존재한다는 것을 발견했습니다

는 사용하지 마십시오! 이 내용은 교육 목적으로 만 사용되며 앱 스토어에 적합한 이 아닙니다.

하단 그러나 "교육 목적"에 대해서만 이것을 확인할 수 있습니다.