IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Android : Erreur http connection refused


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 103
    Points : 59
    Points
    59
    Par défaut Android : Erreur http connection refused
    Bonjour,

    Je cherche à me connecter à une base de données externes sous Android; pour cela, j'utilise la librairie HttpClient mais quand je lance mon application, cette erreur survient dans le logcat :
    Error in http connection org.apache.http.conn.HttpHostConnectException: Connection to http://10.0.2.2:8080 refused
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    public class ArticleActivity extends AppCompatActivity {
     
        ListView listeArticles;
        String[] articles = new String[]{"article1", "article2", "article3", "article4"};
        HttpPost httpPost;
        HttpClient client;
        HttpResponse response;
        HttpEntity entity;
        InputStream is;
        String result = "";
     
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_article);
     
            if (android.os.Build.VERSION.SDK_INT > 9) {
                StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
                StrictMode.setThreadPolicy(policy);
                System.out.println("*** My thread is now configured to allow connection");
            }
     
            try
            {
                client = new DefaultHttpClient();
                httpPost = new HttpPost("http://10.0.2.2:8080/GestionArticle/connection.php");
                response = client.execute(httpPost);
                entity = response.getEntity();
                is = entity.getContent();
            }
            catch(Exception e)
            {
     
                Log.e("log_tag", "Error in http connection " + e.toString());
            }
     
            try
            {
                BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"),8);
                StringBuilder sb = new StringBuilder();
                String line = null;
                while(reader.readLine()!= null)
                {
                    line = reader.readLine();
                    sb.append(line + "\n");
                }
            }
            catch(Exception e)
            {
                Log.e("log_tag", "Error converting result "+e.toString());
            }
     
            try{
                JSONArray jArray = new JSONArray(result);
                for(int i=0;i<jArray.length();i++){
                    JSONObject json_data = jArray.getJSONObject(i);
                    Log.i("log_tag","id: "+json_data.getInt("idArticle")+
                                    ", titre: "+json_data.getString("titre")+
                                    ", image: "+json_data.getString("image")+
                                    ", description: "+json_data.getString("description")+
                                    ", contenu: "+json_data.getString("contenu")+
                                    ", dateArticle: "+json_data.getString("dateArticle")+
                                    ", heureArticle: "+json_data.getString("heureArticle")
                    );
                }
            }catch(JSONException e){
                Log.e("log_tag", "Error parsing data "+e.toString());
             }
     
     
            listeArticles=(ListView)findViewById(R.id.listView);
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(ArticleActivity.this,
                    android.R.layout.simple_list_item_1, articles);
            listeArticles.setAdapter(adapter);
     
     
        }
    }
    Et mon manifest :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <application
            android:allowBackup="true"
            android:icon="@mipmap/ic_logo"
            android:label="@string/app_name"
            android:supportsRtl="true"
            android:theme="@style/AppTheme">
            <activity android:name=".AccueilActivity">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
     
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity android:name=".ContactActivity" />
            <activity android:name=".AvisActivity" />
            <activity android:name=".LocalisationActivity" />
            <activity android:name=".ArticleActivity"></activity>
            <uses-permission android:name="android.permission.INTERNET"/>
        </application>
    Quelqu'un saurait il comment corriger cette erreur ?

    Merci d'avance !

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 103
    Points : 59
    Points
    59
    Par défaut
    up

  3. #3
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Et sur l'ordinateur hote.... http://127.0.0.1:8080/GestionArticle/connection.php marche bien ?

    Sinon... déjà... log les exceptions par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Log.e("log_tag", "Error in http connection",e);
    (avec un log_tag qui veuille dire quelque chose)... tu auras plus d'info...

    A mon avis, l'exception de base est:
    NetworkInMainThreadException

    Exception levée quand on essaye d'accéder à une ressource sur le réseau depuis le thread principal de l'application (thread "UI").
    Utiliser AsyncTask, ou un Loader pour charger les ressources...

    Il existe divers tutoriel pour ce faire, moi j'aime bien le miens !
    http://www.developpez.net/forums/blo...vice-partie-1/
    et surtout:
    http://www.developpez.net/forums/blo...vice-partie-2/
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 103
    Points : 59
    Points
    59
    Par défaut
    En fait, c'était parce que j'utilisais mysql et non mysqli, j'ai modifié et ça a fonctionné pour ce qui est de la connexion refusée. Et en effet j'utilise la classe AsyncTask. Merci !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur : Connection refused
    Par ikuzar dans le forum Développement
    Réponses: 1
    Dernier message: 18/10/2010, 16h33
  2. erreur HTTP 401.2 accés refusé
    Par malouch dans le forum ASP.NET
    Réponses: 0
    Dernier message: 26/08/2010, 14h09
  3. Erreur HTTP 403 (Refusé)
    Par noname_971 dans le forum Apache
    Réponses: 2
    Dernier message: 18/12/2007, 13h01
  4. message d'erreur "connection refused: connect"
    Par apoca dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 08/05/2007, 12h56
  5. Axis : message d'erreur "Connection refused"
    Par lerouxju dans le forum Services Web
    Réponses: 1
    Dernier message: 04/08/2006, 13h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo