18
A
回答
14
http://breaking-catch22.com/?p=12
public class AndroidApp extends Activity {
String URL = "http://the/url/here";
String result = "";
String deviceId = "xxxxx" ;
final String tag = "Your Logcat tag: ";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final EditText txtSearch = (EditText)findViewById(R.id.txtSearch);
txtSearch.setOnClickListener(new EditText.OnClickListener(){
public void onClick(View v){txtSearch.setText("");}
});
final Button btnSearch = (Button)findViewById(R.id.btnSearch);
btnSearch.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
String query = txtSearch.getText().toString();
callWebService(query);
}
});
} // end onCreate()
public void callWebService(String q){
HttpClient httpclient = new DefaultHttpClient();
HttpGet request = new HttpGet(URL + q);
request.addHeader("deviceId", deviceId);
ResponseHandler<string> handler = new BasicResponseHandler();
try {
result = httpclient.execute(request, handler);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
httpclient.getConnectionManager().shutdown();
Log.i(tag, result);
} // end callWebService()
}
2
這主要取決於你所需要的,但假設一個簡單的POST請求與JSON身體它看起來像這樣(我建議使用Apache HTTP庫)。
HttpPost mRequest = new HttpPost(<your url>);
DefaultHttpClient client = new DefaultHttpClient();
//In case you need cookies, you can store them with PersistenCookieStorage
client.setCookieStore(Application.cookieStore);
try {
HttpResponse response = client.execute(mRequest);
InputStream source = response.getEntity().getContent();
Reader reader = new InputStreamReader(source);
//GSON is one of the best alternatives for JSON parsing
Gson gson = new Gson();
User user = gson.fromJson(reader, User.class);
//At this point you can do whatever you need with your parsed object.
} catch (IOException e) {
mRequest.abort();
}
最後,我會鼓勵你在任何類型的後臺線程(執行器,線程,的AsyncTask等)
相關問題
- 1. 如何從Android應用程序發送HTTP請求到Heroku
- 2. 如何在android中發送http請求?
- 3. Android - 發送HTTP請求(API> 23)
- 4. Android Developer Console如何發送HTTP請求?
- 5. 通過HTTP發送REST請求
- 6. 字API發送HTTP請求
- 7. 在iPHone應用程序中發送http請求的框架
- 8. 如何以編程方式發送帶請求的HTTP請求?
- 9. 如何在iPhone應用程序中向服務器發送http發佈請求?
- 10. 如何在GET請求中發送密碼以訪問REST資源
- 11. 使用請求標頭在Android中訪問REST API
- 12. 如何從Android應用程序發送POST請求到Rails應用程序?
- 13. 在Android中發送HTTP請求
- 14. 如何使用POST請求將令牌發送到Android應用的Django REST API?
- 15. 如何使用WinInet API在Delphi中發送HTTP POST請求
- 16. 在HTTP GET請求發送JSON數據從Java代碼REST API
- 17. 如何在Android應用程序中製作HTTP請求
- 18. Google Chrome擴展程序 - 如何訪問元素併發送HTTP請求?
- 19. 當應用程序在後臺時發送http請求
- 20. Twitter Rest API Http請求失敗(Android)
- 21. 無法從我的Windows 8.1應用程序發送HTTP請求
- 22. 在Android應用中使用JSON正文發送HTTP請求
- 23. 如何訪問HTTP請求?
- 24. 在基於Spring的應用程序中限制併發http請求訪問
- 25. 在android應用程序中發送好友請求的通知
- 26. 如何從Angular2應用程序發送http發佈請求時啓用CORS
- 27. 執行圖API API [發送應用程序請求]
- 28. 如何在http中發送數組請求請求
- 29. Java - 在發送HTTP請求時REST客戶端出現問題
- 30. 發送HTTP發佈請求崩潰Android程序
的運行這段代碼見相關章節。 – 2011-04-24 08:37:44
[使用android進行HTTP請求]的可能重複(http://stackoverflow.com/questions/3505930/make-an-http-request-with-android) – 2015-07-28 10:42:26