LINUX.ORG.RU

Собрать android-проект без сторонних систем сборки

 , ,


0

1

Есть некий android-репозиторий на гитхабе, разработчики которого тормозят с выкладыванием apk и предлагают собирать самостоятельно, если кому-то не нравится google play.

Я его скачал, нашёл внутри какой-то скрипт gradlew, скрипт выгрузил ~300 метров файлов и вывалился с ошибкой доступа к серверу. Разбираться с мертворождёнными системами сборки желания и времени нет. Это не вопрос.

Вопрос такой: есть исходники, ресурсы, манифест etc, т.е. полноценный проект. Можно как-то его собрать без использования хипстерских приблуд gradle-maven-ant? Я помню, что пару лет назад писал для этих целей makefile, который успешно работал, но похерил его, похоже. Может быть, есть какой-то мануал по сборке?

★★★

Последнее исправление: E (всего исправлений: 3)

Проблема не в хипстерских системах, как выяснилось. На гитхабе нет ключа для какого-то Crashlytics, а в проекте он есть. Потому вариантов 2, либо запилить для себя этот ключ, либо выпилить этот Crashlytics из проекта. Первое сделать намного проще, имо.

Jefail ★★★★
()
Ответ на: комментарий от mono

Я попробовал сейчас собрать через gradlew скрипт, вывалилось с такой шляпой

ERROR - Crashlytics Developer Tools error.
java.lang.IllegalArgumentException: Crashlytics found an invalid API key: null. 
Check the Crashlytics plugin to make sure that the application has been added successfully! 

Jefail ★★★★
()
Ответ на: комментарий от mono

На мануал непохоже, это overview. Но спасибо.

E ★★★
() автор топика

Разбираться с мертворождёнными системами сборки желания и времени нет.

Молодец, проследуй на юг для дальнейших разбирательств с «полноценными системами сборки». Можешь, например, исходники почитать, и написать на их основе байт-код. Будет очень даже живорожденная система сборки.


А проект интересный, да. Собирается на отличненько и градлем без лишних правок, если у тебя система нормально настроена (т.е. - есть Android SDK с нужным таргетом).

takino ★★★★★
()

Разбираться с мертворождёнными системами сборки желания и времени нет.

Ну и зачем ты тогда полез собирать проект?)
Я сомневаюсь, что слеплённый на коленке мейк корректно разрешит гредловские зависимости.

и вывалился с ошибкой доступа к серверу.

Запусти сборку ещё раз.

F457 ★★★★
()
Ответ на: комментарий от takino

А, дебаг то у меня собрался, я хотел собрать неподписанный release, судя по http://developer.android.com/intl/ru/tools/building/building-cmdline.html это возможно

To build an unsigned .apk in release mode, open a command-line and navigate to the root of your module directory. Invoke the assembleRelease build task.

Jefail ★★★★
()
Последнее исправление: Jefail (всего исправлений: 1)

takino, Jefail

Мне не нужен конкретно этот apk, собранный на коленке.

Вопрос был в принципе ручной сборки любого android-проекта.

E ★★★
() автор топика
Ответ на: комментарий от E

./gradlew assembleDebug для 99% проектов.
Потом посмотреть что градль тебе сказал, исправить ошибки и радоваться собранному.
Большинство ошибок будет
а) Нету версии СДК которую автор указал в качестве targetVersion
б) Нужен API-ключ для какой-нибудь белиберды, который автор естественно в репку не положил.

takino ★★★★★
()
Последнее исправление: takino (всего исправлений: 2)
Ответ на: комментарий от takino

Это не ручная, это через gradle. Gradle - это система сборки. Сборка через систему сборки - это не ручная сборка.

Ручная - это запуск команд через командную строку. Компиляторы, упаковщики, etc.

E ★★★
() автор топика
Ответ на: комментарий от E

Окей, что же делает градль? Градль в первую очередь ищет зависимости, необходимые для сборки проекта. Попробуй вручную найти в кишках у мавен-репозиториев нужные тебе зависимости хотя бы. Потом уже думай дальше, стоит ли овчинка выделки.

Тебе дают инструмент, ты вместо его использования ищешь способы использовать вместо инструмента микроскоп.

takino ★★★★★
()
Ответ на: комментарий от takino

Я бы тебе поверил, если бы не делал это сам несколько лет назад. Я точно знаю, что собирать так можно, но не помню подробностей. Найду и сам, но надеялся, что кто-то их уже знает и это сократит мне время. Спасибо, в общем, за попытку.

BTW,

Градль в первую очередь ищет зависимости, необходимые для сборки проекта.

Совершенно левая функциональность в системе сборки. За это я его и удалил.

E ★★★
() автор топика
Ответ на: комментарий от E

Совершенно левая функциональность в системе сборки.

В java так принято, смирись.

За это я его и удалил.

Куда ты его мог удалить, он с каждым проектом тащится в виде файла gradlew

anonymous
()

Разбираться с мертворождёнными системами сборки желания и времени нет.

Эта мертворожденная система сборки сейчас основная и заменила ant.

andreyu ★★★★★
()
4 ноября 2017 г.
Ответ на: комментарий от takino

Потом уже думай дальше, стоит ли овчинка выделки.

Тебе дают инструмент, ты вместо его использования ищешь способы использовать вместо инструмента микроскоп.

все испытывайте, хорошего держитесь I Фессал. 5, 21.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.