2013-03-05 6 views
1

Я хочу сделать приложение для Android, которое зависит от других сторонних библиотек, а именно ActionBarSherlock и отслеживать разработку приложения в исходном управлении с помощью Git. Я также хочу, чтобы другие разработчики помогли мне работать над этим приложением. Разработчики должны иметь возможность создавать приложение за один или два простых шага.Каков самый простой способ управления зависимостями в репозиториях приложений Android?

Я хотел бы разработать приложение в самой простой среде. Я попытался использовать Android Maven Plugin, и я попытался настроить интеграцию Maven в Eclipse. Я считаю этот процесс очень неинтуитивным и излишне сложным.

Возможно ли управлять зависимостями проекта с использованием подмодулей Git и использовать очень простую систему сборки, возможно, на основе Ant, для связывания любых зависимостей, отладки, установки и подписи/развертывания .apk?

В идеале я хотел бы сделать что-то вроде следующего:

$ git clone [email protected]:me/myapp.git # clone the repo 
$ cd myapp # enter the app directory 
$ git submodule init && git submodule update # initialize dependencies 
$ ant debug install # build & run app 

Кроме того, я хотел бы быть в состоянии разработать приложение в среде IDE. В IDE должно быть intellisense & автообновление (Vim будет работать, но мне бы понравилось нечто похожее на то, как Eclipse автоматически добавляет методы, которые должны быть переопределены при создании производного класса). Создание и запуск приложения из среды IDE должно просто выполнять соответствующие команды Ant.

Что такое простейший способ достижения чего-то подобного вышеуказанной настройке? А именно:

  1. зависимости управляются как подмодули (или аналогичный)
  2. Простой инструмент сборки
  3. IDE интегрирован с инструментом сборки & с автоподсказки/IntelliSense

ответ

2

Я думаю, что самый простой способ управления зависимостями является по умолчанию, который поддерживает Android SDK. Я согласен с тем, что Maven очень неинтуитивный и излишне сложный. Более того, Maven официально не поддерживается группой Android.

Вам просто нужен хороший VCS, как Git или Mercurial.

  • Внести все *.jar файлов в папку подкатегории /libs;
  • В Eclipse, щелкните правой кнопкой мыши по проекту, затем выберите Обновить;

Для развертывания APK в release режиме с командной строки, просто нужно ant.properties как:

key.store=/path-to-key-store 
key.alias=alias-name 
key.store.password=password 
key.alias.password=alias-password 

И:

$ ant clean release 

или

$ ant clean release install 


Редактировать

Извините, что я забыл о подмодулях Git.Я никогда раньше не использовал Git, а просто читал some info here. Я думаю, что подмодули похожи на подпроекты с исходным кодом. Если так, то это тоже легко. Например у вас есть хост-проект A и подкатегория проект B (который является библиотекой):

A 
|__ submodules 
    |__ B 

Чтобы включить библиотеку B, откройте A/project.properties и добавьте следующую строку:

android.library.reference.1=submodules/B 

или вы можете иметь Eclipse управляйте им, щелкнув правой кнопкой мыши по A, выберите Свойства, выберите Android вкладка, затем добавьте B в Библиотека коробка.

+1

Добавление файлов '.jar' к самому проекту означает, что они будут отслеживаться Git. Кроме того, их было бы не так легко обновить, как подмодули, которые можно обновить, проверив требуемую SHA. Говоря, что Eclipse управляет классом, это похоже на простейшее решение. Я буду отмечать это правильно, если в ближайшие дни не появятся лучшие ответы. – modocache

+0

@modocache Спасибо. И мне жаль забывать о подмодулях Гит. Я отредактировал ответ. – 2013-03-06 00:15:26

Смежные вопросы