Question Comment importer ZXING dans un studio Android?


J'utilise un studio Android Je souhaite importer 'ZXING' dans mon application, je trouve de nombreux articles et trouve le site suivant

https://github.com/zxing/zxing/

J'ai téléchargé le ZIP et décompresser et trouver des tutoriels Mais il ne semble pas être trop détaillé sur les détails, ce que je dois importer? Pour effectuer une analyse QRCode

Je n'ai toujours aucune idée de comment le faire


4/14 J'ai essayé l'URL de Lennon fournie "zxing-android-minimal" Et importez le 'gradle-wrapper.jar'

Mais quand j'ai écrit nouvel IntentIntegrator (this) .initiateScan (); Apparaît toujours "Impossible de résoudre le message" IntentIntegrator "du message

https://www.dropbox.com/s/2srga9iq75iqe4m/%E8%9E%A2%E5%B9%95%E6%88%AA%E5%9C%96%202015-04-10%2001.33.56.png ? dl = 0

J'ai un droit ".jar sélectionnez Ajouter en tant que bibliothèque Mais quand une erreur survient, il ne semble pas être ajouté


4/10

Enfin ne plus apparaître "Impossible de résoudre le symbole 'IntentIntegrator" c'est le code, qu'est-ce que je me trompe?

J'ai enlevé le nouveau IntentIntegrator (this) .initiateScan (); 'applications fonctionnement normal

    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    new IntentIntegrator(this).initiateScan();
}

mon 'build.greadle'

    repositories {
    jcenter()
    maven {
        url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/"
    }
}

10
2018-04-08 11:56


origine


Réponses:


J'ai eu beaucoup de problèmes lorsque j'ai développé mon application en utilisant la bibliothèque zxing. Alors jetez un oeil à ce zxing minimal: https://github.com/Promptus/zxing-android-minimal/tree/master

Cela a parfaitement fonctionné pour moi et a été plus facile à mettre en œuvre.

MODIFIER:

Ouvrez ce fichier dans votre projet:

/gradle/wrapper/gradle-wrapper.properties

Modifiez la ligne distributionUrl et définissez-la également:

distributionUrl = http: //services.gradle.org/distributions/gradle-1.8-all.zip Reconstruisez votre projet.

Mise à jour: Vous voudrez peut-être utiliser gradle-2.1-all.zip maintenant.

NOUVEL ÉDITION:

Tout d'abord, vous devez supprimer votre libs fichier. Ensuite, vous devez supprimer

mavenCentral()
    maven {
        url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/"
    }

de ton build.gradle de MyApplication, parce que cette graduation est pour tout le projet, et il vaut mieux que vous l'utilisiez dans chaque module.

Après cela, ouvrez le build.gradle du module app et ajoutez le code suivant:

repositories {
    mavenCentral()

    maven {
        url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/"
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'

    // Zxing libraries
    compile 'com.embarkmobile:zxing-android-minimal:2.0.0@aar'
    compile 'com.embarkmobile:zxing-android-integration:2.0.0@aar'
    compile 'com.google.zxing:core:3.0.1'

}

Et enfin, vous devez supprimer google.zxing.integration.android à partir de votre projet, sinon, une erreur apparaîtra lors de la compilation.

METTRE À JOUR:

Pour résoudre le problème de bouton de retour, vous pouvez effectuer le code suivant:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == RESULT_OK) {

        String _code = data.getStringExtra("SCAN_RESULT");

        // do whatever you want

    }

}

9
2018-04-08 12:11



Vous devez définir votre dépendance zxing dans le fichier build.gradle:

repositories {
    mavenCentral()
}

dependencies {
    implementation 'com.google.zxing:core:3.2.0'
}

Il s'agit de la bibliothèque principale d'encodage / décodage de codes-barres que vous pouvez utiliser pour créer votre application personnalisée de scanner / générateur de codes-barres.

Si vous avez besoin de prendre en charge un simple cas de numérisation du code-barres, vous pouvez intégrer l'application ZXing Android Barcode Scanner à l'aide de ZXing Android Embedded projet.

Ceci est un port du ZXing Android Barcode Scanner application en tant que projet de bibliothèque Android, à intégrer dans d'autres applications Android.

Si vous décidez d'utiliser le projet ZXing Android Embedded, il vous suffit de définir vos dépendances dans le fichier build.gradle:

repositories {
    mavenCentral()

    maven {
        url "http://dl.bintray.com/journeyapps/maven"
    }
}

dependencies {
    implementation 'com.journeyapps:zxing-android-embedded:2.3.0@aar'
    implementation 'com.journeyapps:zxing-android-legacy:2.3.0@aar'
    implementation 'com.journeyapps:zxing-android-integration:2.3.0@aar'
    implementation 'com.google.zxing:core:3.2.0'
}

Lancez l'intention avec les options par défaut:

new IntentIntegrator(this).initiateScan(); // `this` is the current Activity

Et obtenez votre résultat:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
    super.onActivityResult(requestCode, resultCode, intent);

    switch (requestCode) {
    case IntentIntegrator.REQUEST_CODE:
        if (resultCode == Activity.RESULT_OK) {
            // Parsing bar code reader result
            IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
        }
        break;
    }
}

7
2018-04-08 12:02



Dans votre root-build.gradle:

repositories {
   mavenCentral()

   maven {
      url "http://dl.bintray.com/journeyapps/maven"
   }
}

Un dans votre app-build.gradle:

dependencies {
    // Supports Android 4.0.3 and later (API level 15)
    compile 'com.journeyapps:zxing-android-embedded:2.3.0@aar'

    // Supports Android 2.1 and later (API level 7), but not optimal for later Android versions.
    // If you only plan on supporting Android 4.0.3 and up, you don't need to include this.
    compile 'com.journeyapps:zxing-android-legacy:2.3.0@aar'

    // Convenience library to launch the scanning Activities.
    // It automatically picks the best scanning library from the above two, depending on the
    // Android version and what is available.
    compile 'com.journeyapps:zxing-android-integration:2.3.0@aar'

    // Version 3.0.x of zxing core contains some code that is not compatible on Android 2.2 and earlier.
    // This mostly affects encoding, but you should test if you plan to support these versions.
    // Older versions e.g. 2.2 may also work if you need support for older Android versions.
    compile 'com.google.zxing:core:3.2.0'
}

Plus d'informations peuvent être trouvées ici: https://github.com/journeyapps/zxing-android-embedded


5
2018-04-08 12:05



J'ai également rencontré le même problème et je l'ai résolu en suivant les étapes simples ci-dessous:

Importer le projet android de téléchargé zxing-master fichier zip en utilisant l'option Import project (Eclipse ADT, Gradle, etc.) et ajoutez les 2 lignes de codes dans votre application build.gradle fichier et et vous êtes prêt à exécuter.

Si simple, yahh ...

dependencies {
        // https://mvnrepository.com/artifact/com.google.zxing/core
        compile group: 'com.google.zxing', name: 'core', version: '3.2.1'
        // https://mvnrepository.com/artifact/com.google.zxing/android-core
        compile group: 'com.google.zxing', name: 'android-core', version: '3.2.0'

    }

Vous pouvez toujours trouver la dernière version core et android core des liens ci-dessous:

https://mvnrepository.com/artifact/com.google.zxing/core/3.2.1 https://mvnrepository.com/artifact/com.google.zxing/android-core/3.2.0


3
2017-09-19 17:27



Après toutes les étapes expliquées par Lennon, je résous le problème de "Impossible de résoudre le symbole 'IntentIntegrator'" en allant sur le terminal sur Android Studio et dactylographier assemblé. Cela a pris du temps mais maintenant je peux utiliser toutes les classes déclarées sur l'arar.

J'espère que ça a aidé.


1
2017-08-25 15:21