web-dev-qa-db-ja.com

バーコードスキャナー(Android)を作成する方法

バーコードスキャナーアプリ(Android用)の作成が難しいかどうか教えてもらえますか? OpenCVライブラリは良いスタートですか?バーコードの読み方を明確に説明するアルゴリズムはどこにありますか?このトピックに関するすべての良い資料に感謝します!

前もって感謝します!

16
Ziem

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がインストールされていない場合はクラッシュします)。バーコードが認識されると、アクティビティの結果がここのコンテンツ変数に送られます。

クラッシュを回避し、物事を簡素化するために、ZXingは にユーティリティクラスを提供しています これをアプリケーションに統合して、ユーザーをAndroidマーケットにリダイレクトすることにより、ZXingのインストールをスムーズにします。

最後に、個別のZXingアプリケーションのインストールに依存せずに、バーコードスキャンをアプリケーションに直接統合したい場合、それはオープンソースプロジェクトであり、実行できます。 :)

26
user647826

http://code.google.com/p/zxing/ で入手できる既存のAndroid用Zebra Crossingバーコードスキャナーを使用できます。通常、アイデアは、次の例のように、インテントを介して呼び出すことです http://code.google.com/p/zxing/wiki/ScanningViaIntent

10
ivantod

Zebra Crossingは、文書化された最高のJava 1Dまたは2Dバーコードデコーダーまたはエンコーダーです。多くの人が使用し、 Androidのデファクトスタンダードになっています 健全な話題 もあります。

RedLaserapiを持っている ですが、本番環境で使用する場合は料金を支払う必要があります。試してみたところ、ゼブラクロッシングの目を見張るような改善にはなりませんでした。確かに price は対象外です。

jjilバーコードを実行 ですが、プロジェクトにはコミッターが3人しかいないので、自分で使用したことがないので使用しませんそれについてあなたが何を話すべきかを知っています。その source は確かに読みやすいです。

読み始め になると、画像がぼやける、ノイズ、ゆがむ、奇妙な角度などが原因で、リーダーを実装するのが難しいことがわかります。したがって、信頼できるものが必要な場合は、おそらくコミュニティが管理するライブラリを使用することをお勧めします。

6
Alec Wenzowski

Zbarライブラリを使用できます。それをダウンロードしてください: http://sourceforge.net/projects/zbar/files/AndroidSDK/

これはzxingよりも高速で正確だと思います。

5
NOBLE JINAN