Cara Menghantar Data POST dalam Android
Untuk pembangun yang mahir dalam PHP, JavaScript dan bahasa skrip lain tetapi baharu kepada Java dan Android, panduan ini menyediakan penyelesaian untuk menghantar data POST ke skrip PHP dan memaparkan hasilnya.
Pendekatan Kemas Kini (Android 6.0 )
Penyelesaian yang dikemas kini ini memanfaatkan AsyncTask, yang disyorkan untuk tugasan latar belakang dalam Android.
public class CallAPI extends AsyncTask<String, String, String> { @Override protected String doInBackground(String... params) { String urlString = params[0]; // URL to call String data = params[1]; // Data to post try { URL url = new URL(urlString); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); OutputStream out = new BufferedOutputStream(urlConnection.getOutputStream()); BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(out, "UTF-8")); writer.write(data); writer.flush(); writer.close(); out.close(); urlConnection.connect(); } catch (Exception e) { System.out.println(e.getMessage()); } } }
Pendekatan Asal (Android 5.1 dan Di Bawah)
Untuk peranti yang menjalankan Android 5.1 dan ke bawah, Apache HttpClient boleh digunakan:
public void postData() { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://www.yoursite.com/script.php"); List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); nameValuePairs.add(new BasicNameValuePair("id", "12345")); nameValuePairs.add(new BasicNameValuePair("stringdata", "Hi")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); try { HttpResponse response = httpclient.execute(httppost); } catch (Exception e) { // Handle exceptions } }
Atas ialah kandungan terperinci Bagaimana untuk Menghantar Data POST ke Skrip PHP dari Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!