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 :

Bouton et socket


Sujet :

API standards et tierces Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Novembre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Novembre 2011
    Messages : 9
    Par défaut Bouton et socket
    Bonjour,

    je cherche depuis quelque temps un exemple de code pour créer un bouton qui ouvre un socket et envoi un texte.

    Ci après
    mon main activity qui gère une interface avec des boutons fonctionnels:
    ma class avec un socket fonctionnel
    je n'arrive pas a lier les deux


    ****************************************************
    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
     
    package com.example.planar2;
     
     
     
    import android.app.Activity;
     
    import android.os.Bundle;
     
    import android.view.View;
     
    import android.view.View.OnClickListener;
     
    import android.widget.Button;
     
    import android.widget.Toast;
     
     
     
    public class MainActivity extends Activity implements OnClickListener {
     
     
     
           private Button buttonWithActivityAsListener;
     
           private Button buttonWithInnerClassAsListener;
     
           private Button buttonWithInlineAsListener;
     
     
     
     
     
           /** Called when the activity is first created. */
     
        @Override
     
        public void onCreate(Bundle savedInstanceState) {
     
            super.onCreate(savedInstanceState);
     
            setContentView(R.layout.main);
     
     
     
            buttonWithActivityAsListener = (Button) findViewById(R.id.button_with_activity_as_listener);
     
            buttonWithActivityAsListener.setOnClickListener(this);
     
     
     
            buttonWithInnerClassAsListener = (Button) findViewById(R.id.button_with_inner_class_as_listener);
     
            buttonWithInnerClassAsListener.setOnClickListener(new InnerOnClickButtonListener());
     
     
     
            buttonWithInlineAsListener = (Button) findViewById(R.id.button_with_inline_class_as_listener);
     
            buttonWithInlineAsListener.setOnClickListener(new OnClickListener() {
     
                        public void onClick(View v) {
     
                               Toast.makeText(MainActivity.this, "Button with Inline Class as Listener has been clicked.", 2500).show();
     
                        }
     
                 });
     
        }
     
     
     
        /** You implement this method after adding OnClickListener interface to your Activity. **/
     
           public void onClick(View v) {
     
                 Toast.makeText(this, "Button with Activity as Listener has been clicked.", 2500).show();
     
           }
     
           //
     
     
     
           /** Name of the method and it's triggering comes from main.xml file.
     
           * Button's widget attribute android:onClick allows you to specify name of the method
     
           * which you have to implement. **/
     
           public void onButtonClick(View v) {
     
             Toast.makeText(this, "Button lancant le socket.", 2500).show();
     
     
     
           }
     
           //
     
     
     
           /** Inner Class to respond to OnClick events. **/
     
           class InnerOnClickButtonListener implements OnClickListener {
     
                 public void onClick(View v) {
     
                        Toast.makeText(MainActivity.this, "Button with Inner Class as Listener has been clicked.", 2500).show();
     
                 }
     
           }
     
    }
    ****************************************

    Socket

    *****************************************
    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
     
    package com.example.planar2;
     
    import java.io.*;
     
    import java.net.*;
     
     
     
    public class Client_Socket {
     
      public static void main(String[] args) throws IOException
     
      {
     
        Socket comm = null;
     
        InputStream is = null;
     
     
     
        try
     
        {
     
          comm = new Socket("192.168.1.11", 7072);
     
     
     
          comm.getOutputStream().write("image_delete -1 gui\n\n".getBytes());
     
          is = comm.getInputStream();
     
          int c;
     
          while((c = is.read()) != -1)
     
            System.out.write(c);
     
        }
     
        catch(Exception e)
     
        {
     
          System.err.println("Exception " + e.toString());
     
        }
     
        finally
     
        {
     
          if (is!=null)
     
             is.close();
     
          if (comm!=null)
     
             comm.close();
     
        }
     
      }
     
    }

  2. #2
    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
    Ne pas oublier la balise CODE !

    Qu'est ce que tu n'arrives pas à faire ? Qu'as tu essayé ? Ou est-ce que ça coince ? Quelle erreurs as-tu ?

    Parceque le code que tu montre c'est deux classes complètement séparées....

    Une classe d'activité avec les 3 façons d'implémenter un "listener" sur un bouton (à priori une seule suffit non ?)

    Une classe (enfin... peut-on parler d'une classe...), disons plutôt un "holder" de fonction "main" qui ouvre un socket et écrit dedans....

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Novembre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Novembre 2011
    Messages : 9
    Par défaut précision
    Bonjour,

    j'ai gardé les différentes implémentations des boutons pour mémoire (la mienne).

    J'aimerais que l'un de ces boutons (par exemple celui avec le label "Button lancant le socket") ouvre un socket sur un Ip et un port pré défini et envoi un texte.

    plusieurs amis m'ont donné des tuyaux que j'ai essayé d'intégrer à "mon" code mais mon niveau en java est trop faible pour le moment pour avancer.

    Dans l’idéal la méthode aurait comme paramètre le texte a envoyer sur le Socket.

    j'ai fouillé le web à la recherche d'un exemple de code sans succès.

    Xavier

  4. #4
    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
    C'est là ou je ne comprends pas... tu as déjà "pasté" tout le code nécessaire dans le premier message...

    Si le problème se situe dans l’exécution, poste ici le code complet, et l'erreur d’exécution..

    Si le problème se situe à la compilation, poste ici le code complet, en marquant en rouge les problèmes de compilation que tu as (eclipse est assez bon en auto-completion et auto-correction pour normalement ne pas en avoir, mais qui sait)

    Si le problème se situe à "comment on appelle une fonction en java", je t'enjoins à rapidement ouvrir un cours d'initiation à la programmation.

  5. #5
    Membre habitué
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Novembre 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Novembre 2011
    Messages : 9
    Par défaut un peu d'aide
    Bonjour,

    oui mon problème est bien que je ne sais pas faire correctement l'appel d'une fonction en java dans mon cas précis .
    Ça va sans doute venir

    j'ai lu pas mal de post et je suis en train d'essayer de m'initier à Java mais ce ne rentre pas facilement pour le moment.

    Une idée ou un forum pour débutant à me conseiller?

    merci

  6. #6
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour,

    Une idée ou un forum pour débutant à me conseiller?
    http://www.developpez.net/forums/f93...-java/debuter/

    Après vu ce que tu as posté comme code, tu avais les éléments il te manquait plus qu'à les liés

    Regarde d'abord les tuto sous Java et Cours
    http://java.developpez.com/cours/

    Si tu as toujours un problème reviens nous voir .

    Bonne journée

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 14/10/2008, 19h47
  2. executer une application a distance : Sockets ? RPC ? CORBA?
    Par a_hic dans le forum Développement
    Réponses: 5
    Dernier message: 30/05/2006, 13h02
  3. Pop-up d'une dialog box a partir d'un bouton
    Par bobbyjack dans le forum MFC
    Réponses: 21
    Dernier message: 13/09/2005, 15h32
  4. Afficher/Masquer un bouton comme IE 6
    Par benj63 dans le forum C++Builder
    Réponses: 3
    Dernier message: 29/07/2002, 13h12
  5. transfert d'un fichier bitmap en socket tcp
    Par localhost dans le forum C++Builder
    Réponses: 5
    Dernier message: 29/07/2002, 00h40

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