使用ZXingをAndroidのバーコードスキャンアプリ"複製]
-
20-09-2019 - |
質問
この質問に答えはこちら
って追加方法についてはバーコードスキャナーマアプリです。ある例できるのかということにしました。
解決
のZXingプロジェクトスタンドアロバーコードリーダーアプリを通じてAndroidの意思ムで他のアプリケーションをご希望の統合のバーコードスキャンを実行します。
ための最も簡単な方法は、ZXing SCAN
Intent
からお申し込み このような:
public Button.OnClickListener mScan = new Button.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
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
} else if (resultCode == RESULT_CANCELED) {
// Handle cancel
}
}
}
ボタンを押してリンク mScan
プロジェクトを立ち上げる"に直接ZXingバーコードスキャナ画面(またはクラッシュの場合ZXingな設置中。一度バーコードして認識されてきた人は、結果通知が送付されるお Activity
, こちらの contents
可変となります。
のぶを簡素化物、ZXingて 提供のユーティリティクラス きの統合には、アプリケーションから利用に設ZXingスムーズは、残念は、ユーザのAndroid市場に決めなければならないで設置されています。
最後に希望する場合には、統合のバーコード読み取り直接には、アプリケーションから利用に頼らずに別のZXing申請を設置し、それでオープンソースプロジェクトなどをすることができます!●:)
編集: 誰か編集このガイドはこの答えでこのバンド数できるようにな太鼓判を押す実績として、その正確性、見たいな方法が良いと思いますだんに使Eclipse2015年度):
Step by Stepに設定zxing3.2.1eclipse
- ダウンロードzxing-master.zip から"https://github.com/zxing/zxing"
- 解凍しzxing-master.zip利用eclipseをインポート"android"プロジェクトzxing-マスター
- ダウンロードcore-3.2.1.jar から"http://repo1.maven.org/maven2/com/google/zxing/core/3.2.1/"
- を"lib"フォルダ"android"プロジェクトペーストcor-3.2.1.jar は、libフォルダ
- クリックしプロジェクト:を選択"のプロパティ"->"Javaコンパイラ"変更レベル1.7.ボタンをクリックし"Android"変革"プロジェクトの目標"のandroid4.4.2+が使用1.7が必要で作成とAndroid4.4
- の場合"CameraConfigurationUtils.java"な存在する"zxing-マスター/android/app/src/main/java/jp/google/zxing/クライアント/android/カメラ/".コピーできるのですから"zxing-マスター/androidア/src/main/java/jp/google/zxing/クライアント/android/カメラ/"貼り付けをするには、次のようにします
- クリーンを構築。場合はプロジェクトショーエラー"についてスイッチ-ケース"で、"if-else".
- 完了します。クリーンを構築。クリックすることができま"Proprties">"Android">をクリック"で図書館"が利用できます。
他のヒント
私はいくつかのウェブサイトを見つけるまであなたがintent.putExtraの名前にパッケージ名を含める必要があることを説明した(私は今再びそれを見つけることができません)コードの実装に問題を抱えていた。
これは、アプリケーションを引き上げるだろうが、それはすべてのバーコードを認識しない、と私はからそれを変更したときます。
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
タグに
intent.putExtra("com.google.zxing.client.android.SCAN.SCAN_MODE", "QR_CODE_MODE");
これはとてもうまくいきました。他の初心者のAndroidプログラマのためのちょうど先端ます。
提供IntentInegratorを使用すると良いです。それはあなたが、彼らはそれを持っていない場合は、バーコードスキャナをインストールするには、ユーザを促すことができます。また、あなたがメッセージをカスタマイズすることができます。ブロック場合onActivityResultが上記で確認するためIntentIntegrator.REQUEST_CODE定数は、要求コードの値を保持します。
IntentIntegrator intentIntegrator = new IntentIntegrator(this); // where this is activity
intentIntegrator.initiateScan(IntentIntegrator.ALL_CODE_TYPES); // or QR_CODE_TYPES if you need to scan QR
<のhref = "https://code.google.com/p/zxing/source/browse/trunk/android-integration/src/main/java/com/google/zxing/integration/android/IntentIntegrator。 Javaの」REL = "noreferrer"> IntentIntegrator.java の
このようにZxing使用にも理想的ではないバーコードスキャナアプリをインストールするためにユーザが必要となります。あなたはおそらくしたいことは、直接アプリにZxingをバンドルすることである。
私は非常にこのライブラリを使用することをお勧めします: https://github.com/dm77/barcodescannerする
それはあなたが直接XzingまたはZbarを統合しようとしているに実行しようとしているすべての狂気のビルドの問題を取ります。これは、カバーの下にこれらのライブラリを使用しますが、APIを使用することは非常にシンプルでそれらをラップします。
したい場合があります。様コードを使用しないIntentIntegratorのZXing図書館をお勧めしを利用する事ができこれらのポート:
使うので、コンビニエンスストアでのお支!このサンプルプロジェクトに挑戦してみてくださいね。
バーコードの検出が可能となり Google Playサービス. コードラボ の設定処理は、こちらの apiドキュメント, では、 サンプルプロジェクト.