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 Discussion :

Connection socket Java-Android hors réseau local


Sujet :

Développement

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2013
    Messages : 45
    Points : 28
    Points
    28
    Par défaut Connection socket Java-Android hors réseau local
    Bonsoir
    j'aimerais effectuer une communication client-serveur pour laquelle mon téléphone android serais le serveur et mon PC le client.

    j'ai réussi

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2013
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2013
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    pardon
    j'ai réussi a faire un code qui marche lorsque les 2 périphériques sont connectés sur le réseau wifi local ,mais dès que je passe en 3G (bien évidemment je modifie l'adresse de connection au niveau du client)
    mais la sa ne marche pas ..
    je vous poste mon code ,peut être pourrais vous m'aider

    client
    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
    import java.io.IOException;
    import java.io.ObjectOutputStream;
    import java.io.PrintWriter;
    import java.net.Socket;
    import java.net.UnknownHostException;
     
     
    public class Client {
     
    	public static void main(String[] args){
     
    		Socket socket;
    		ObjectOutputStream out;
    		PrintWriter print;
     
    		//envoi sur le reseau
    		try {
     
    			socket = new Socket("10.7.49.237",6666);
    			System.out.println("Connection effectué");
    			print = new PrintWriter(socket.getOutputStream());
    			print.write("Sa marche");
     
    			print.flush();
    			socket.close();
     
    		}catch (UnknownHostException e) {
                e.printStackTrace();
            } catch (IOException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    }
    Serveur

    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
     
    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.ServerSocket;
    import java.net.Socket;
    import java.net.UnknownHostException;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.Menu;
    import android.view.View;
    import android.widget.Button;
     
    public class MainActivity extends Activity {
     
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		Button btn = (Button)findViewById(R.id.button1);
    		btn.setOnClickListener(new View.OnClickListener() {
     
    			@Override
    			public void onClick(View v) {
    				// TODO Auto-generated method stub
    				Thread thread = new Thread(new Runnable(){
     
    					@Override
    					public void run() {
    						// TODO Auto-generated method stub
    						Log.v("Thread","Dedans");
    						Socket socket;
    						BufferedReader bis;
    						try{
    							socket = new ServerSocket(6666).accept();
    							Log.v("Connection","Effectué !");
    							bis = new BufferedReader(new InputStreamReader(socket.getInputStream()));
    							String blabla = bis.readLine();
    							Log.v("Mot","" + blabla);
    							socket.close();
    						}catch (UnknownHostException e) {
     
    				            e.printStackTrace();
    				        }
    					    catch (FileNotFoundException e) {
    					        e.printStackTrace();
    					    } catch (IOException e) {
    					        e.printStackTrace();
    					      }  
    					}
     
    				});
    				thread.start();
    			}
    		});
    	}
    merci de votre concours ..

  3. #3
    Modérateur
    Avatar de nouknouk
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    1 655
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 655
    Points : 2 161
    Points
    2 161
    Par défaut
    Bonjour,

    je pense que le souci pourrait venir d'une limitation au niveau de ton opérateur 3G qui ne te fournit pas une 'vraie' adresse IP publique pour ton smartphone, et qui serait donc accessible depuis n'importe quel autre endroit d'internet.

    Une méthode simple pour en avoir le coeur net: trouve n'importe quelle application déjà existante sur le store de ton téléphone, qui propose justement des fonctionnalités de serveur, et essaie de t'y connecter quand tu es en 3G pour voir si tu reproduis le problème à l'identique.
    Mon projet du moment: BounceBox, un jeu multijoueurs sur Freebox, sur PC et depuis peu sur smartphone/tablette Android.

Discussions similaires

  1. Oracle et SBS 2008 : accès distant (hors réseau local)
    Par Stong dans le forum Connexions aux bases de données
    Réponses: 2
    Dernier message: 21/08/2014, 17h32
  2. Communication socket hors réseau local
    Par amath1 dans le forum API standards et tierces
    Réponses: 12
    Dernier message: 16/03/2013, 11h43
  3. Partage de connections internet via vpn en réseau local.
    Par negrissim dans le forum Développement
    Réponses: 0
    Dernier message: 30/08/2012, 16h46
  4. Réponses: 0
    Dernier message: 30/08/2012, 16h45
  5. Device Android et réseau local
    Par Rappunzell dans le forum Android
    Réponses: 2
    Dernier message: 04/05/2012, 14h00

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