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

API standards et tierces Android Discussion :

Communication socket hors réseau local


Sujet :

API standards et tierces Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    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
    Par défaut Communication socket hors réseau local
    Bonjour j'aimerais faire un programme client-serveur avec des socket
    reliant 2 smartphone
    j'y arrive dans un réseau local et j'aimerais transférer des données indépendamment du type de connection (Wifi ou 3G)
    j'ai récupéré l'ensemble des interfaces réseaux puis l'ensemble des ip d'un smartphone mais je ne sais pas comment les utiliser pour la connection via les socket
    Merci de votre aide et de vos suggestion .

  2. #2
    Membre averti
    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
    Par défaut
    Alors quelqu'un sait comment faire ?
    au pire si c'est impossible dites moi

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Oui je sais comment faire.

    Et il y a un tutoriel ici-même:
    http://gfx.developpez.com/tutoriel/java/network/

  4. #4
    Membre averti
    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
    Par défaut
    Bonjour
    et merci de ta réponse ,
    je vais poster mon code ,peut être que tu verra mon erreur
    je précise que mon smartphone est le serveur et lorsque j'effectue ce code sur le réseau wifi local ,sa marche..

    lorsque je me déconnecte du wifi j'utilise l'ip de mon téléphone en mode connection 3G et sa ne marche pas ..
    merci encore de ton aide.


    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();
    			}
    		});
    	}
    et voici mon code 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();
    		}
    	}
    }

  5. #5
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    "Ça marche pas" , ça veux rien dire !

    Quel sont les exceptions / erreurs retournées dans le Logcat ?
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre averti
    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
    Par défaut
    ok
    en fait il n'y a pas d'erreur dans le logcat c'est plutôt au niveau de mon client qu'il y a un exception dans la console
    j'ai l'impression que quelque chose empêche la connection au téléphone ..


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    java.net.ConnectException: Connection timed out: connect
    	at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    	at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    	at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    	at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    	at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    	at java.net.PlainSocketImpl.connect(Unknown Source)
    	at java.net.SocksSocketImpl.connect(Unknown Source)
    	at java.net.Socket.connect(Unknown Source)
    	at java.net.Socket.connect(Unknown Source)
    	at java.net.Socket.<init>(Unknown Source)
    	at java.net.Socket.<init>(Unknown Source)
    	at Client.main(Client.java:27)

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. Connection socket Java-Android hors réseau local
    Par amath1 dans le forum Développement
    Réponses: 2
    Dernier message: 16/03/2013, 23h27
  3. Scanner réseau local avec MFC + sockets
    Par LuffyyffuL dans le forum MFC
    Réponses: 11
    Dernier message: 26/04/2012, 16h48
  4. Connecter Access et Mysql hors d'un réseau local
    Par jojolv dans le forum Installation
    Réponses: 2
    Dernier message: 13/11/2008, 11h14
  5. probleme de communication sur réseau local
    Par ta-net dans le forum Administration
    Réponses: 5
    Dernier message: 28/12/2006, 14h41

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