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 :

Utilisation caméra/codebarre


Sujet :

API standards et tierces Android

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut Utilisation caméra/codebarre
    Bonjour,

    Je souhaite utiliser la camera pour lire des code barre (en direct si possible).

    j'ai réussis à intégrer l'utilisation de ma camera dans mon application via un bouton.

    Je souhaiterais avoir des informations sur comment faire afin que cette camera puisse lire des codes barre, et insérer ce numéro dans un champs de type edit text.

    Je ne comprends pas du tout comment je peux faire malgré mes différentes recherches sur Internet

    En vous remerciant par avance.
    Cordialement

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Pour la lecture des codes barres (QRcode et autres...), il y a l'excellent ZXing qui est open-source : http://code.google.com/p/zxing/
    Bien entendu, il faut prendre la version pour Android.

    Il suffit d'utiliser les classes de android-integration qui gèrent pratiquement tout (vérification de la présence de BarcodeScanner, récupération du résultat...).

    Tu peux aussi te servir du wiki :
    http://code.google.com/p/zxing/wiki/ScanningViaIntent

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut
    ok Mais il faut installer quoi exactement comme api ou un truc comme ca? comment je peux faire pour intégrer zxing a eclipse ?

  4. #4
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 970
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 970
    Par défaut
    Zxing2.1 de l'onglet download que tu références dans Eclipse comme lib externe.
    Et ensuite tu codes

    Edit: 16Mb pour une librairie c'est du lourd
    C'est surement un projet complet.

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut
    même.. j'arrive pas à comprendre.. Il y a bien une manip a faire quant à l’intégration de cette librairie dans mon projet et je ne vois pas laquelle.
    De plus je ne trouve pas la liste des méthodes, de ce qu'elles font un peu comme la javadoc quoi.
    Et enfin dernièrement je voudrais juste l'utilisation de ma camera, la lecture du code en question et il renvoi ces donnée vers un champ de type edit text.

    Je ne sais pas si je suis clair mais voila mes besoins. Je ne comprends pas du tout le principe.

    Merci d'avance.
    Cordialement

  6. #6
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 970
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 970
    Par défaut
    Tu dois faire une référence vers la librairie.

    Et ça c'est quoi à ton avis?

    Doc

    Et ceci? (getting started...)

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut
    Je suis en train de suivre ce tuto afin d'installer ant sur mon pc qui me permettra d'installer Zxing
    http://www.chicoree.fr/w/Premiers_pas_avec_Ant
    Je ne comprends pas j'ai mon fichier build.xml
    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
     
    <project default="run">
     
    <target name="clean">
    	<delete dir="bin"/>
    	<delete dir="exe"/>
    </target>
     
     
    <target name="compile" depends="clean">
    	<md dir="bin"/>
    	<javac srcdir="src" destdir="bin"/>
    </target>
     
     
    <target name="jar" depends="compile">
    	<md dir="exe"/>
    	<jar destfile="exe/HelloWorld.jar" basedir="bin">
    		<manifest>
    			<attribute name="Main-Class" value="org.sdf.HelloWorld"/>
    		</manifest>
    	</jar>
    </target>
     
     
    <target name="run" depends="jar">
    	<java jar="exe/HelloWorld.jar" fork="true"/>
    </target>
     
    </project>
    Ma question est: On en fais quoi de ce fichier que l'on a creer ? On le mets ou ?

  8. #8
    Membre extrêmement actif
    Profil pro
    Développeur
    Inscrit en
    Mars 2012
    Messages
    1 970
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 970
    Par défaut
    C'est un fichier pour Ant

    Tu dois le mettre sur l'ancien build.xml de ton projet et l'exécuter avec Ant.
    Ant compilera ton code.

    Normalement c'est pris en compte automatiquement par Eclipse.

    Va lire la doc Ant (sur internet).

  9. #9
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut
    Bon je te remercie de ta réponse j'ai réussi a mettre zXing dans mon appli.

    Maintenant je voudrais tout seimplement mettre le resultat du scanner dans un editText.
    à premiere vu mon scanner n'a pas l'air de prendre en compte qu'il faut récupérer uin résultat.

    J'ai fais comme ceci
    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
    Button cameraButton = (Button) findViewById(R.id.camera);
    		cameraButton.setOnClickListener(new OnClickListener() {
     
    			@Override
    			public void onClick(View v) {
     
    				Intent intent = new Intent("com.google.zxing.client.android.SCAN");
    				intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
    				//intent.putExtra("resultScan", contents);
    				startActivityForResult(intent, 0);
     
     
    			}
    		});
    	}
     
     
     
    	public void onActivityResult(int requestCode, int resultCode, Intent intent) {
    	   if (requestCode == 0) {
    	      if (resultCode == RESULT_OK) {
    	         String contents = intent.getStringExtra("SCAN_RESULT");
    	         String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
    	         // Handle successful scan
     
    	         tvUpcArticle.setText(contents);
     
     
     
    	      } else if (resultCode == RESULT_CANCELED) {
    	         // Handle cancel
    	      }
    	   }
    	}

    J'espere etre clair. Je vous remercie pour votre aide

  10. #10
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Pour faire tout proprement, suis le lien que je t'ai donné :
    http://code.google.com/p/zxing/wiki/ScanningViaIntent

    Ton application a seulement besoin de deux classes pour faire fonctionner ZXing : IntentIntegrator et IntentResult.

    Tu as un exemple juste en dessous pour bien lancer l'activité qui va scanner (2 lignes qui s'occuperont de tout faire, y compris vérifier la présence de BarcodeScanner et de proposer le téléchargement...), et un autre pour récupérer le résultat.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    IntentIntegrator integrator = new IntentIntegrator(yourActivity);
    integrator.initiateScan();
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public void onActivityResult(int requestCode, int resultCode, Intent intent) {
      IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
      if (scanResult != null) {
        // handle scan result
      }
      // else continue with any other code you need in the method
      ...
    }


    Pour ce qui est du résultat, il est dans scanResult.
    Si tu veux donc le mettre dans ton editText, il faut que tu récupère la référence de ton edittext et que tu lui attribue un nouveau texte.
    Ce qui donnerais un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    EditText mEditText = (EditText) findViewById(R.id.monEditText);
    mEditText.setText(scanResult.getContents());

  11. #11
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut
    je comprends pas ca compile pas. Il me trouve une erreur quand je mets mon activité en parametre. Mon activité c'est bien le nom de ma classe ?
    Mais la je suis dans un bouton qui dans la methode onCreate ca devrait pas poser de probleme. Merci beaucou de votre aide

    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
    Button returnButton = (Button) findViewById(R.id.retour);
    		returnButton.setOnClickListener(new OnClickListener() {
     
    			@Override
    			public void onClick(View v) {
    				finish();
    			}
    		});
     
    		Button cameraButton = (Button) findViewById(R.id.camera);
    		cameraButton.setOnClickListener(new OnClickListener() {
     
    			@Override
    			public void onClick(View v) {
     
    				IntentIntegrator integrator = new IntentIntegrator(RechercheArticle);
    				integrator.initiateScan();
     
     
    			}
    		});
    	}
     
     
     
    	public void onActivityResult(int requestCode, int resultCode, Intent intent) {
    		  IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
    		  if (scanResult != null) {
    			  EditText mEditText = (EditText) findViewById(R.id.upc_article);
    			  mEditText.setText(scanResult.getContents());
    		  }
    		}

  12. #12
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Il n'y a pas le code entier, donc je ne peux pas être sûr de l'erreur, mais il ne suffit pas de mettre le nom de ton activité, il faut donner la référence.

    En plus, en définissant le OnClickListener de cette façon, tu n'accède pas "directement" à ton activité, via le this.

    Il faudrait donc plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IntentIntegrator integrator = new IntentIntegrator(RechercheArticle.this);

    Ou alors, ta classe qui étends l'activité RechercheArticle implémente aussi OnClickListener... et tu pourras simplement mettre


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IntentIntegrator integrator = new IntentIntegrator(this);

  13. #13
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Par défaut
    RÉSOLUE !!
    Oua franchement nickel ! merci beaucoup pour votre aide !!!

  14. #14
    Membre habitué
    Inscrit en
    Mars 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 10
    Par défaut android Zxing
    Bonjour !! je suis entrain de developper une application android qui integre le Zxing !! je veux pas installer Zxing je veux l'integrer directement dans mon projet et j'ai reussi !!!

    Si vous pouvez SVP m'aider a resoudre mon probleme !!
    je veux juste scanner et recuperer l resultat dans un edittext mias lors de scanne une page de mon projet biblio Zxing s'affiche !! pouvez vous m'aider SVP à respudre ce problem !! mercii d'avance

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

Discussions similaires

  1. Utiliser webcam ou caméra + carte d'acquisition
    Par geek-59600 dans le forum Matériel
    Réponses: 1
    Dernier message: 13/09/2011, 21h34
  2. [OSG]Utilisation d'une caméra personnalisé
    Par walispeed dans le forum OpenSceneGraph
    Réponses: 3
    Dernier message: 20/06/2008, 11h45
  3. Réponses: 1
    Dernier message: 07/05/2008, 18h38
  4. Problème avec une caméra utilisant les quaternions
    Par Bakura dans le forum Développement 2D, 3D et Jeux
    Réponses: 17
    Dernier message: 15/12/2007, 19h26
  5. Réponses: 1
    Dernier message: 12/02/2007, 10h19

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