Bonjour,

Je développe actuellement une application android en java avec android sudio.
Je cherche à faire un système d'inscription, pour cela j'ai une activité register avec 3 EditText (Pseudo, mail, mdp) , un bouton inscription ainsi qu'un TextView vide (Affichant un message d'erreur si il y a).
Register contient ce 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
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
 
 
 
public class register extends AppCompatActivity {
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
 
        super.onCreate(savedInstanceState);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.activity_register);
 
 
        Button button;
 
        button = (Button) findViewById(R.id.register);
 
        //on applique un écouteur d'événement au clique sur le bouton
        button.setOnClickListener(
 
                new View.OnClickListener() {
                    public void onClick(View v) {
 
                        String result = "";
                        EditText pseudo = (EditText)findViewById(R.id.pseudo);
                        final String vpseudo = pseudo.getText().toString();
                        EditText mail = (EditText)findViewById(R.id.mail);
                        String vmail = mail.getText().toString();
                        EditText mdp = (EditText)findViewById(R.id.mdp);
                        String vmdp = mdp.getText().toString();
                        final TextView erreurtxt = (TextView) findViewById(R.id.erreur);
 
 
 
 
 
                        new fond().execute();
 
 
 
 
 
                    }
                }
        );
    }
}
Donc à l'appuie du bouton la tache de fond (AsyncTask) s’exécute.
La tache de fond:
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
import android.os.AsyncTask;
 
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
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.json.JSONObject;
 
import java.io.InputStream;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
 
 
class fond extends AsyncTask<Void, Integer, String> {
 
 
    protected void onPreExecute(String... param) {
 
 
    }
 
    protected String doInBackground(Void... arg0) {
        JSONObject jObj;
 
 
        ArrayList<NameValuePair> vrequete = new ArrayList<NameValuePair>();
        vrequete.add(new BasicNameValuePair("pseudo", "test"));
        vrequete.add(new BasicNameValuePair("mail", "test"));
        vrequete.add(new BasicNameValuePair("mdp", "test"));
 
        try {
            HttpClient httpclient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost("http://192.168.1.16/android/register.php");
            httppost.setEntity(new UrlEncodedFormEntity(vrequete));
            HttpResponse response = httpclient.execute(httppost);
            HttpEntity entity = response.getEntity();
            InputStream is = entity.getContent();
            BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            String line = reader.readLine();
            sb.append(line + "\n");
            is.close();
 
 
 
            String result = sb.toString();
            jObj = new JSONObject(result);
 
 
 
 
 
        } catch (Exception e) {
            e.printStackTrace();
 
        }
 
        return null;
    }
 
    protected void onProgressUpdate(Integer... a) {
 
    }
 
    protected void onPostExecute() {
 
        // erreurtxts.setText("Fin traitement");
 
 
    }
}
Ce que je cherche à faire:
-Passer les variables des edittext (Déclarés dans l'activité register), ainsi que le TextView (Pour modifier le texte affiché dans l'AsyncTask) en les rendant accessible partout dans la classe.
-Bien paramètre l'AsyncTask (Je débute, je ne vois donc pas les imperfection majeurs)
-Si possible trouver un moyen de permettre à l'utilisateur de refaire une requête après une déjà faites

Je me tourne vers vous car après des heures d'acharnement je reste bloqué.

Ps: Je débute, donc un peu d'indulgence Et j’espère être dans la bonne catégorie.