Maison >développement back-end >tutoriel php >Comment envoyer des données POST dans les applications Android ?

Comment envoyer des données POST dans les applications Android ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-20 11:51:17520parcourir

How to Send POST Data in Android Applications?

Envoi de données POST dans Android

Introduction

En tant que développeur de logiciels, vous devrez peut-être envoyer des données POST dans des applications Android. Ceci peut être réalisé en utilisant différentes approches, en fonction des exigences spécifiques de votre projet.

Apache Http Client

Une approche bien connue consiste à utiliser la bibliothèque Apache Http Client. Cette approche est obsolète mais reste pertinente pour les versions Android jusqu'à 5.1. Voici un exemple d'extrait de code utilisant cette méthode :

public void postData() {
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://www.yoursite.com/script.php");

    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
    nameValuePairs.add(new BasicNameValuePair("id", "12345"));
    nameValuePairs.add(new BasicNameValuePair("stringdata", "Hi"));
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

    HttpResponse response = httpclient.execute(httppost);
}

HTTPURLConnection

Une approche plus moderne consiste à utiliser la classe HTTPURLConnection. Cette méthode peut être utilisée dans les versions Android 6.0 et supérieures. Voici un exemple de code mis à jour à l'aide de HTTPURLConnection :

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
        OutputStream out = null;

        try {
            URL url = new URL(urlString);
            HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
            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());
        }
    }
}

Considérations

Lors du choix de la méthode appropriée, il est essentiel de prendre en compte des facteurs tels que la compatibilité des versions Android, la facilité de mise en œuvre et l'efficacité de votre application spécifique. application. Le client Apache Http et HTTPURLConnection offrent tous deux des options viables pour l'envoi de données POST dans les applications Android.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn