2013-07-04 4 views
1

Вкратце, мое приложение работает дольше, чем год. У меня есть 100 000+ загрузок, и только недавно проблемы с моими мыльными веб-службами начали ... произойти Если два или более устройства подключены к той же беспроводной связи только один прибор работает должным образом на всех других устройствах соединение получает приуроченных из Ниже приведен пример метода WS вызова:Синхронизация ksoap для Android при использовании нескольких устройств в одной беспроводной сети :(

public static Object callWSMethod(String methodName, String soapAction, 
     PropertyInfo[] properties) throws IOException, 
     XmlPullParserException{ 

    SoapObject request = new SoapObject(NAMESPACE, methodName); 
    if (properties != null) 
     for (PropertyInfo property : properties) { 
      request.addProperty(property); 
     } 

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
      SoapEnvelope.VER11); 
    envelope.setOutputSoapObject(request); 
    envelope.implicitTypes = true; 

    HttpTransportSE httpTransport = new HttpTransportSE(SOAP_ADDRESS, 15000);  
    httpTransport.debug = true;    
    httpTransport.call(soapAction, envelope); 

    return envelope.getResponse(); 
} 

Любые предложения или идеи были бы полезны.

ответ

0

Оказывается, ksoap2 хорошо работает, и мой код хорошо работает. После отслеживания метода вызова ksoap и обнюхивания html-трафика я узнал, что иногда сервер не отвечает на мои запросы. Это происходит из-за того, что конфигурация сервера была изменена, и теперь, когда есть много запросов с одного и того же IP-адреса, сервер рассматривает некоторые из них как повторную передачу и игнорирует их. Эта проблема должна решаться на стороне сервера.

0

я установить тайм-аут в миллисекундах, как показано ниже при вызове WebService

HttpTransportSE androidHttpTransport = new HttpTransportSE(URL,6000); 

(Примечание - убедитесь, что вы используете последнюю библиотеку ksoap2, если вы хотите, чтобы загрузить последнюю версию ksoap2 последующей ссылке ниже для загрузки.)

https://oss.sonatype.org/content/repositories/ksoap2-android-releases//com/google/code/ksoap2-android/ksoap2-android-assembly/3.0.0-RC.4/

и нажмите на ksoap2-андроида сборки-3.0.0-RC.4.jar