Uso del servicio web para realizar la viabilidad del servidor de acceso remoto de Android en hogares inteligentes
1. A través de enlaces 2. A través de bibliotecas de terceros
Primero hablemos de la primera:
Comparación Código de publicación simple:
[java] ver Plaincopyprint?
final String SERVER_URL = "pile("lt;Namegt;. *? lt;/Namegt;"); p>
p>
Matcher matchername = patrónname.matcher(sBuilder.toString());
if (matchername.find()) {
Nombre de cadena = matchername.group()
TextView lblname = (TextView) findViewById(R.id.lbl_name);
TextView lbl_name = (TextView) findViewById(R.id.lbl_name) subcadena (nombre.indexOf ("gt;") 1, nombre.lastIndexOf("lt;"))));
}
Patrón patrón = Pattern.compile("lt; Agegt;. * ?lt;/Agegt;");
Matcher matcherage = patrónage.matcher(sBuilder.toString());
if (matcherage.find()) {
String edad = matcherage.group();
TextView lblage = (TextView) findViewById(R.id.lbl_age);
lblage.setText(age); .substring(edad .indexOf("gt;") 1, edad.lastIndexOf("lt;")));
}
}
} catch (Excepción e ) {
String str = e.getMessage()
}
}
}
Muy simple, nada que decir. HttpPost más HttpResponse.
Segundo:
Necesita descargar un paquete Jar de terceros: ksoap2
Descargar: /svn-history/r575/m2-repo/com/ google/code/ksoap2-android/ksoap2-android-assembly /2.5.4/ksoap2-android-assembly-2.5.4-jar-with-dependencies.version
Descarga e importa el proyecto, no es necesario para exagerar Explicación
1. Especifique el espacio de nombres de WebService y el nombre del método de llamada. El código es el siguiente:
Solicitud de SoapObject = new SoapObject("http:// service", "getName");
3. p>
2. Establezca el valor del parámetro del método de llamada. Si el método no tiene parámetros, puede omitir este paso. El código para configurar los valores de los parámetros del método es el siguiente:
request.addProperty("m1", "v1");
request.addProperty("m2", "v2" ");
p>
3. Genere información de solicitud SOAP para el método WebService llamado. Esta información se describe mediante el objeto SoapSerializationEnvelope y el código es el siguiente: envolvente SoapSerializationEnvelope = new SoapSerializationEnvelope(SoapEnvelope.VER10); sobre .bodyOut = solicitud; si es un servicio web .NET, agregue también:
4. Cree un objeto HttpTransportSE. La URL del documento WSDL de WebService se puede especificar a través del constructor de la clase HttpTransportSE. El código es el siguiente:
HttpTransportSE ht = new HttpTransportSE("http://192.168.1.55/PosWebServices/WebUI.asmx. ?wsdl");
HttpTransportSE.dotNet=true;
5. Utilice el método de llamada para llamar al método WebService, el código es el siguiente: ht.call(null, sobre );
HttpTransportSE.dotNet =true;
5. El primer parámetro del método de llamada suele ser nulo y el segundo parámetro es el objeto SoapSerializationEnvelope creado en el paso 3. 6. Utilice el método getResponse para obtener el resultado de retorno del método WebService. El código es el siguiente: SoapObject SoapObject = (SoapObject) sobre.getResponse();
7.