IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Mobile en Java Discussion :

Envoie de données Mobile -> Serveur


Sujet :

Développement Mobile en Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Avatar de ZouBi
    Inscrit en
    Octobre 2007
    Messages
    508
    Détails du profil
    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2007
    Messages : 508
    Par défaut Envoie de données Mobile -> Serveur
    Bonjour,
    Je realise en ce moment une application mobile, où l'utilisateur peut choisir une image dans ses dossiers, ou prendre directement une photo depuis l'appareil, et envoyer le tout à un serveur.
    Il envoit tout d'abord au serveur la taille de l'image (w*h), et ensuite, envoi la couleur de chaque pixel au serveur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
              os.write(Cast.intToByteArray(w));
              os.write(Cast.intToByteArray(h));
     
                int rgb[] = new int[1];
                for(int i=0; i<h; i++) {
                    for(int j=0; j<w; j++) {
                        image.getRGB(rgb,0,1,j,i,1,1);
                        os.write(Cast.intToByteArray(rgb[0]));
     
                    }
                }
    Le serveur de son coté, reçoit tout ça et en refait la constitution.
    La connexion au serveur se fait normalement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    client = (SocketConnection) Connector.open("socket://mon_hote:16000");
                is = client.openInputStream();
                os = client.openOutputStream();
    Tout ça fonctionne parfaitement avec l'émulateur, et le serveur ( sur une autre machine ), recoit bien la bonne photo parfaitement reconstitué.

    En pratique, sur un vrai mobile (Nokia N95), le serveur ne reçoit pas toutes les informations, ou alors certaines sont corrompues, faussées.
    Au lieu de recevoir par exemple 6000 couleurs de pixels, il va en recevoir par exemple que 5900. Ou alors quand elle arrive en entier, la photo n'est pas correctement constitué ( des nuances de couleurs, des taches RVB sur la photo )...

    Donc je ne sais pas comment régler ça, y a t'il un moyen de vérifier cette transmission? J'suis pourtant bien en TCP... Est ce le mobile qui n'envoie pas correctement? J'envoie trop rapidement les données peut être?

    Lorsque le transfert se passe par wifi du N95 au serveur, voilà l'apercu de l'image recue par le serveur :


    et maintenant par gsm :


    Dans les deux cas, des pixels se perdent ( assez minimes pour les voir )
    mais on dirait que en gsm, il y a une sorte de decalage au niveau des RVB quand un byte se perd.

    Quelqu'un aurait une idée?

    Merci d'avance
    Images attachées Images attachées   

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. envoi de données Javascript vers serveur
    Par oclone dans le forum ASP.NET
    Réponses: 11
    Dernier message: 03/11/2008, 13h26
  2. envoi des données d'un poste client vers le serveur
    Par ouadie99 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 11/06/2008, 12h52
  3. [cURL] connexion SSL sur un serveur et envoi de données via POST.
    Par Tongs dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 07/02/2008, 15h29
  4. Réponses: 1
    Dernier message: 26/11/2006, 11h57
  5. Réponses: 3
    Dernier message: 21/11/2006, 18h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo