Android與伺服器通訊之socket通訊

2021-07-27 11:02:32 字數 1387 閱讀 7794

最近接觸的乙個案例需要用到通訊方式,首先想到的是socket通訊,–**比較簡單;然後就去網上查**,找了很久發現乙個大牛寫的很詳細》 跳轉

一:android:接收以及傳送訊息

1,首先例項化socket 即 socket = new socket(伺服器ip, 伺服器端口號); 兩個引數,參1為string型別,參2為int型別
2,接收伺服器資訊

bufferedreader in = new bufferedreader( new inputstreamreader(socket.getinputstream()));

string msg = in.readline();

「ok,其中msg就是我們在伺服器上讀到的資料」

3.向伺服器傳送資訊

bufferedwriter bw

=new bufferedwriter(new outputstreamwriter(socket.getoutputstream()));

bw.write("111");//111為傳送的內容

bw.flush();//提交傳送資訊請求

bw.close();//關閉

二:伺服器端:接收與傳送給android訊息

serversocket ss=

new serversocket(port);

while(true)

android:name="android.permission.internet"/>
四:關於printwriter與bufferedwriter的區別

涉及到的乙個知識點 

1. printwriter的print、println方法可以接受任意型別的引數,而bufferedwriter的write方法只能接受字元、字元陣列和字串; 

2. printwriter的println方法自動新增換行,bufferedwriter需要顯示呼叫newline方法; 

3. printwriter的方法不會拋異常,若關心異常,需要呼叫checkerror方法看是否有異常發生 

4. printwriter構造方法可指定引數,實現自動重新整理快取(autoflush); 

5. printwriter的構造方法更廣。

五:其它知識點 

貼一跳轉》這個帖子是講android模擬器當客戶端,電腦當伺服器使用的,經過測試沒有問題。注意ip一定為android的固定通訊ip–10.0.2.2. 

貼二跳轉》也可以利用android客戶端當伺服器,pc機器當客戶端通訊,也可以通過多個模擬器之間進行通訊,但需要視窗重定向。

Android與伺服器Socket通訊

最近在做乙個專案,需要用到socket通訊呼叫介面,發現了乙個很奇怪的問題,在呼叫介面後5分鐘1秒後才返回結果,這肯定是存在問題的,debug發現 停滯在這一句socket.getinputstream 於是我檢查了下 發現outstream.flush 了啊,後面我就很鬱悶了,但是也接觸不到服務端...

AngularJS 與伺服器通訊

http 是 angularjs 中的乙個核心服務,用於讀取遠端伺服器的資料。注意 以上 的 get 請求是跨域的伺服器,一般跨域伺服器預設情況下,都是不能這樣訪問的。需要在web伺服器端,設定如下屬性 access control allow origin access control allow...

元件與伺服器通訊

1.元件掛載階段通訊 在元件掛在前請求資料 時間上來說會比componentdidmount早一些,越早執行就越快返回元件,但時間幾乎微乎其微可以忽略不計 componentwillmount 複製 2.在元件掛載完成後請求 官方規範 這個階段是元件通訊的最佳時期 1 組價在這個階段已經處於掛載狀態...