salut tout le monde

je travaille sur un programme d'envoi multiple d'image via bluetooth. c'est similaire au projet des bornes publicitaires interactives.

mon problème est dans l'envoie, lorsqu'il s'agit de 3 ou 4 téléphone ça marche mais lorsque je me déplace dans un lieu plein de téléphone le programme envoie à quelque un est la majorité ne reçoit rien.

bon techniquement j'empile les téléphone détecté dans un vecteur
puis j'ai une fonction qui envoie les images a tout les élément du vecteur par le biais des adresse mac.

voici mon environnement de travail:
SE: ubuntu
bibliothèque bluetooth: BLUEZ
et j'utilise les commande du shell pour la phase de détection et envoie des images.

voici mon 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
55
 
 
package Bluetooth;
 
import Log.FichierLog;
import Main.Main;
import Shell.*;
import java.io.File;
import java.io.IOException;
import java.util.*;
 
 
public class ActionPush extends TimerTask {
 
    public static boolean interompre=false;
    Thread recherche=new GetBTDevicesInRange();
 
    public ActionPush(){
 
    }    
 
 
    public void run() {
        String channel;
        String nomRepAbsolut;
 
         //rechercher les téllephone et les enregistrer dans un vecteur
        GetNameDevices.getNameDevice();
 
          for (Iterator <BTDevice> i=Main.bTDeviceSet.iterator();i.hasNext();) {
              BTDevice dev = i.next();
 
              nomRepAbsolut = Main.nomRepAbsolut+dev.getName();
 
                      //si le rep du tel exsiste
                      Envoie(dev, choixFichier, nomRepAbsolut);
 
          }
    }
 
 
    public void Envoie(BTDevice dev,ChoixFichier choixFichier,String nomRepAbsolut) throws IOException{
 
        String file;
        String[] listefiles = choixFichier.listerRepertoire(Main.defaultDossier);
 
                          file = nomRepAbsolut +"/"+ listefiles[j];
 
                           // retrouvé le channel du tel
                              GetBTDevicesInRange.getBTDevicesInRange(dev);
                          //envoyer le fichier au tel
                           OBEXPush.obexPush(dev,nomRepAbsolut+"/"+file);
 
    }
}
bon le code fonctionne correctement sauf qu'il y a problème de gestion dans l'envoi des fichier.le programme reste beaucoup dans la phase recherche lorsqu'il y a multiple téléphone et n'envoie pas a tout le monde.

sinon si il y a une façon de faire fonctionner la phase recherche sur un port et la phase d'envoi sur un autre port (cad utiliser deux clé bluetooth)

merci d'avance