モバイル デバイス用のアプリケーションに問題があります。PC でアプリケーションをテストすると、Web サービス接続は問題ありません。答えが得られます。ただし、モバイルデバイスでアプリケーションをテストすると、アプリケーションの最初の使用でサーバーからの応答を取得するのに時間がかかりすぎて、画面が「送信中...」のままになり、アプリケーションを何度も試行してリセットした後、接続その後、アプリケーションは正常に動作します。私の問題は何ですか?pd: 私は英語があまり上手ではありません。
コードは次のとおりです。
private function panicStart(e:MouseEvent = null):void
{
trace("han presionado el boton de panico");
//Alert.show(_canvas, "Datos de Usuario :" + "\nNombre: " + _currentName + "\nKey: " + _currentKey + "\nD.N.I. :" + _currentDni + "\nMóvil: " + _currentPhone + "\n\nDatos de Geoposición:\n" + "\Latitud: " + _latitud + "\nLongitud: " + _longitud + "\n ", "Envío de Datos", new Array("ok"), null);
var url:String = "http://appmovil.munijesusmaria.gob.pe/1380panico/ws_panico.asmx?WSDL";
webService = new WebService();
webService.loadWSDL(url);
webService.addEventListener(LoadEvent.LOAD, BuildServiceRequest);
_state = STATE_STARTSEND
}
function BuildServiceRequest(evt:LoadEvent)
{
_state = STATE_SENDING;
serviceOperation = webService.getOperation("Insertar");
trace("esperando respuesta");
serviceOperation.addEventListener(FaultEvent.FAULT, DisplayError);
serviceOperation.addEventListener(ResultEvent.RESULT, DisplayResult);
if (_panicScreen.txtReference.text == _textReference || _panicScreen.txtReference.text == "")
serviceOperation.send(_currentDni, _currentName, _currentPhone, _latitud.toString(), _longitud.toString(), "ninguna", "285DF565H5654CC");
else
serviceOperation.send(_currentDni, _currentName, _currentPhone, _latitud.toString(), _longitud.toString(), _panicScreen.txtReference.text, "285DF565H5654CC");
}
function sentgotoPanic(e:MouseEvent = null):void
{
ScreenManager.gotoScreen("panic");
_state = STATE_SENT;
}
function DisplayError(evt:FaultEvent)
{
_state = STATE_JUSTSENT;
sentgotoPanic();
Alert.show(_canvas, "Error al enviar los datos" + "\n ", "Alerta", new Array("ok"), new Array("ok"), null);
trace("error");
_panicScreen.txtReference.text = "";
_state = STATE_SENT;
}
function DisplayResult(evt:ResultEvent)
{
_state = STATE_JUSTSENT;
trace("EEEEEEEXITO")
var result:String = evt.result as String;
sentgotoPanic();
Alert.show(_canvas, "Datos Enviados" + "\n ", "Alerta", new Array("ok"), null);
trace("error");
_panicScreen.txtReference.text = "";
_state = STATE_SENT;
}