2012-08-15 2 views
0

Flash Builder 및 Flex를 사용하여 iOS와 Android에 모두 배포 할 모바일 응용 프로그램을 개발 중입니다. 필자는 모든 것이 Flash Builder 에뮬레이터에서 작동하기 때문에 물리적 장치에서 테스트를 시작하려고합니다.웹 서비스 네트워크 Flex를 사용하는 Android의 문제

내 앱이로드되고 첫 번째보기가 표시되면 다음 코드가 실행됩니다.

creationComplete="initApp(event) 

protected function initApp(event:FlexEvent):void 
{    
    pricingAppWebService1.updateApp("RAMISAppUpdate");       
} 

내 문제는 내가 시도하고 (아래 그림 참조) 웹 서비스를 사용하여 응용 프로그램에 서버에서 XML 데이터를로드 할 때,이 고장을 초래한다는 것이다. 이것은 Flash Builder 에뮬레이터에서 작동하므로 이상합니다.

<fx:Declarations> 
    <s:WebService id="pricingAppWebService" 
     wsdl="http://dev.ramislive.com/webservice/pricing.asmx?WSDL" 
     result="dataSent_resultHandler(event)" 
     fault="dataSent_faultHandler(event)" />  
</fx:Declarations> 

응용 프로그램이 장치는 확인을 표시 지적되는 pricingAppWebService_faultHandler 안타 XML 데이터를 가져 오려고 시도

가/입력 텍스트로 표시 내 컴퓨터의 로컬 IP와 팝업 상자를 취소합니다.

protected function pricingAppWebService_faultHandler(event:FaultEvent):void 
{ 
    trace(event.fault); 
    navigator.pushView(MainMenu);   
} 

추적은 Flash Builder 콘솔에서 다음 정보를 제공합니다.

[ RPC Fault faultString="HTTP request error" faultCode="Server.Error.Request" 
    faultDetail="Unable to load WSDL. 
    If currently online, please verify the URI and/or format of the WSDL  
    (http://dev.ramislive.com/webservice/pricing.asmx?WSDL)" ] 

필자는 당연히 장치의 보안 설정을 고려했으며 src/Main-App.xml의 안드로이드 매니페스트 파일에 다음과 같은 내용이 있습니다. 메모 내가 THIS QUESTION에보고하고 내 문제에 대한 해결책은 매우 유사 할 수 있습니다으로

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 

. 그러나 나는 성공없이 IP 주소로 도메인을 대체하는 시도했다. 죄송합니다.이 질문이 너무 모호하면 사이트에서 처음입니다. 필자는 전체 mxml 파일이 부족할 정도로 자세하게 설명하려고 노력했습니다.

이 문제는 몇 가지 보안 문제를 일으키는 것으로 보입니다. 이것이 바로 팝업 상자라고 가정합니다. 그러나 이것은 단지 추측이지만 내 서버는 확인을 클릭하고 데이터를 다시로드하기 위해 전화 다시 버튼을 누른 후 응답을 통지합니다.

+0

에뮬레이터에서 모바일 앱을 테스트하는 것은 포장 도로에서 산악 자전거를 테스트하는 것과 같습니다. 장치가 인터넷에 연결되어 있습니까? 이동 통신사가 URL을 차단할 수 있습니까? [또는 당신 wifi에 있습니까?] – JeffryHouser

+0

Wifi는 장치에서 인터넷뿐만 아니라 정상적으로 작동합니다. 신호도 꽉 찼습니다. –

+0

모바일 장치의 브라우저에서 해당 WSDL을로드 할 수 있습니까? 그렇다면; 그런 다음 아이디어가 없어졌습니다 ... – JeffryHouser

답변

0

테스트 컴퓨터에 연결할 때 내부 Wi-Fi 연결을 사용하여 테스트 할 때 발생하는 문제는 아니라는 점에 유의해야합니다 (이것은 상자 안에있는 IP입니다). 이 문제를 피하려면 대신 ipa의 릴리스 버전을 사용하십시오. 그렇지 않으면 최종 릴리즈 빌드에 표시되지 않을까 걱정하지 마십시오.

Project --> Export Release Build