Zxingチームは、ソースコードを統合してアプリケーションに統合することが最良のコードではないことを正しく指摘しています。
REF:http://damianflannery.wordpress.com/2011/06/13/integrate-zxing-barcode-scanner-into-your-android-app-natively-using-eclipse/
なぜ?
これは、Zxingのアップデートが公開されるたびに、更新されたコードをコピーしてアプリに組み込んでから、自分のアプリのアップデートを順番に公開する必要があることを意味します。アップデートが現在のモデルと互換性があるという保証はありません。
このようにすると、私たちの意図が残ります。 http://code.google.com/p/zxing/wiki/ScanningViaIntent
Zxingはこれで素晴らしい仕事をしました。あなたは、ユーザーがZxing(またはそれと同等の.e.g。Google GogglesがZxingから奇妙な形で実行される)がインストールされていない場合、状況をエレガントに処理する余分なコードを少し追加する必要があります。 Zxingがインストールされていない場合はZxingをインストールするように促し、そうであればアプリが起動します。
私個人的にはこのアプローチのようなので:ユーザーが私に依存することなく、すぐに新しいZxingのアプリのアップデートにアクセスすることが
- 。
- インテント経由で起動したZxingではブランドが表示されないため、ブランド認知度の問題があるクライアントは満足しているはずです。
- Zxingをインストールしなければならないこと以外にも、デフォルトではフルスクリーンモードでスキャナを起動すると仮定すると、インテントメソッドはまったく同じようにユーザーの観点から機能します。
私はそれを統合するのが悪いと言っているわけではありませんが、おそらく最善のアプローチではないと言います。それは、アプリに直接組み込まれたスキャンが必要な状況を発見したと述べています。これを行うには、いくつかのマイナーな修正が必要です(いくつかのswitch文をif/elseに変更する)。
このようにするのは合法か、意図を使用する必要がありますか?
オープンソースなので、最終的にはどちらかといえます。しかし、上記の経験があなたのコードを自分のものと統合することを妨げてくれることを願っています。
コードは、Apacheライセンス2.0 Vの下で、あなたは私が著者とあなたがについて尋ねている最もコメントの源だhttp://code.google.com/p/zxing/wiki/LicenseQuestions
Zxingはopensourceライブラリプロジェクトですので、zxingデモアプリケーションをインストールしなくてもアプリケーションとの統合に問題はありません。 –
@Android_crazy私は実際にそれを統合しようとしましたが、私もすべてのエラーを修正することができましたが、私のプロジェクトに統合してキャプチャ活動を拡張した後、結果に関して別のエラーが発生しました。統合前の//www.androidaz.com/development/zxing-qr-reader-direct-integration - これを手伝ってもらえますか?ありがとうございます – Jatin
@Android_crazyオープンソースの場合は、あなたが好きなことをすることができますことを示唆するのは危険です。できません;オープンソースライセンスにはまだ用語があります。たとえば、ShopSavvyはzxingのプロジェクトのライセンス条項を何度も無視しているため、おそらく法廷に連れられていたのではないでしょうか。 http://osdir.com/ml/zxing/2010-10/msg00196.html –