Bonsoir a tous !

Voilà, j'ai récemment commencé la programmation android et comme tout newbie de programmation j'ai du mal dans un de mes projets.

Voilà je souhaiterais faire une application qui permet d'aller récupérer un contact dans le téléphone (Nom et numéro de mobile), de l'enregistrer dans l'appli sous forme de liste, et de cette liste pouvoir sortir tous les numéros de téléphone dans une fonction d'envoi de sms, soit en quelque sorte faire une appli pour des sms groupé, mais de façon à ce que cette liste reste sauvegardée et l'utilisateur puisse voir les contact inclue dans la liste.

En faite ce que j'ai fais jusque la:

On lance l'appli on arrive sur une page ou on nous propose 3 choix :

-Ajouter contact
-Liste contact
-Envoyer sms

Premièrement on ajoute un contact donc le bouton nous mène sur une autre "page" qui contient 2 zone de textes, une pour le nom l'autre pour le numéro. Il y a en dessous un bouton pour ouvrir le gestionnaire de contact.

Dans l'idéal il faudrait que quand on sélectionne 1 contact dans le gestionnaire son nom et numéro s'affiche dans les zone de textes et par pression sur un bouton "enregistrer" on puisse retrouver le contacte dans la partie "liste de contact"

Une fois que cette liste de contact contient des contact il fraudait pouvoir en un clique sur envoyer SMS envoyer un message prédéfini à toute cette liste de contacts.

J'ai essayé de me débrouiller avec les tutos en ligne mais rien n'y fait, j'ai besoins de vos lumières !

Merci d'avance !

Voilà le code de ma class :

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
151
152
package com.iofdev.jeuxdecours;
 
// ici tous les imports 
 
public class MainActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        LayoutInflater factory = LayoutInflater.from(this);
        final View JoueurActivity = factory.inflate(R.layout.joueur_activity, null);
        final View AddJoueur = factory.inflate(R.layout.alertdialogperso, null);
 
    }
 
  public void showAlert(View view) {	  
	  setContentView(R.layout.alertdialogperso);
}
 
// ----- Demande de contact-------- PB !
  private static final int CONTACT_PICKER_RESULT = 1001;
  public void doLaunchContactPicker(View view) {
	    Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,
	            Contacts.CONTENT_URI);
	    startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT);
	}
  @Override  
  protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
      if (resultCode == RESULT_OK) {  
          switch (requestCode) {  
          case CONTACT_PICKER_RESULT:
              final EditText phoneInput = (EditText) findViewById(R.id.ComNum);
              Cursor cursor = null;  
              String phoneNumber = "";
              List<String> allNumbers = new ArrayList<String>();
              int phoneIdx = 0;
              try {  
                  Uri result = data.getData();  
                  String id = result.getLastPathSegment();  
                  cursor = getContentResolver().query(Phone.CONTENT_URI, null, Phone.CONTACT_ID + "=?", new String[] { id }, null);  
                  phoneIdx = cursor.getColumnIndex(Phone.DATA);
                  if (cursor.moveToFirst()) {
                      while (cursor.isAfterLast() == false) {
                          phoneNumber = cursor.getString(phoneIdx);
                          allNumbers.add(phoneNumber);
                          cursor.moveToNext();
                      }
                  } else {
 
                  }  
              } catch (Exception e) {  
 
              } finally {  
                  if (cursor != null) {  
                      cursor.close();
                  }
 
                  final CharSequence[] items = allNumbers.toArray(new String[allNumbers.size()]);
                  AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                  builder.setTitle("Choose a number");
                  builder.setItems(items, new DialogInterface.OnClickListener() {
                      public void onClick(DialogInterface dialog, int item) {
                          String selectedNumber = items[item].toString();
                          selectedNumber = selectedNumber.replace("-", "");
                          phoneInput.setText(selectedNumber);
                      }
                  });
                  AlertDialog alert = builder.create();
                  if(allNumbers.size() > 1) {
                      alert.show();
                  } else {
                      String selectedNumber = phoneNumber.toString();
                      selectedNumber = selectedNumber.replace("-", "");
                      phoneInput.setText(selectedNumber);
                  }
 
                  if (phoneNumber.length() == 0) {  
 
                  }  
              }  
              break;  
          }  
      } else {
      }  
  }
	public void showSelectedNumber(int type, String number) {
	    EditText num=(EditText)findViewById(R.id.ComNum);
        num.setText(number);
	}
 
	 public void envoi(View view) {
 
	      LayoutInflater factory = LayoutInflater.from(this);
	      final View envoiView = factory.inflate(R.layout.alertenvoie, null);
 
	      AlertDialog.Builder env = new AlertDialog.Builder(this);
 
	      env.setView(envoiView);
 
	      env.setTitle("Défis");
 
	      env.setIcon(android.R.drawable.arrow_up_float);
 
	      env.setPositiveButton("Valider", new DialogInterface.OnClickListener() {
	          public void onClick(DialogInterface dialog, int which) {
 
	          	EditText tEnv = (EditText)envoiView.findViewById(R.id.ComNumEnvoi);
	          	EditText tMot = (EditText)envoiView.findViewById(R.id.ComMot);
 
	          	Editable numero = tEnv.getText();
	          	Editable mot = tMot.getText();
 
	          	SmsManager manager = SmsManager.getDefault();
	          	manager .sendTextMessage(numero +"", null, "Salut, voici le nouveau défis : \n"+ mot, null, null);
 
	          	setContentView(R.layout.joueur_activity);
	        } });
 
	      env.setNegativeButton("Annuler", new DialogInterface.OnClickListener() {
	          public void onClick(DialogInterface dialog, int which) {
 
	        } });
	      env.show();
	}
 
	 public void goSmsFin(View view) {
 
 
	          	SmsManager manager = SmsManager.getDefault();
	          	manager .sendTextMessage("0604650668", null, "Le defis est fini! \nBravo au vainqueur!! \n C'est parti pour la suite !!!", null, null); 
 
//changer num de tel par variable tableau des numero en jeux !
 
	          	setContentView(R.layout.activity_main);
 
	}
	 public void goAcc(View view) {
 
       	setContentView(R.layout.activity_main);
 
}
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
 
        return true;
    }
 
}

Cordialement

Flyer-73