アプリにバーコード スキャナーを追加する方法を探していました。例や、これを簡単に行う方法はありますか?
ベストアンサー1
ZXing プロジェクトは、Android のインテント メカニズムを介して、バーコード スキャンを統合したい他のアプリケーションから呼び出すことができるスタンドアロンのバーコード リーダー アプリケーションを提供します。
SCAN
Intent
これを行う最も簡単な方法は、アプリケーションからZXingを呼び出すことです。このような:
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
}
}
}
にリンクされたボタンを押すと、 ZXing バーコード スキャナー画面が直接起動します (ZXing がインストールされていない場合はクラッシュします)。バーコードが認識されると、 、ここでは変数mScan
に結果が表示されます。Activity
contents
クラッシュを回避し、物事を簡素化するために、ZXingはユーティリティクラスを提供したこれをアプリケーションに統合すると、ユーザーがまだ ZXing をインストールしていない場合に Android Market にリダイレクトすることで、ZXing のインストールがスムーズになります。
最後に、別の ZXing アプリケーションをインストールせずにバーコード スキャンをアプリケーションに直接統合したい場合は、オープン ソース プロジェクトなので、それが可能です。:)
編集:誰かがこのガイドをこの回答に編集しました (少し奇妙に聞こえますし、正確性については保証できませんし、なぜ 2015 年に Eclipse を使用しているのかもわかりません)。
Eclipse で zxing 3.2.1 を設定する手順
- 「zxing-master.zip」をダウンロードしてください。https://github.com/zxing/zxing「
- zxing-master.zip を解凍し、Eclipse を使用して「android」プロジェクトを zxing-master にインポートします。
- 「」からcore-3.2.1.jarをダウンロードしてください。http://repo1.maven.org/maven2/com/google/zxing/core/3.2.1/「
- 「android」プロジェクトに「libs」フォルダを作成し、cor-3.2.1.jarをlibsフォルダに貼り付けます。
- プロジェクトをクリックします。「プロパティ」->「Java コンパイラ」を選択してレベルを 1.7 に変更します。次に、「Android」をクリックして「プロジェクト ビルド ターゲット」を Android 4.4.2+ に変更します。1.7 を使用するには Android 4.4 でコンパイルする必要があるためです。
- 「CameraConfigurationUtils.java」が「zxing-master/android/app/src/main/java/com/google/zxing/client/android/camera/」に存在しない場合は、「zxing-master/android-core/src/main/java/com/google/zxing/client/android/camera/」からコピーしてプロジェクトに貼り付けることができます。
- プロジェクトをクリーンアップしてビルドします。プロジェクトで「switch - case」に関するエラーが表示される場合は、「if - else」に変更する必要があります。
- 完了しました。プロジェクトをクリーンアップしてビルドします。プロジェクトで使用するには、「プロパティ」>「Android」>「ライブラリ」をクリックします。