Android QR Scanner / Reader App independiente sin tener que instalar la aplicación zxing – ¿Es ilegal / legal? Cualquier otra cosa disponible aparte de zxing

He investigado mucho sobre la creación de mi propia aplicación para Android con un escáner de código QR y lector sin tener que instalar la aplicación Zxing en el teléfono. He pasado por un montón de preguntas aquí también y he leído que es posible a través de uno o todos los siguientes enlaces: –

http://jmanzano.me/integrating-zxing-in-our-own-android-app-barcodescanner/

Integración de la biblioteca de ZXing directamente en mi aplicación de Android

Integrate zxing barcode scanner into your Android app natively using Eclipse

¿Es legal hacerlo de esta manera o tenemos que usar la intención? ¿Hay otras bibliotecas de código abierto por ahí aparte de zxing donde podría utilizar su biblioteca para integrar en mi proyecto.

Soy el autor y la fuente de la mayoría de los comentarios que me preguntas. Mientras siga los términos de la Licencia Apache 2.0 (vea los comentarios aquí ), tiene licencia para usar el trabajo con derechos de autor del proyecto para cualquier propósito.

No estoy desanimando a nadie de reutilizar el código (de acuerdo con lo anterior), incluso algunos de Barcode Scanner, ya que es después de todo de código abierto y ha sido dado por los autores para ser beneficioso para la comunidad. Estoy desalentando fuertemente la copia del proyecto sustancialmente en su totalidad en una aplicación. Hay algunas razones para esto:

  • La gente suele copiar AndroidManifest.xml y sus declaraciones. Esto hace que la aplicación de clonación responda a las Intent que estaban destinadas a la aplicación de escáner de código de barras. Inconcilia o rompe la experiencia del usuario para nuestra aplicación y otros. No es bueno en absoluto.
  • Copiar la interfaz de usuario del proyecto familiar hará que la gente piensa que está usando Barcode Scanner cuando no lo están. Existe una posible cuestión legal de marca aquí si su producto es confusamente similar a otro. La licencia de código abierto no otorga derechos de marca comercial.
  • Los problemas de su aplicación pueden ser reportados como errores de proyecto como resultado. Los desarrolladores le pidieron que hiciera esto incrustando seguro que pedir mucha ayuda en la lista de correo también. Que perjudica a la comunidad en general haciendo que otros apoyen su aplicación.

Las razones usuales dadas para hacer tal copia son:

  • Es una experiencia de usuario mejor para integrar la exploración. Tal vez así, pero, usted puede escribir su propia aplicación de escaneo, o al menos su propia interfaz de usuario. No estoy seguro de que sea una mejor experiencia de usuario tampoco. Por ejemplo, si utiliza Intents, sus usuarios pueden escanear con mejores aplicaciones especializadas a las que no tiene acceso, como Barcode Scanner + o Goggles.
  • Mi empresa no me permite usar una aplicación de terceros. Tal vez, pero es sólo identificar a alguien que está tomando la decisión, no lo justifica. Si es por razones de "seguridad", éstas se aplican igualmente bien a la incorporación de código de terceros.

Estas razones tienden a reducirse a "me hará menos dinero". No creo que compensen las cuestiones anteriores, y ciertamente no responden a la cuestión de marcas registradas. Tengo poca simpatía por los copycats, especialmente habiendo visto tantos clones en el Market que solo agregan anuncios, o en un caso, malware.

El equipo de Zxing con razón señalar que la integración en su aplicación mediante la integración de código fuente no es el mejor código.

REF: http://damianflannery.wordpress.com/2011/06/13/integrate-zxing-barcode-scanner-into-your-android-app-natively-using-eclipse/

¿Por qué?

Esto significa que cada vez que se publique una actualización para Zxing, tendrá que copiar su código actualizado e incluirlo en su aplicación y, a continuación, publicar una actualización para su propia aplicación. No hay garantía de que las actualizaciones sean compatibles con su modelo actual.

Así que eso nos deja con intenciones. Consulta http://code.google.com/p/zxing/wiki/ScanningViaIntent

Zxing han hecho un gran trabajo con esto. Tienes que incluir un poco más de código extra que maneja elegantemente la situación si el usuario no tiene instalado Zxing (o un equivalente .eg Google Goggles que corre fuera de Zxing). Se les pedirá que instalen Zxing si no está instalado y si es entonces la aplicación se iniciará.

Personalmente, me gusta este enfoque porque:

  • El usuario tiene acceso a las nuevas actualizaciones de la aplicación de Zxing inmediatamente sin ser dependiente de mí.
  • Zxing cuando se lanza a través de la intención no muestra ninguna marca – por lo que cualquier cliente que tiene problemas de conciencia de marca debe ser feliz.
  • Aparte de tener que instalar Zxing si no es ya, el método de la intención trabaja de una perspectiva del usuario exactamente igual, asumiendo que usted lanza el explorador en modo de la pantalla completa como es por defecto.

No estoy diciendo que es malo para integrar, estoy diciendo que probablemente no es el mejor enfoque. Dicho esto, hemos encontrado situaciones en las que necesitamos la exploración integrada directamente en la aplicación. Para hacer esto requiere algunas correcciones menores a la fuente (cambiando algunas sentencias switch a if / else).

¿Es legal hacerlo de esta manera o tenemos que usar la intención?

Es de código abierto por lo que puede hacerlo de cualquier manera al final. Sin embargo, espero que mi experiencia anterior puede disuadir de integrar su código con el suyo.

El código está en Apache License V 2.0 y puedes leer las condiciones en http://code.google.com/p/zxing/wiki/LicenseQuestions

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.