2011-11-04 8 views
16

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

ありがとうございます!

+1

ZXingライブラリはAndroidでバーコードをスキャンできます。それは出発点かもしれない。 – Codo

答えて

22

ZXingプロジェクトは、Androidの意図メカニズムを使用して、バーコードスキャンを統合したい他のアプリケーションから呼び出されるスタンドアロンのバーコードリーダーアプリケーションを提供します。

これを行う最も簡単な方法は、このように、あなたのアプリケーションからZXing SCAN意思を呼び出すことです:ZXingバーコードスキャナ画面に直接起動しますMSCANにリンクされているボタンを押すと

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にはクラッシュを避けるために、が付属しています。アプリケーションをまだインストールしていない場合は、AndroidマーケットにリダイレクトすることでZXingをスムーズにインストールできます。

最後に、別個のZXingアプリケーションをインストールしなくても、バーコードスキャンをアプリケーションに直接統合したい場合、それはオープンソースプロジェクトであり、そうすることができます! :)

10

Android用の既存のZebra Crossingバーコードスキャナは、http://code.google.com/p/zxing/で利用できます。通常、ここでの例のように、インテントによって呼び出すという考え方があります:http://code.google.com/p/zxing/wiki/ScanningViaIntent

+0

私はすべてのことをするそのような高度なライブラリを使いたくないとします。 – Ziem

+2

残念なことに、このライブラリは、アプリケーションにインクルードするライブラリjarファイルとして使用するのにはあまり適していませんが、手動で「再パッケージ」して、必要なパーツのみを使用することができます。しかし、私が言ったように、それは主にインテントを介して使用されることを意図しており、アプリに埋め込むのが少し難しくなっています。おそらく誰かが別の提案をするでしょう。 – ivantod

6

Zebra Crossingは、最良のJava 1Dまたは2Dバーコードデコーダまたはエンコーダです。多くの人がそれを使い、アンドロイドの事実上の標準になっています。ここにはa healthy buzz about itもあります。

RedLaserhas an apiですが、実稼働環境で使用する場合はお支払いいただく必要があります。私が試したとき、私はそれがZebra Crossingよりも壮大な改善であるとは思っていませんでした。確かにpriceのためではありません。

jjildoes barcodesそこプロジェクトの唯一の3コミッターであり、そして私は自分自身がそう、私はそれをご紹介するかわからない、それを使用したことがありません。そのsourceは確かに読める。

start readingになると、ぼやけた画像、ノイズ、歪み、奇妙な角度などのために、読者が実装するのが難しいことがわかります。ですから、信頼できるものを求めているのであれば、おそらくコミュニティが管理しているライブラリに行きたいと思っています。

関連する問題