android服務端交互
Ⅰ android客戶端和伺服器端怎麼交互
1.本機資料庫IP可以使用localhost,埠:3306 2.或者」打開網路和共享中心「查看屬性,找到IP地址 3.或者,Windows+R,打開cmd命令,輸入ipconfig,查看ipv4地址,即ip地址
Ⅱ android平台的app 手機客戶端和後台伺服器怎麼進行數據交互的
首先不要管安卓端還是蘋果端,現在一般都是響應式的app,你放到安卓或者蘋果或者pc或者平板都是沒有問題的。一般採用的是http介面通訊,或者socket連接。具體你要去查資料找Demo了。而且現在主流是採用html5開發或者混合開發了。所以最好是伺服器提供appAPI介面,通過http訪問伺服器,獲取數據,數據一般是json,或者xml,拿到後解析數據就可以了,然後再用UI框架或者其他框架或者自定義的UI封裝下格式很漂亮了,至於cookie和session等,看你的習慣,網路驗證和簽名那些也自己看習慣,如果涉及到大數據,還需要引入第三方框架的,直接引入就可以了,不過推薦自己寫,防止侵權。都是很通用的。
Ⅲ android 中的交互有幾種
1. 廣播交互
提到Activity與Service的交互,可能狠多人首先想到的就是BroadCast——廣播。在Android中,廣播是系統提供的一種很好的交互方式。比如:在電池電量過低,開機完成等情況下,系統都會發出相應的系統廣播,我們的應用程序只需要注冊相應的廣播接收器,就可以接收到這些系統的廣播。同時,我們也可以定義自己的廣播,這樣在不同的Activity、Service以及應用程序之間,就可以通過廣播來實現交互。我們通過模擬應用程序後台下載的情況來分析Service與Activity的交互方式。
2. 共享文件交互
這里提到的共享文件指的是Activity和Service使用同一個文件來達到傳遞數據的目的。我們使用SharedPreferences來實現共享,當然也可以使用其它IO方法實現,通過這種方式實現交互時需要注意,對於文件的讀寫的時候,同一時間只能一方讀一方寫,不能兩方同時寫。
3. Messenger交互(信使交互)
Messenger翻譯過來指的是信使,它引用了一個Handler對象,別人能夠向它發送消息(使用mMessenger.send(Message msg)方法)。該類允許跨進程間基於Message通信,在服務端使用Handler創建一個 Messenger,客戶端只要獲得這個服務端的Messenger對象就可以與服務端通信了。也就是說我們可以把Messenger當做Client端與Server端的傳話筒,這樣就可以溝通交流了。
4. 自定義介面交互
何謂自定義介面呢,其實就是我們自己通過介面的實現來達到Activity與Service交互的目的,我們通過在Activity和Service之間架設一座橋梁,從而達到數據交互的目的,而這種實現方式和AIDL非常類似(後文會說到)。
5. AIDL交互
什麼是AIDL?
AIDL是Android Interface Definition Language的首字母縮寫, 也就是Android介面定義語言。提及AIDL就不得不說下Android的服務,Android 支持兩種服務類型的服務即本地服務和遠程服務。
Ⅳ 安卓手機客戶端可以通過哪些方式與PC伺服器端通信
有如下的方法供選擇:
1. 利用USB口和USB連接線:
電腦可以將手機客戶端作為一個終端訪問,此時需要一款第三方軟體,比如金山手機、豌豆莢、360等等。
也可以將手機作為一個外部存儲器直接訪問手機的存儲位置來傳遞文件。
2.利用手機和電腦的藍牙,採用藍牙進行通訊。藍牙通訊的距離一般小於10米。藍牙建立連接之後,一般藍牙的協議之中帶有終端訪問功能,可以直接傳輸文件。
3.利用wifi,兩者都連接本地或公共wifi【手機通常有wifi,如果電腦沒有無線,用有線連接網路也可以】:
通過共享文件夾的方式,互相訪問傳輸文件。
也可以安裝第三方FTP服務端和客戶端軟體,實現FTP文件傳輸。
或者利用郵箱,自己發給自己,自己在另一個設備上接收下載完成文件傳輸。
4.還有一種方法,就是兩者都安裝微信,同時開通他們,在微信中傳輸文件,另一台機器上將文件下載下來就可以了。
可能還有其他方法,取決於你對這些機器的理解程度。因為他們實際上都是網路上的一個節點。
Ⅳ android客戶端和伺服器端怎麼交互
android客戶端和伺服器端是基於IntentService的,具體如下:
後台使用簡單的servlet,支持GET或POST。這個servlet最終返回給前台一個字元串flag,值是true或false,表示登錄是否成功。
然後在安卓的ADT上創建一個安卓項目,建立兩個Activity,分別作為登錄界面和登錄成功界面。
HTTP的訪問公共類,用於處理GET和POST請求。
IntentService服務,用於在後台以隊列方式處理耗時操作。
在AndroidManifest.xml中注冊IntentService。注意uses-permission節點,為程序開啟訪問網路的許可權。
登陸界面處理,注意按鈕監聽事件中,使用Intent將要傳遞的值傳給service。接收廣播類中,同樣使用Intent將要傳遞的值傳給下一個Activity。在onCreate()中,動態注冊接收廣播類的實例receiver。在接收廣播類中,不要使用完畢後忘記注銷接收器,否則會報一個Are you missing a call to unregisterReceiver()? 的異常。
Ⅵ Android設計client與服務端的交互問題
我覺得可以這樣:
你在監聽socket中,如果收到這個socket你發個廣播這樣的東西。
寫個BaseActivity。在裡面onCreate方法中去注冊並監聽,如果收到此廣播,則finish並跳轉至登錄的activity.
Ⅶ android 客服端和服務端交互出現亂碼問題;
首先確定你android 端 發起的請求 ,請求參數的格式是UTF-8的,然後服務端再用ISO8859,編碼來解UTF-8的編碼。
Ⅷ android客戶端怎麼與伺服器交互
1、java伺服器建立至少一種服務webservices、servlet、socket
2、客戶端通過socket或者httpurlconnection的方式進行連接訪問
服務端:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
resp.setContentType("text/html;charset=utf-8");
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
PrintWriter out = resp.getWriter();
//用HTML格式給瀏覽器返回數據
out.println("<html>");
out.println("<head>");
out.println("<title>Tomcat Servlet測試</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello,First Servlet!");
out.println("</body>");
out.println("</html>");
out.println("Hello,第一個Tomcat!!!");
out.close();
}
客戶端:
private String doGet(String url){
String responseStr = "";
try {
String name = nameEdit.getText().toString().trim();
String code = codeEdit.getText().toString().trim();
String getUrl = URL + "?NAME=" + name+"&"+"CODE=" + code;
HttpGet httpRequest = new HttpGet(getUrl);
HttpParams params = new BasicHttpParams();
ConnManagerParams.setTimeout(params, 1000);
HttpConnectionParams.setConnectionTimeout(params, 3000);
HttpConnectionParams.setSoTimeout(params, 5000);
httpRequest.setParams(params);
HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);
final int ret = httpResponse.getStatusLine().getStatusCode();
if(ret == HttpStatus.SC_OK){
responseStr = EntityUtils.toString(httpResponse.getEntity(), HTTP.UTF_8);
}else{
responseStr = "-1";
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return responseStr;
}
Ⅸ android與伺服器交互用post好還是get
要根據實際應用的需求和數據量。
HTTP 定義了與伺服器交互的不同方法,最基本的方法是 GET 和 POST。
事實上 GET 適用於多數請求,而保留 POST 僅用於更新站點。根據 HTTP 規范,GET 用於信息獲取,而且應該是 安全的和 冪等的。所謂安全的意味著該操作用於獲取信息而非修改信息。換句話說,GET 請求一般不應產生副作用。冪等的意味著對同一 URL 的多個請求應該返回同樣的結果。完整的定義並不像看起來那樣嚴格。從根本上講,其目標是當用戶打開一個鏈接時,它可以確信從自身的角度來看沒有改變資源。比如,新聞站點的頭版不斷更新。雖然第二次請求會返回不同的一批新聞,該操作仍然被認為是安全的和冪等的,因為它總是返回當前的新聞。反之亦然。
POST 請求就不那麼輕鬆了。POST 表示可能改變伺服器上的資源的請求。仍然以新聞站點為例,讀者對文章的註解應該通過 POST 請求實現,因為在註解提交之後站點已經不同了(比方說文章下面出現一條註解);
在FORM提交的時候,如果不指定Method,則默認為GET請求,Form中提交的數據將會附加在url之後,以?分開與url分開。字母數字字元原樣發送,但空格轉換為「+「號,其它符號轉換為%XX,其中XX為該符號以16進製表示的ASCII(或ISO Latin-1)值。GET請求請提交的數據放置在HTTP請求協議頭中,而POST提交的數據則放在實體數據中;
GET方式提交的數據最多隻能有1024位元組,而POST則沒有此限制。
Ⅹ android和伺服器交互怎麼用伺服器返回數據
當手機需要獲取一組數據,用http協議向伺服器發起請求,伺服器根據http協議傳過來的請求地址和參數返回數據給手機。 獲取的數據如果非常大,可以在手機端建個SQLite資料庫,把數據保存進去。