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 :

Problème de requête POST HTTP


Sujet :

Android

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut Problème de requête POST HTTP
    Bonjour tout le monde,

    j'ai un problème de requête post par http de page web.
    J'ai essayé plusieurs alternatives.
    Et ceci parfois dans des threads ou asyncTask indépendants :

    J'ai commencé par faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    HttpClient ht=new DefaultHttpClient();
    HttpPost httppost=new HttpPost("http://www.google.fr");	//j'ai bien entendu essayé avec mon adresse propre //mais ca ne fonctionne pas
    List<NameValuePair> nameValuePairs=new ArrayList<NameValuePair>(2);//j'ai essayé sans le "2", cad //List<NameValuePair> nameValuePairs=new ArrayList<NameValuePair>(0);...
    nameValuePairs.add(new BasicNameValuePair("passwd","ok"));
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    ht.execute(httppost);
    			}
    //j'ai essayé de mettre 0,1,2 ou les 3 catch
    			catch (ClientProtocolException e){e.printStackTrace();}
    			catch (IOException e){e.printStackTrace();}
     
    			catch (Exception e){e.printStackTrace();}

    Ca a pas marché. Après j'ai essayé de mettre cette méthode dans un thread ou dans une asyncTask... pas marché non plus.


    Puis j'ai essayé une méthode assez différente
    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
    String data = URLEncoder.encode("passwd", "UTF-8")
                             + "=" + URLEncoder.encode("ok", "UTF-8"); 
     
             String text = "";
                BufferedReader reader=null;
     
                // Send data
              try
              {
     
                  URL url = new URL("http://androidexample.com/media/webservice/httppost.php");
     
     
                URLConnection conn = url.openConnection();
                conn.setDoOutput(true);
                OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
                wr.write( data );
                wr.flush();
     
     
              reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
              StringBuilder sb = new StringBuilder();
              String line = null;
     
              while((line = reader.readLine()) != null)
                  {
                         sb.append(line + "\n");
                  }
     
     
                  text = sb.toString();
              }
              catch(Exception ex)
              {
     
              }
              finally
              {
                  try
                  {
     
                      reader.close();
                  }
     
                  catch(Exception ex) {}
              }
     
              content.setText( text  );
     
          }
     
      }

    trouvé sur "http://androidexample.com/How_To_Make_HTTP_POST_Request_To_Server_-_Android_Example/index.php?view=article_discription&aid=64&aaid=89"

    Mais ça n'a pas marché ... et ceci même en mettant dans des threads ou asyncTask.

    J'ai bien sûr vérifié mon manifest pour les permissions mais je suis quasiment sûr que ma problématique ne vient pas de là. D'autant plus que que quand je fais un "mWebView=(WebView) findViewById(R.id.webview);
    mWebView.loadUrl("http://www.google.fr"); ou mon adresse , ça fonctionne très bien , j'ai l'affichage de la page.
    Dans le meilleur des cas quand je fais un post http j'ai une page vide mais certaines fois mon apllication plantait.


    Ci dessous un code que j'ai essayé avec en commentaires des alternatives aussi essayées
    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
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    package fr.celamarche;
     
    import java.io.IOException;
    import java.io.UnsupportedEncodingException;
    import java.net.URLConnection;
    import java.util.ArrayList;
    import java.util.List;
     
    import org.apache.http.HttpResponse;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    import org.apache.http.NameValuePair;
     
     
     
    import android.app.Activity;
    import android.app.Dialog;
    import android.content.Intent;
    import android.content.SharedPreferences;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.os.Handler;
    import android.preference.PreferenceManager;
    import android.util.Log;
    import android.view.View;
    import android.webkit.WebView;
    import android.widget.Button;
    import android.widget.CheckBox;
    import android.widget.EditText;
     
    public class CinqActivity extends Activity{
     
    	private WebView mWebView=null;
     
    	public AsyncTask o102;
     
    	@Override
    	protected void onCreate(Bundle saveInstanceState){
    	super.onCreate(saveInstanceState);
     
     
    	setContentView(R.layout.ciactivity);
    //mWebView=(WebView) findViewById(R.id.webview);
    //mWebView.loadUrl("http://www.google.fr");
     
     
     
    	/*o102=new AsyncTask<Void,Void,Void>(){protected Void doInBackground(Void... params){
     
    		return null;
     
     
    		}
    		protected void onPostExecute(Void result){super.onPostExecute(result);
    		postData();}}.execute();*/
     
     
    	/*Thread t=new Thread(new Runnable(){public void run(){
    		try{
     
     
    			HttpClient ht=new DefaultHttpClient();
    			HttpPost httppost=new HttpPost("http://www.google.fr");
     
    			List<NameValuePair> nameValuePairs=new ArrayList<NameValuePair>(2);
     
     
    			nameValuePairs.add(new BasicNameValuePair("passwd","ok"));
     
       
     
    				httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
     
    			/
     
     
     
    				ht.execute(httppost);
    			}
    			//catch (ClientProtocolException e){e.printStackTrace();}
    			catch (IOException e){e.printStackTrace();}
     
    			//catch (Exception e){e.printStackTrace();}catch (IOException e){e.printStackTrace();}
     
    			//catch (Exception e){e.printStackTrace();}
    	}});
    	t.start();
    	*/
     
    new Cxn().execute("ok");
    final Handler h=new Handler(); 		
    Runnable		mrogres1s1=new Runnable(){
    			@SuppressWarnings("deprecation")
    			@Override
    			public void run(){
     
     
    Intent ittioo = new Intent(CinqActivity.this, SixActivity.class);     
     
     
     
     
    startActivity(ittioo);	   
     
    		 }
     
     
    			 };
     
     
    				h.postDelayed(mrogres1s1, 20000); 		 
     
     
    		}
     
    		private class Cxn extends AsyncTask<String,Integer,Double>{ 
     
    			protected Double doInBackground(String... params){
    		postData(params[0]);
    		return null;}
     
     
    		public void postData(String ams){
    		HttpClient ht=new DefaultHttpClient();
    		HttpPost httppost=new HttpPost("http://www.google.fr");
    try{
    	List<NameValuePair> nameValuePairs=new ArrayList<NameValuePair>();
    	nameValuePairs.add(new BasicNameValuePair("kksd",ams));
     
    		httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
     
    	//catch (UnsupportedEncodingException e){e.printStackTrace();}
     
     
     
    		HttpResponse rse=ht.execute(httppost);
     
    	}
    catch (ClientProtocolException e){e.printStackTrace();}
    catch (IOException e){e.printStackTrace();}
    	}}
     
     
    }
     
    }


    Mon manifest ci dessous (j'ai essayé
    <uses-permission android:name="android.permission.INTERNET"></uses-permission> ou <uses-permission android:name="android.permission.INTERNET"/> mais rien...)
    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
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="fr.celamarche"
        android:versionCode="1"
        android:versionName="1.0" >
     
        <uses-sdk
            android:minSdkVersion="7"
            android:targetSdkVersion="18" />
       <uses-permission  android:name="android.permission.INTERNET"></uses-permission>
             <uses-permission  android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
     
     
        <uses-permission 
     
            android:name="android.permission.READ_EXTERNAL_STORAGE"/>
     
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
     
     
     
     
            <activity
                android:name="fr.celamarche.PremActivity">
     
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
     
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
     
            <activity
                android:name="fr.celamarche.DeuxActivity"
                android:label="@string/app_name">
     
            </activity>
     
     
            <activity
                android:name="fr.celamarche.DeuxnActivity"
                android:label="@string/app_name">
     
            </activity>
     
                  <activity
                android:name="fr.celamarche.TroisActivity"
                android:label="@string/app_name">
     
            </activity>
     
             <activity
                android:name="fr.celamarche.TroisnActivity"
                android:label="@string/app_name">
     
            </activity>      
     
     
     
             <activity
                android:name="fr.celamarche.QuatActivity"
                android:label="@string/app_name">
     
            </activity>
             <activity
                android:name="fr.celamarche.QuatnActivity"
                android:label="@string/app_name">
     
            </activity>
             <activity
                android:name="fr.celamarche.CinqActivity"
                android:label="@string/app_name">
                       </activity>
     
             <activity
                android:name="fr.celamarche.SixActivity"
                android:label="@string/app_name">
     
            </activity>
     
                <activity
                android:name="fr.celamarche.ThreeActivity"
                android:label="@string/app_name">
     
            </activity>
     
                 <activity
                android:name="fr.celamarche.FourActivity"
                android:label="@string/app_name">
     
            </activity>
     
     
        </application>
     
    </manifest>

    Voici 2 de mes logcats (le premier avec la première méthode:HttpClient ht=new DefaultHttpClient();
    HttpPost httppost=new HttpPost("http://www.google.fr");..., le deuxième pour la méhtode: URL url = new URL("http://androidexample.com/media/webservice/httppost.php");URLConnection conn = url.openConnection();...)
    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
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    07-31 17:55:25.765: E/Trace(7866): error opening trace file: No such file or directory (2)
    07-31 17:55:25.797: V/ActivityThread(7866): Class path: /data/app/fr.celamarche-1.apk, JNI path: /data/data/fr.celamarche/lib
    07-31 17:55:25.814: D/ActivityThread(7866): BIND_APPLICATION handled : 0 / AppBindData{appInfo=ApplicationInfo{415ee248 fr.celamarche}}
    07-31 17:55:25.903: I/MdpService(7866): [MDP INFO](7866): BpMdpService::parseJpg addr:0x52a44000, size:5645, fd:45
    07-31 17:55:25.904: I/MdpService(7866): [MDP INFO](7866): BpMdpService::parseJpg reply:0
    07-31 17:55:25.905: I/MdpService(7866): [MDP INFO](7866): BpMdpService::getJpgInfo 241 136 (0)
    07-31 17:55:25.905: D/skia(7866): The file input width: 241, height: 136, output width: 241, height: 136, format: 6, prefer size: 0, dither: 0
    07-31 17:55:25.906: I/MdpService(7866): [MDP INFO](7866): get proc handler 0xc3b9b040
    07-31 17:55:25.912: I/MdpService(7866): [MDP INFO](7866): BpMdpService::decodeJpg reply:0
    07-31 17:55:25.929: D/ActivityThread(7866): ACT-AM_ON_RESUME_CALLED ActivityRecord{415ef638 token=android.os.BinderProxy@415eeeb8 {fr.celamarche/fr.celamarche.PremActivity}}
    07-31 17:55:25.943: D/ActivityThread(7866): ACT-LAUNCH_ACTIVITY handled : 0 / ActivityRecord{415ef638 token=android.os.BinderProxy@415eeeb8 {fr.celamarche/fr.celamarche.PremActivity}}
    07-31 17:55:25.999: I/SurfaceTextureClient(7866): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 17:55:26.002: D/libEGL(7866): loaded /vendor/lib/egl/libEGL_mtk.so
    07-31 17:55:26.021: D/libEGL(7866): loaded /vendor/lib/egl/libGLESv1_CM_mtk.so
    07-31 17:55:26.030: D/libEGL(7866): loaded /vendor/lib/egl/libGLESv2_mtk.so
    07-31 17:55:26.123: E/IMGSRV(7866): :0: gralloc_register_buffer: hnd = 521b3db8, ID=736
    07-31 17:55:26.130: E/MMUMapper(7866): fail to register MVA, unsupported format(0x5)
    07-31 17:55:26.131: D/OpenGLRenderer(7866): Enabling debug mode 0
    07-31 17:55:26.334: E/IMGSRV(7866): :0: gralloc_register_buffer: hnd = 4f0fab18, ID=737
    07-31 17:55:26.334: E/MMUMapper(7866): fail to register MVA, unsupported format(0x5)
    07-31 17:55:36.823: D/ActivityThread(8074): ACT-LAUNCH_ACTIVITY handled : 0 / ActivityRecord{415ebce0 token=android.os.BinderProxy@415eb560 {fr.celamarche/fr.celamarche.PremActivity}}
    07-31 17:55:36.858: I/SurfaceTextureClient(8074): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 17:55:36.863: D/libEGL(8074): loaded /vendor/lib/egl/libEGL_mtk.so
    07-31 17:55:36.877: D/libEGL(8074): loaded /vendor/lib/egl/libGLESv1_CM_mtk.so
    07-31 17:55:36.882: D/libEGL(8074): loaded /vendor/lib/egl/libGLESv2_mtk.so
    07-31 17:55:36.910: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 52202ee8, ID=744
    07-31 17:55:36.910: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:36.912: D/OpenGLRenderer(8074): Enabling debug mode 0
    07-31 17:55:37.039: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 4f0fab58, ID=745
    07-31 17:55:37.039: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:37.924: D/VelocityTracker(8074): Couldn't open '/dev/touch' (No such file or directory)
    07-31 17:55:37.924: D/VelocityTracker(8074): tpd read x fail: Bad file number
    07-31 17:55:37.925: D/VelocityTracker(8074): tpd read y fail: Bad file number
    07-31 17:55:38.131: V/Provider/Setting(8074): invalidate [system]: current 30 != cached 0
    07-31 17:55:38.133: V/Provider/Setting(8074): from db cache, name = sound_effects_enabled value = 1
    07-31 17:55:38.319: V/Provider/Setting(8074): from db cache, name = date_format value = dd-MM-yyyy
    07-31 17:55:38.324: D/dalvikvm(8074): GC_CONCURRENT freed 107K, 4% free 6665K/6919K, paused 12ms+9ms, total 32ms
    07-31 17:55:38.397: I/SurfaceTextureClient(8074): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 17:55:38.403: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 5317ff38, ID=746
    07-31 17:55:38.403: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:38.488: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 53849d10, ID=747
    07-31 17:55:38.488: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:38.546: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 53843c30, ID=748
    07-31 17:55:38.546: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:38.559: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 53843b58, ID=749
    07-31 17:55:38.559: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:39.279: V/Provider/Setting(8074): from settings cache , name = sound_effects_enabled value = 1
    07-31 17:55:39.381: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x533ac000) size(485120) 
    07-31 17:55:39.382: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 5317ff38, ID=746
    07-31 17:55:39.382: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x53971000) size(485120) 
    07-31 17:55:39.382: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 53849d10, ID=747
    07-31 17:55:39.382: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x53855000) size(485120) 
    07-31 17:55:39.383: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 53843c30, ID=748
    07-31 17:55:39.389: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 53849d10, ID=750
    07-31 17:55:39.389: E/MMUMapper(8074): fail to register MVA, unsupported format(0x1)
    07-31 17:55:39.405: D/ActivityThread(8074): ACT-AM_ON_PAUSE_CALLED ActivityRecord{415ebce0 token=android.os.BinderProxy@415eb560 {fr.celamarche/fr.celamarche.PremActivity}}
    07-31 17:55:39.416: D/ActivityThread(8074): ACT-PAUSE_ACTIVITY handled : 1 / android.os.BinderProxy@415eb560
    07-31 17:55:39.433: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x533aa000) size(485120) 
    07-31 17:55:39.434: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 53849d10, ID=750
    07-31 17:55:39.545: V/Provider/Setting(8074): from db cache, name = show_password value = null
    07-31 17:55:39.597: D/ActivityThread(8074): ACT-AM_ON_RESUME_CALLED ActivityRecord{416655c8 token=android.os.BinderProxy@41664e48 {fr.celamarche/fr.celamarche.CinqActivity}}
    07-31 17:55:39.605: D/ActivityThread(8074): ACT-LAUNCH_ACTIVITY handled : 0 / ActivityRecord{416655c8 token=android.os.BinderProxy@41664e48 {fr.celamarche/fr.celamarche.CinqActivity}}
    07-31 17:55:39.635: I/SurfaceTextureClient(8074): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 17:55:39.667: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 533d1350, ID=751
    07-31 17:55:39.667: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:39.739: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 533f19f8, ID=752
    07-31 17:55:39.739: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:39.824: E/IMGSRV(8074): :0: gralloc_register_buffer: hnd = 53406fa0, ID=753
    07-31 17:55:39.827: E/MMUMapper(8074): fail to register MVA, unsupported format(0x5)
    07-31 17:55:39.853: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x53031000) size(614400) 
    07-31 17:55:39.853: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 52202ee8, ID=744
    07-31 17:55:39.854: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x534f5000) size(614400) 
    07-31 17:55:39.857: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 4f0fab58, ID=745
    07-31 17:55:39.859: E/MMUMapper(8074): invalid operation for unregister MVA with VA(0x539e9000) size(614400) 
    07-31 17:55:39.860: E/IMGSRV(8074): :0: gralloc_unregister_buffer: hnd = 53843b58, ID=749
    07-31 17:55:39.865: I/SurfaceTextureClient(8074): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 17:55:39.936: D/ActivityThread(8074): ACT-STOP_ACTIVITY_HIDE handled : 0 / android.os.BinderProxy@415eb560
    07-31 17:55:40.028: D/dalvikvm(8074): GC_CONCURRENT freed 251K, 6% free 6840K/7239K, paused 11ms+12ms, total 69ms
    07-31 17:55:40.044: D/TilesManager(8074): new EGLContext from framework: 52202aa8 
    07-31 17:55:40.044: D/GLWebViewState(8074): Reinit shader
    07-31 17:55:40.057: D/GLWebViewState(8074): Reinit transferQueue
    07-31 17:55:40.058: I/SurfaceTextureClient(8074): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 17:55:40.059: I/SurfaceTexture(8074): [unnamed-8074-0] [virtual void android::SurfaceTexture::onBuffersReleased()] mCurrentTexture:-1, mCurrentBuf:0x0
    07-31 17:55:40.161: I/System.out(8074): propertyValue:false
    07-31 17:55:40.163: I/System.out(8074): [socket][0] connection /213.186.33.3:80;LocalPort=45054(0)
    07-31 17:55:40.164: I/System.out(8074): [CDS]connect[/213.186.33.3:80] tm:90
    07-31 17:55:40.164: D/Posix(8074): [Posix_connect Debug]Process fr.celamarche :80 
    07-31 17:55:40.200: I/System.out(8074): [socket][/192.168.0.10:45054] connected
    07-31 17:55:40.200: I/System.out(8074): [CDS]rx timeout:0
    07-31 17:55:40.204: I/System.out(8074): >doSendRequest
    07-31 17:55:40.206: I/System.out(8074): <doSendRequest
    07-31 17:55:46.636: I/SurfaceTextureClient(8074): [0x534df010] frames:5, duration:6.918000, fps:0.722715
    07-31 17:56:16.997: I/SurfaceTextureClient(8074): [0x534df010] frames:18, duration:30.360001, fps:0.592868

    le deuxième

    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
    07-31 23:42:56.995: D/dalvikvm(8176): Late-enabling CheckJNI
    07-31 23:42:57.111: E/Trace(8176): error opening trace file: No such file or directory (2)
    07-31 23:42:57.136: V/ActivityThread(8176): Class path: /data/app/fr.celamarche-1.apk, JNI path: /data/data/fr.celamarche/lib
    07-31 23:42:57.145: D/ActivityThread(8176): BIND_APPLICATION handled : 0 / AppBindData{appInfo=ApplicationInfo{4162e7c0 fr.celamarche}}
    07-31 23:42:57.348: V/Provider/Setting(8176): invalidate [system]: current 30 != cached 0
    07-31 23:42:57.355: V/Provider/Setting(8176): from db cache, name = show_password value = null
    07-31 23:42:57.438: D/ActivityThread(8176): ACT-AM_ON_RESUME_CALLED ActivityRecord{416310c8 token=android.os.BinderProxy@4162f430 {fr.celamarche/fr.celamarche.CinqActivity}}
    07-31 23:42:57.448: I/System.out(8176): initHttpEngine: implies a POST method
    07-31 23:42:57.650: D/ActivityThread(8176): ACT-LAUNCH_ACTIVITY handled : 0 / ActivityRecord{416310c8 token=android.os.BinderProxy@4162f430 {fr.celamarche/fr.celamarche.CinqActivity}}
    07-31 23:42:57.692: I/SurfaceTextureClient(8176): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 23:42:57.707: D/libEGL(8176): loaded /vendor/lib/egl/libEGL_mtk.so
    07-31 23:42:57.739: D/libEGL(8176): loaded /vendor/lib/egl/libGLESv1_CM_mtk.so
    07-31 23:42:57.743: D/libEGL(8176): loaded /vendor/lib/egl/libGLESv2_mtk.so
    07-31 23:42:57.811: E/IMGSRV(8176): :0: gralloc_register_buffer: hnd = 52260880, ID=651
    07-31 23:42:57.813: E/MMUMapper(8176): fail to register MVA, unsupported format(0x5)
    07-31 23:42:57.818: D/OpenGLRenderer(8176): Enabling debug mode 0
    07-31 23:42:57.894: E/IMGSRV(8176): :0: gralloc_register_buffer: hnd = 540edc20, ID=652
    07-31 23:42:57.894: E/MMUMapper(8176): fail to register MVA, unsupported format(0x5)
    07-31 23:42:57.984: E/IMGSRV(8176): :0: gralloc_register_buffer: hnd = 541531d8, ID=653
    07-31 23:42:57.984: E/MMUMapper(8176): fail to register MVA, unsupported format(0x5)
    07-31 23:42:58.006: D/TilesManager(8176): new EGLContext from framework: 52259c98 
    07-31 23:42:58.006: D/GLWebViewState(8176): Reinit shader
    07-31 23:42:58.014: D/GLWebViewState(8176): Reinit transferQueue
    07-31 23:42:58.023: I/SurfaceTextureClient(8176): [void android::SurfaceTextureClient::init()] debug.stc.fps: 3000 ms
    07-31 23:42:58.023: I/SurfaceTexture(8176): [unnamed-8176-0] [virtual void android::SurfaceTexture::onBuffersReleased()] mCurrentTexture:-1, mCurrentBuf:0x0
    07-31 23:42:58.938: I/System.out(8176): propertyValue:false
    07-31 23:42:58.939: I/System.out(8176): [socket][0] connection www.jeremi.fr/213.186.33.3:80;LocalPort=46437(0)
    07-31 23:42:58.939: I/System.out(8176): [CDS]connect[www.jeremi.fr/213.186.33.3:80] tm:90
    07-31 23:42:58.939: D/Posix(8176): [Posix_connect Debug]Process fr.celamarche :80 
    07-31 23:42:58.980: I/System.out(8176): [socket][/192.168.0.10:46437] connected
    07-31 23:42:58.980: I/System.out(8176): [CDS]rx timeout:0
    07-31 23:42:59.108: I/System.out(8176): [CDS]close[46437]
    07-31 23:42:59.108: I/System.out(8176): close [socket][/0.0.0.0:46437]
    07-31 23:42:59.144: D/dalvikvm(8176): GC_CONCURRENT freed 248K, 6% free 6537K/6919K, paused 11ms+2ms, total 32ms
    07-31 23:43:04.689: I/SurfaceTextureClient(8176): [0x5225eca8] frames:5, duration:6.797000, fps:0.735586
    07-31 23:43:37.613: I/SurfaceTextureClient(8176): [0x5225eca8] frames:18, duration:32.924000, fps:0.546710
    07-31 23:43:42.291: I/SurfaceTextureClient(8176): [0x5225eca8] frames:1, duration:4.677000, fps:0.213773


    Merci pour votre aide!

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	//j'ai essayé de mettre 0,1,2 ou les 3 catch
    	catch (ClientProtocolException e){e.printStackTrace();}
    	catch (IOException e){e.printStackTrace();}
    	catch (Exception e){e.printStackTrace();}



    Il faudrait surtout éviter les catch vide !!!
    Parce que là tu ignores complètement l'erreur, du coup c'est sûr quand "ca marche pas" on ne sait pas pourquoi et on est bien emmerdé !

    Si tu ne sais pas comment traiter une exception, encapsule-là dans une RuntimeException :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    catch (IOException e) {
        throw new RuntimeException(e);
    }
    Et tu auras plus de détail sur le problème exact...





    Sinon le try/catch/finally c'est bien, mais un peu lourd et pas forcément aisé lorsqu'on a plusieurs ressources.
    Je te conseillerais plutôt d'utiliser un try/finally par ressource... et un seul bloc try/catch qui englobe le tout si besoin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    try {
         final Reader reader = new BufferedReader(...)
         try {
     
             // code
     
        } finally {
            reader.close();
        }
    } catch (IOException e) {
        // NE JAMAIS INGORER UNE EXCEPTION !
        throw new RuntimeException(e);
    }
    Ou mieux avec Java 7 le try-with-ressource qui est équivalent, mais bien plus concis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    try (Reader reader = new BufferedReader(...)) {
     
        // code
     
    }


    a++

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut
    Ok, je vais essayer le try catch avec runtime. J enverrai le nouveau logcat apres si utile. Pourtant j imagine que le pb presente tel quel peut avoir une resolution. Qq un a une idee? Je reposte bientot

  4. #4
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Ton code est difficilement lisible (indentation inexistante) et ton LogCat inutile : il n'y a pas les erreurs. Difficile de t'aider.
    Tu indiques que tu as un problème, mais tu ne l'indiques pas. Par contre, tu indiques tout ce que tu as essayé, ce qui est une bonne chose.
    Sur Android, on remonte les exceptions avec Log.e(TAG, MESSAGE, exception) et pas avec printStackTrace, ou TAG est un identifiant permettant de facilement filtrer le LogCat, MESSAGE est un message explicatif et e est l'exception levée.
    Comme le souligne adiGuba, ne laisse aucun catch vide.

    En bref : quel est ton problème ? Quelles sont les erreurs (traces complètes), s'il y en a ?
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut
    Effevtivement, je n indente pas trop... et je ne percevais pas trop d erreurs dans mon logcat. (je me disais que je n avais pas les connaissances suffisantes pour les deceler mais bon si y en a pas de flagrantes...).
    En fait je n ai pas d ecran noir mais un ecran blanc, vide. Ca doit etre comme ca quand ca charge sauf que mon pb est que cet ecran reste vide, la page ne s affiche jamais. J ai decouvert un nouveau code avec urlConnection que je n ai pas encore essaye.
    Je vous dit si ca marche tout a l heure

  6. #6
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 969
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 969
    Points : 3 375
    Points
    3 375
    Par défaut
    Comment veux-tu te retrouver dans ton code si tu n'indentes pas correctement !

    Ne pas catcher les erreurs c'est mal!
    Trop catcher c'est mal!
    Mal catcher c'est mal!

    Les erreurs peuvent se cacher dans les catch
    Si la réponse vous a aidé, pensez à cliquer sur +1

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut
    Bon, j idente maintenant..

    Le code avec urlConnection que j avais en partie, plus ou moins, essaye ne fonctionne pas. J ai toujours l ecran vide

    Personne n a d idee?

  8. #8
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Si tu veux de l'aide, aide-nous

    Quel est ton problème réel ? "Un écran vide", pourquoi est-il vide ? Qu'essaies-tu de faire ? Où est-ce que ça bloque ? Quelles sont les traces ? Et s'il n'y en a pas, soit tu es dans un cas très particulier, soit tu as des catchs qui ne remontent pas les exceptions.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  9. #9
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 969
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 969
    Points : 3 375
    Points
    3 375
    Par défaut
    Si tu ne t'en sors pas, laisse uniquement le catch le plus à l'extérieur et mets les autres en commentaire, tu seras vite fixé
    Si la réponse vous a aidé, pensez à cliquer sur +1

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut
    A la place de l ecran vide je voudrais avoir l affichage de la page sur laquelle j ai fait un post. Avec la seconde methode (celle avec urlConnection assez differente de la premiere) en ayant mis a la place [CODE]while (reader.readLine())!=null)}System.out..println(line);}[CODE] j ai le code html, ligne par ligne,
    qui apparait dans mon logcat : System.out(6362): div id="ecform

    Je voudrais qu il soit aussi interprete par android de maniere a ce qu il s affiche dans l ecran de l application

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut
    A la place de l ecran vide je voudrais avoir l affichage de la page sur laquelle j ai fait un post. Avec la seconde methode (celle avec urlConnection assez differente de la premiere) en ayant mis a la place [CODE]while (reader.readLine())!=null)}System.out..println(line);}[CODE] j ai le code html, ligne par ligne,
    qui apparait dans mon logcat : System.out(6362): div id="ecform

    Je voudrais qu il soit aussi interprete par android de maniere a ce qu il s affiche dans l ecran de l application

  12. #12
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 969
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 969
    Points : 3 375
    Points
    3 375
    Par défaut
    Reposte tout ton code indenté
    Si la réponse vous a aidé, pensez à cliquer sur +1

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2014
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2014
    Messages : 66
    Points : 33
    Points
    33
    Par défaut
    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
    *String data= URLEncoder.encode("user", "UTF-8") + "=" + URLEncoder.encode("ok","UTF-8");
    ************
                String text = "";
                BufferedReader reader=null;
    *
    **********// Send data 
    **********try
    **********{ 
     
     
     
    ************
    ************// Defined URL* where to send data
    ************URL url = new URL("http://androidexample.com/media/webservice/httppost.php");
    ***************
    ***********// Send POST data request
    *
    ************URLConnection conn = url.openConnection(); 
    ************conn.setDoOutput(true); 
    ************OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream()); 
    ************wr.write( data ); 
    ************wr.flush(); 
    ********
    ************// Get the server response 
    *************
    ************reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    ************String line = null;
    **********
    **********// Read Server Response
    **********while((line = reader.readLine()) != null)
    **************{
    *********************System.out.println(line);
    **************}
    **************
    **************
    **********
    **********}
    **********catch(Exception ex)
    **********{
    ***************
    **********}
    **********finally
    **********{
    **************try
    **************{
    ***
    ******************reader.close();
    **************}
    *
    **************catch(Exception ex) {}


    Avec ce code la j ai du html dans mon logcat mais pas sur l ecran de l appli(cf post ci dessus).

Discussions similaires

  1. Requête POST HTTPS
    Par plieuse dans le forum Services Web
    Réponses: 2
    Dernier message: 28/10/2013, 14h49
  2. HttpClient : problème de requête POST
    Par pyo666 dans le forum API standards et tierces
    Réponses: 0
    Dernier message: 08/02/2010, 01h27
  3. Problème réception requête POST
    Par thierry6259 dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 13/10/2009, 09h10
  4. Requête POST http C ?
    Par saladin79 dans le forum Réseau
    Réponses: 2
    Dernier message: 21/08/2008, 08h36
  5. Comment envoyer une requête POST via HTTP ?
    Par pdtor dans le forum C++
    Réponses: 2
    Dernier message: 13/09/2005, 05h54

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