2011-09-09 6 views
1

AIR에서 rtmps 끝점에 연결하려고합니다.rtmps를 사용하는 Flex iOS 응용 프로그램

코드는 다음과 같습니다 : ADL (에뮬레이터)에서 바탕 화면에 응용 프로그램을 실행할 때

private function onCreationComplete():void{ 
    var conn:NetConnection = new NetConnection(); 
    conn.connect("rtmps://someserver.com/someapplication"); 
    conn.proxyType = "best"; 
    conn.addEventListener(NetStatusEvent.NET_STATUS,statusHandler); 
} 

private function statusHandler(event:NetStatusEvent):void{ 
    var conn:NetConnection = NetConnection(event.target); 
    trace(event.info.code); 
} 

이 실제로 완벽하게 작동합니다. 그러나 iPad에 응용 프로그램 (. ipa)을 설치하면 연결이 실패합니다.

내 바탕 화면과 아이 패드는 (따라서 연결 같은 네트워크 아키텍처를 사용) 동일한 무선 네트워크에 연결

사람이 전에 행동의이 종류를 경험 한 두? 우리는 rtmps을 통해 우리의 서버에 연결을 설정할 수 없습니다

건배

여기에 무엇이 잘못된 것인지 알아낼 심각한 노력 후
+0

필자는 단지 도움을 줄 수 있습니다. 에뮬레이터에서는 작동하지만, 장치에서는 작동하지 않는 사람들에 대해 들어 봤습니다. iOS가 특정 행동을 차단한다는 것을 알고 있습니다. 네가하려는 일이 그들 중 하나인지 모르겠다. iOS 에뮬레이터가 제대로 기능을 제한하지 않는지 궁금합니다. 행운을 빕니다! – JeffryHouser

+0

내 첫 번째 직감은 AIR 런타임의 API를 통해 OS 자체에서 처리 할 것으로 예상되기 때문에 인증서 문제가있을 수 있다는 것입니다. 나는 이것에 대한 사양을 찾고 싶다. –

+0

그리고 사람들은 어도비 jira에서 기능 요청을 로깅하기 때문에 실제로 에뮬레이터에 몇 가지 문제가있다 http://bugs.adobe.com/jira/browse/FB- 31245 –

답변

1

이것은 Air 3.1에서 여전히 문제입니다. Adobe에서 버그 보고서를 제기했습니다. - https://bugbase.adobe.com/index.cfm?event=bug&id=3133542

+0

수정 되었습니까? –

+1

Flex에서 작동하도록 iOS에서 rtmps 연결을 얻을 수 있지만 자체 생성 인증서가 아닌 인식 된 SSL 인증서를 사용해야합니다. Android에서 자체 인증서를 사용하여 연결할 때 iOS가 자동으로 실패하는 경우 인증을받을 수있는 옵션이 제공됩니다. 그래서 Verisign과 같은 누군가로부터 인증서를 구입하면 좋을 것입니다. 내 회사 app myCast (http://codeghost.co.uk/mycast)는 Flex로 제작되었으며 rtmps에 성공적으로 연결할 수 있습니다. – codeghost

1

.
일반용 rtmp은 좋지만 불행히도 우리에게는 옵션이 아닙니다.

* 편집 *
이 문제는 AIR 3.1 릴리스에서 해결되었다.
iOS에서는 RTMPS를 통한 WIFI + 프록시를 통한 연결이 실패했습니다.
자세한 내용은 AIR 3.1 release notes을 확인하십시오.

+0

안정적으로 작동합니까? AIR로 iOS에서 RTMPS를 조사하고 기본 Obj C로 이동하는 방법 –

1

우리는 RTMP 프로토콜을 통해서만 서버에 연결을 설정합니다. rtmp 대신 rtmp를 사용하면 연결을 설정할 수 있습니다.