Bonjour Bonsoir à tous et à toutes !
1. Pour faire court, quand je lance mon App via USB sur mon Smartphone depuis Android-Studio, l'App se lance puis au bout d'une 20aine de secondes se ferme.
Plus tôt aujourd'hui ce problème avais tout bonnement disparu mais est réapparu comme par magie.
2. De plus comme cité dans l'intitulé, Mon App ne transmet aucune donnée à ma
Base de Données distante qui se trouve sur PhPMyAdmin. Pourtant mon WampServer 3.1.1 indique que tout les services sont lancés.
J'ai d'abord pensé que mon Par-Feu y était pour quelques chose, je l'ai désactiver puis réessayer mais ca n'a rien donner non plus.
3. Je tiens à préciser que j'ai vraiment chercher des solutions par moi même, notamment en me documentant sur la "FAQ Langage Java" ou je pense avoir trouver une piste de réponse. Mais je ne comprends pas où dois-je placer les lignes de codes proposer par l'FAQ.
https://java.developpez.com/faq/java...n-code-elegant
Merci d'avance.
Voici ce qui s'affiche dans le Logcat :
Voici le code, d'après le message d'erreur, les lignes 20 et 72 sont concernées :08-08 16:35:55.274 25168-25168/be.umwami.coach E/AndroidRuntime: FATAL EXCEPTION: main
Process: be.umwami.coach, PID: 25168
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.lang.String.toString()' on a null object reference
at be.umwami.coach.outils.AccesHTTP.onPostExecute(AccesHTTP.java:72)
at be.umwami.coach.outils.AccesHTTP.onPostExecute(AccesHTTP.java:20)
at android.os.AsyncTask.finish(AsyncTask.java:727)
at android.os.AsyncTask.-wrap1(Unknown Source:0)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:744)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:166)
at android.app.ActivityThread.main(ActivityThread.java:7425)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
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 package be.umwami.coach.outils; import android.os.AsyncTask; import android.util.Log; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; 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.util.EntityUtils; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.ArrayList; public class AccesHTTP extends AsyncTask<String, Integer, Long> { private ArrayList<NameValuePair> parametres; private String ret = null; public AsyncResponse delegate = null; /** * Constructeur */ public AccesHTTP() { parametres = new ArrayList<NameValuePair>(); } /** * Ajout d'un paramètre post * @param nom * @param valeur */ public void addParam(String nom, String valeur) { parametres.add(new BasicNameValuePair(nom, valeur)); } /** * Connexion en tâche de fond dans un thread séparé * @param strings * @return */ @Override protected Long doInBackground(String... strings) { HttpClient cnxHttp = new DefaultHttpClient(); HttpPost paramCnx = new HttpPost(strings [0]); try { // encodage des paramètres paramCnx.setEntity(new UrlEncodedFormEntity(parametres)); // connexion et envoie des paramètres, attente de réponse HttpResponse reponse = cnxHttp.execute(paramCnx); // transformation de la réponse ret = EntityUtils.toString(reponse.getEntity()); } catch (UnsupportedEncodingException e) { Log.d("Erreur encodage", "*************"+e.toString()); } catch (ClientProtocolException e) { Log.d("Erreur protocole", "*************"+e.toString()); } catch (IOException e) { Log.d("Erreur I/O", "*************"+e.toString()); } return null; } @Override protected void onPostExecute(Long result) { delegate.processFinish((ret.toString())); } }
Partager