Compartir una biblioteca o reutilizarla en otro proyecto

Usando android studio 1.0 para mi proyecto, planeo codificar un module de biblioteca dentro de él. Pero me pregunto si compartir solo el module de la biblioteca (por ejemplo, en su propio repository github) es fácil: es decir, alguien que busque este repository, puede integrarlo fácilmente como un module de biblioteca en su propio proyecto. Además, ¿el module de la biblioteca tiene que definir al less una actividad, o solo puede contener classs y resources independientes?

Por supuesto, también planeo compartir el proyecto global en un repository de Github.

Entonces, ¿cuál es la forma más "segura" y más fácil de proceder?

Se disculpa si la pregunta puede parecer demasiado obvia o mal explicada.

La única forma real de separar un proyecto en múltiples repositorys git es a través de submodules. No es un concepto malo, pero lo que efectivamente significa es que tienes un repository git dentro de otro. Uno del lado remoto, son repositorys separados con uno incluido a través del submodule.

Puede encontrar más información y las herramientas de command-line que necesita para comenzar en: http://git-scm.com/book/en/v2/Git-Tools-Submodules

Tenga en count que hay mucho odio por los submodules, y parte se gana. No es intuitivo y a menudo se considera una característica experta de Git. Por ese motivo, te recomiendo que lo leas detenidamente y te asegures de que lo entiendas. Tal vez incluso juntar un par de repositorys no relacionados para jugar. Por cierto, puedes tener un repository git en tu computadora en cualquier lugar ( git init --bare para crearlo). Entonces puedes clonarlo en cualquier otro lugar con el git clone file:///<your-path-here> Así tu local y remoto están en una computadora para que puedas jugar / aprender sin tener que crear más repositorys en git hub o algo así.

Como está utilizando Android Studio, supongo que usa Gradle como sistema de compilation. Con esa suposition, a continuación se encuentran mis respuestas:

  1. Su proyecto de biblioteca no necesita tener actividad, pero necesitará AndroidManifest.xml y un layout de proyecto de Gradle ( src , carpeta de res , etc.).
  2. Si su proyecto de biblioteca está alojado en Github (o localmente fuera de la carpeta raíz del proyecto principal que planea usar), entonces puede usar el submodule Git como lassombra sugerido para ponerlo en la carpeta raíz del proyecto principal.
  3. Una vez que tenga la biblioteca en la carpeta raíz de su proyecto principal, puede usar la configuration de proyectos múltiples de Gradle para vincularlos.