noob Posté(e) 14 mars 2011 Share Posté(e) 14 mars 2011 Bonjour a tous, Je suis actuellement entrain de développer ma première application android (je suis plutôt dev PHP :)) J'ai suivi le tutoriel sur votre wiki http://wiki.frandroid.com/wiki/Requ%C3%AAte_HTTP_POST Je rencontre pourtant un probleme de taille, eclipse refuse la compilation de mon bout de code. ((Button)findViewById(R.id.Blogin)).setOnClickListener(new OnClickListener() { public void onClick(View v) { HttpPost httppost = new HttpPost("http://xxx.com/android-application/checkuser.php"); EditText login = ((EditText)findViewById(R.id.login_e)); String Login = login.getText().toString(); EditText password = ((EditText)findViewById(R.id.password_e)); String Password = password.getText().toString(); List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); nameValuePairs.add(new BasicNameValuePair("login", Login)); nameValuePairs.add(new BasicNameValuePair("pass", Password)); try {httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));} catch (UnsupportedEncodingException e) {e.printStackTrace();} HttpClient httpclient = new DefaultHttpClient(); try {httpclient.execute(httppost);} catch (ClientProtocolException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} Toast.makeText(BoxlsActivity.this, "Table : " + nameValuePairs , Toast.LENGTH_SHORT).show(); HttpResponse response=httpclient.execute(httppost); BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); String s = reader.readLine(); } }); C'est au niveau de HttpResponse que cela bloque. Bon dans un premier temps mon compilateur refuse de compiler si je ne rajoute pas de TRY/CATCH. Je rajoute donc mes try/catch, puis il refuse de compiler car reader.readLine() n'est pas instancier. ((Button)findViewById(R.id.Blogin)).setOnClickListener(new OnClickListener() { public void onClick(View v) { HttpPost httppost = new HttpPost("http://xxx.com/android-application/checkuser.php"); EditText login = ((EditText)findViewById(R.id.login_e)); String Login = login.getText().toString(); EditText password = ((EditText)findViewById(R.id.password_e)); String Password = password.getText().toString(); List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); //On crée la liste qui contiendra tous nos paramètres nameValuePairs.add(new BasicNameValuePair("login", Login)); nameValuePairs.add(new BasicNameValuePair("pass", Password)); try {httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));} catch (UnsupportedEncodingException e) {e.printStackTrace();} HttpClient httpclient = new DefaultHttpClient(); try {httpclient.execute(httppost);} catch (ClientProtocolException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} Toast.makeText(BoxlsActivity.this, "Table : " + nameValuePairs + " a été envoyer", Toast.LENGTH_SHORT).show(); HttpResponse response; try { response = httpclient.execute(httppost); } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } BufferedReader reader; try { reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); } catch (IllegalStateException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { String s = reader.readLine(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }); J'instancie donc mon BufferedReader reader = null; ainsi que HttpResponse response = null; Sa compile, mais l’émulateur pop une erreur type "The application XXX (process YYY) has stopped unexpectedly. Please try again." Merci pour ceux qui s'accrocherons a mon code ;) Noob :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
noob Posté(e) 14 mars 2011 Auteur Share Posté(e) 14 mars 2011 J'ai trouver :) Pour infos il y avait plusieurs chose a vérifier. La première, l’émulateur n’était pas connecter a internet. Il a donc fallut rajouter dans les "run configurations" d'eclipse, un serveur DNS. J'ai ensuite désactiver ma carte réseau de virtualBox et Hamashi. Ensuite dans le Manifest, il faut rajouter la permission INTERNET <uses-sdk android:minSdkVersion="7" /> <uses-permission android:name="android.permission.INTERNET"></uses-permission> Voila, j’espère que sa en aidera certain ;) Leoz Lien vers le commentaire Partager sur d’autres sites More sharing options...
montassar Posté(e) 30 mars 2011 Share Posté(e) 30 mars 2011 J'ai trouver :) Pour infos il y avait plusieurs chose a vérifier. La première, l’émulateur n’était pas connecter a internet. Il a donc fallut rajouter dans les "run configurations" d'eclipse, un serveur DNS. J'ai ensuite désactiver ma carte réseau de virtualBox et Hamashi. Ensuite dans le Manifest, il faut rajouter la permission INTERNET <uses-sdk android:minSdkVersion="7" /> <uses-permission android:name="android.permission.INTERNET"></uses-permission> Voila, j’espère que sa en aidera certain ;) Leoz slt mon ami comment vous avez cree un serveur DNS sur eclipe car dans run configurations il existe que les icons: android emulateur et communs svp aider je la meme problem que vous mais tu as resoudre ton probleme mais moi :( :mad: j' attend votre reponse Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.