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

Android Discussion :

Passage d'objet entre 2 activity Android


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 6
    Par défaut Passage d'objet entre 2 activity Android
    Bonjour,

    Comment passer un objet d'une activity à une autre ?

    L'objet en question est celui-ci :

    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
    public class Client {
     
        private String serverMessage;
     
        public static  String SERVERIP ; 
     
        public static final int SERVERPORT = 2222;
     
        private OnMessageReceived mMessageListener = null;
     
        private boolean mRun = false;
     
        PrintWriter out;
     
        BufferedReader in; 
     
    }

    Cet objet nous sert à communiquer avec notre serveur en Java.

    Merci d'avance !

  2. #2
    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
    Il faut que ton objet implémente l'interface Parcelable pour pouvoir le passer dans un Bundle entre activity :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Intent myIntent = new Intent(Activity_A.this,Activity_B.class);
    myIntent.putExtra("un_identifiant_de_lobjet",(Parcelable)monObjet);
    Puis sur ton autre activité :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView();
     
        Bundle b    = getIntent().getExtras();
        MonObjet monObjet    = b.getParcelable("un_identifiant_de_lobjet");
    }
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 6
    Par défaut
    On vient d'essayer, le problème est que l'objet PrintWriter contenu dans notre objet Client est à null après passage dans la deuxième activity. Or, il est primordial de le garder car il contient notre socket qui fait la connection entre notre appli et notre serveur !

  4. #4
    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
    Si tu implémente parcelable pour un objet , il faut que tous les objets qu'il contient implémente également Parcelable.

    Je sais pas ce que tu veux faire en passant une socket , mais si c'est pour maintenir une connexion entre activité c'est une mauvaise idée (et ça ne marchera probablement pas).
    Pour ça il faut plutôt utiliser un Service avec un thread dédié à la connexion réseau.

    Voir :
    http://developer.android.com/guide/c.../services.html
    et
    http://developer.android.com/referen...p/Service.html
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2014
    Messages : 6
    Par défaut
    J'ai utilisé un Singleton pour garder ma connection entre mes différentes activity, ça à l'air de bien fonctionner, le connexion au serveur est bien maintenu ! Après, je ne sais pas si je vais avoir des problémes par la suite... Toutefois, l'idée du Service devrait correspondre à ce que je recherches !

Discussions similaires

  1. Passage d'objet entre contrôleurs
    Par Invité dans le forum Spring Web
    Réponses: 0
    Dernier message: 06/10/2008, 13h01
  2. passage d'objet entre deux actions
    Par sousoujda2 dans le forum Struts 1
    Réponses: 6
    Dernier message: 07/03/2008, 17h17
  3. [C#] passage d'objet entre forms
    Par kooljy dans le forum Windows Forms
    Réponses: 4
    Dernier message: 26/04/2006, 06h45
  4. [langage] Passage d objet entre deux fichiers
    Par Slippers dans le forum Langage
    Réponses: 2
    Dernier message: 28/04/2005, 14h45
  5. Réponses: 4
    Dernier message: 02/01/2005, 23h24

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