編輯:關於android開發
調用 WebService 分以下幾步:
1、指定 WebService 的命名空間和調用方法;
2、設置調用方法的參數值,如果沒有參數,可以省略,設置方法的參數值的代碼如下:
rpc.addProperty("abc", "test");
要注意的是,addProperty方法的第1個參數雖然表示調用方法的參數名,但該參數值並不一定與服務端的WebService類中的方法參數名一致,只要設置參數的順序一致即可。
3、生成調用Webservice方法的SOAP請求信息。
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.bodyOut = rpc;
envelope.dotNet = false; //這裡如果設置為TRUE,那麼在服務器端將獲取不到參數值(如:將這些數據插入到數據庫中的話)
envelope.setOutputSoapObject(rpc);
創建SoapSerializationEnvelope對象時需要通過SoapSerializationEnvelope類的構造方法設置SOAP協議的版本號。
該版本號需要根據服務端WebService的版本號設置。
在創建SoapSerializationEnvelope對象後,不要忘了設置SOAPSoapSerializationEnvelope類的bodyOut屬性, 該屬性的值就是在第一步創建的SoapObject對象。
4、創建HttpTransportsSE對象。
這裡不要使用 AndroidHttpTransport ht = new AndroidHttpTransport(URL); 這是一個要過期的類
private static String URL = "http://www.webxml.com.cn/webservices/weatherwebservice.asmx";
HttpTransportSE ht = new HttpTransportSE(URL);
ht.debug = true;
5、使用call方法調用WebService方法
private static String SOAP_ACTION = "http://WebXml.com.cn/getWeatherbyCityName";
ht.call(SOAP_ACTION, envelope);
6、獲得WebService方法的返回結果
有兩種方法:
(1)、使用getResponse方法獲得返回數據。
(2)、使用 bodyIn 及 getProperty。
7、 這時候執行會出錯,提示沒有權限訪問網絡
需要修改 AndroidManifest.xml 文件,賦予相應權限
簡單來說就是增加下面這行配置:<uses-permission android:name="android.permission.INTERNET"></uses-permission>
Android網絡編程(四)從源碼解析Volley 1.Volley結構圖 從上圖可以看到Volley分為三個線程,分別是主線程、緩存調度線程、和網絡調度線程,首先
android Gui系統之WMS(2)----窗口的添加,androidwmsAndroid系統很多,但是最常用的就兩類,一類是有系統進場管理的,系統窗口。還有一類就是
第一篇 Windows環境下通過Eclipse創建的第一個安卓應用程序(圖文詳細步驟),第一篇 windows環境下搭建創建的第一個安卓應用程序  
仿《雷霆戰機》飛行射擊手游開發--游戲簡介,《雷霆戰機》射擊手 某年某月某日,在好友的“蠱惑”下,本人加入了手游開發大軍