LINUX.ORG.RU

компиляция для Android (command line?) + старый лаптоп

 ,


0

1

Есть необходимость написать опердень для Android на вот-таком вот «дедушке»:

  • Intel(R) Core(TM)2 Duo CPU T8300 @ 2.40GHz
  • 4Gb RAM 333MHz
  • HDD (не SSD): average reed rate: 35.1 MB/s, average access time: 15.69 msec

Android Studio на таком железе будет тормозить. Хотелось бы писать код в vim/vscode/whatever, компилировать его из command line и ставить apk при помощи adb. Ну или использовать какое-то IDE, которое работает шустрее Android Studio.

Как это можно сделать?

Спасибо заранее за ответ!

Как это можно сделать?

Точно так же, как и с студией, только без неё:

  • поставить Android SDK;
  • собирать gradle.
vvn_black ★★★★★
()

Есть необходимость написать опердень

для Android

на вот-таком вот «дедушке»

Как по мне, так каждый следующий пункт перечёркивает предыдущие.

vvn_black ★★★★★
()

Как это можно сделать?

Gradle, а можно и без него.

А исходники пиши в том, в чём хочешь.

Но вообще для Android-разработки нужен хороший и мощный комп, желательно с >32 GB RAM на борту, поскольку ручная генерация всех этих XML’ок, отсутствие нормального дополнения и всего того полезного инструментария Studio – та ещё боль.

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

Стали бы люди заниматься, если б не приносило 😀 если твой уровень гораздо выше среднячка - то любое программирование будет приносить деньги. А новичков всегда валом, и ясен пень, они никому не нужны. Особенно в мобильной разработке

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

желательно с >32 GB RAM на борт

Ну это IMHO перебор.

ручная генерация всех этих XML’ок

Нужен просто сервис, там гуя почти нету. Да и какая проблема layout’ы руками в XML накатать?

отсутствие нормального дополнения и всего того полезного инструментария Studio – та ещё боль.

Боль - это Android Studio и ее тормоза. Раньше все делалось в Idea и было быстрее. Теперь Android Studio, которая та же Idea, только тормознее. Раньше (в 2011) на примерно таких же компах (ну чуть получше) писалось для Android в Idea и тормозило, но можно было жить. С появлением студии стало совсем грустно, но если компилировать из command line, то неужели совсем невозможно?

И какой инструментарий? Дебагер? Ну можно в лог писать, за неимением другого выхода. Обновления SDK? AFAIR «обновлялку» отдельным бинарником можно запустить - так она, насколько я помню, и запускается из студии.

PS Ну т.е. я понимаю, что это будет боль. Был бы комп нормальный - не было бы вопроса. А так: jak się nie ma co się lubi, to się lubi co się ma (если нету того, что любишь - то люби то, что есть).

PPS Я на этом дедушке студию запускал и что-то в ней писал/собирал в 2015 (правда под винду, если это имеет значение). Было больно, но работало. С тех пор что-то кардинально поменялось?

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

Ну это IMHO перебор.

На дворе 2020 год, а твой конфиг из 2008-го. За 12 лет можно и обновится разок.

Боль - это Android Studio и ее тормоза. Раньше все делалось в Idea и было быстрее.

Чего? Раньше всё делалось в Eclipse. А в IDEA ты и сейчас можешь под Android без проблем разработку вести, только некоторых инструментов из Android Studio у тебя не будет.

PPS Я на этом дедушке студию запускал и что-то в ней писал/собирал в 2015 (правда под винду, если это имеет значение). Было больно, но работало. С тех пор что-то кардинально поменялось?

Смешались кони, люди, IDEA, Android Studio, Eclipse, Visual Studio…

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

нужен хороший и мощный комп, желательно с >32 GB RAM на борту,

Блин, я писал ведропроги на 450 дол ноутбуке с мобильным и3 и 12Гб оперативы и ржавым хдд. На рабочем 16гб озу. Что за дичь тут рекомендуется?)

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

Ну поставь андроид плагин в идею и пиши раз студия не нравиться, а идея не тормозит) В комунити идее он вроде по дефолту есть. Разве что там версии поддерживаются с задержкой.

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

раз студия не нравиться, а идея не тормозит)

AFAIR студия - это и есть идея, только тормознее. Я просто для примера Idea привел, что в 2011 в ней было быстрее, чем сейчас в Android Studio.

Ну и в 2015 году на дедушке студия работала.

Если писать в vscone/vim/whatever + компилить из command line, то IMHO это больно, но возможно. Или я не прав?

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

12Гб оперативы, 16гб озу

Виртуалки-эмуляторы, особенно несколько, быстро сожрут такой объём памяти. Все ведь хотят проверить работу приложения на ~3 версиях Android? И ещё работа над несколькими проектами в Android Studio. А если ещё там будут разные версии gradle…, да ещё и активный браузер с кучей открытых вкладок документации и SO. Тут и 64 GB RAM для комфортной работы мало может показаться.

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

Виртуалки-эмуляторы, особенно несколько, быстро сожрут такой объём памяти. Все ведь хотят проверить работу приложения на ~3 версиях Android?

AFAIR эмулятор Android - это вообще не серьезно и «оксюморон» (с) Когда в 2011 мы клепали для Android чатики и всякие карты с places of interests/parking places, то все запускалось/проверялось на нескольких разных устройствах. Пользоваться эмулятором было невозможно уже тогда. С тех пор что-то изменилось?

И ещё работа над несколькими проектами в Android Studio.

Проект будет один и не в Android Studio.

А если ещё там будут разные версии gradle…,

Зачем?

да ещё и активный браузер с кучей открытых вкладок документации и SO

А это да, веб умер (с)

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

что в 2011 в ней было быстрее,

В 2011 году официальный способ разработки под Android, рекомендованный Google, был на базе Eclipse IDE и плагина ADT, а не IDEA.

Если писать в vscone/vim/whatever + компилить из command line, то IMHO это больно, но возможно. Или я не прав?

Тебе уже пять раз здесь написали, что проблем никаких не будет, Android Studio как и другие IDE (не под Android) только дёргает нужные консольные инструменты. Единственное, что тебе может показаться неприемлемым, это сборочная система gradle, под которую заточены новые версии Android SDK. Она сама по себе довольно прожорлива и неповоротлива, требует, например, скачать ~100 МБ перед первой сборкой (размер зависит от проекта) и жрёт ~1 GB RAM, там демон запускается специальный, который в памяти висит.

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

Я привел конфигурации на которых я работал и буду работать завтра) Линукс и винда, на винде более мощный проц компенсируется антивирусом и гредл там медленнее работает. Можно хоть 128гб сказать что минимум...

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

На дворе 2020 год, а твой конфиг из 2008-го. За 12 лет можно и обновится разок.

Я понимаю, но пока выбора другого нет. Да и говорю же, я студию на этом дедушке в 2015 запускал и с болью, но работало. IMHO если убрать из конфига студию, то с болью, но можно. Впрочем зачем я все треплюсь, завтра просто попробую.

Чего? Раньше всё делалось в Eclipse.

Кто хотел - делал в Eclipse, кто хотел - в IntelliJ Idea.

Смешались кони, люди, IDEA, Android Studio, Eclipse, Visual Studio…

Кто смешался?

  • Android Studio - форк Idea.
  • Eclipse - один из IDE для Java, в нем можно писать для ведроида, так же как и в Idea, по крайней мере раньше было можно
  • VSCode - как редактор кода, не нравится VSCode, можно vim, emacs, да хоть nano
dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 2)
Ответ на: комментарий от EXL

В 2011 году официальный способ разработки под Android, рекомендованный Google, был на базе Eclipse IDE и плагина ADT, а не IDEA.

Возможно. Но я точно знаю, что в 2011 (или возможно в 2012) была возможность использовать как Idea, так и Eclipse, причем Idea была удобней.

Тебе уже пять раз здесь написали, что проблем никаких не будет,

Ну вот и замечательно, спасибо за ответы!

Единственное, что тебе может показаться неприемлемым, это сборочная система gradle, под которую заточены новые версии Android SDK. Она сама по себе довольно прожорлива и неповоротлива, требует, например, скачать ~100 МБ перед первой сборкой (размер зависит от проекта) и жрёт ~1 GB RAM, там демон запускается специальный, который в памяти висит.

А как можно без Gradle?

Gradle, а можно и без него.

(c) компиляция для Android (command line?) + старый лаптоп (комментарий)

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

то все запускалось/проверялось на нескольких разных устройствах.

У тебя есть пяток устройств с самыми популярными версиями Android на рынке, да ещё и с разным размером экрана/плотностью пикселей?

Зачем?

Что зачем? Это иногда рабочий момент. Допустим, понадобится тебе посмотреть как работает такой-то код «в целом» из какого-нибудь Github-проекта, ты импортируешь проект, а там старый Gradle, можно потерять время и апнуть его (надеясь, что ничего не отвалится по пути, а оно обязательно отвалится), а можно просто взять и собрать его, но тогда в памяти будет висеть два (или более) демона Gradle, которые будут жрать RAM.

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

У тебя есть пяток устройств с самыми популярными версиями Android на рынке, да ещё и с разным размером экрана/плотностью пикселей?

Нету, но мне нужен сервис, который будет при помощи SIM-карты посылать разную инфу в зависимости от положения акселерометра и т.п. Гуя там почти нет. Эмулятор тут вообще не поможет/не нужен.

Я просто к тому, что мы «профессионально» (ну в смысле full-time) клепали в 2011/2012 разные чатики для ведроида и IOS, ну и уже тогда никто эмуляторами не пользовался. Т.е. для нормальной ведроид разработки нужен «пяток устройств». IOS эмулятор, в отличие, от эмулятора ведроида работал замечательно и там разработка выглядела иначе и проще (кроме необходимости иметь macintosh/hackintosh).

Что зачем? Это иногда рабочий момент. Допустим, понадобится тебе посмотреть как работает такой-то код «в целом» из какого-нибудь Github-проекта, ты импортируешь проект, а там старый Gradle, можно потерять время и апнуть его (надеясь, что ничего не отвалится по пути, а оно обязательно отвалится), а можно просто взять и собрать его, но тогда в памяти будет висеть два (или более) демона Gradle, которые будут жрать RAM.

Понятно, спасибо. К счастью мне это, надеюсь, не необходимо.

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

А как можно без Gradle?

По идее можно использовать Ant (build.xml), но я не уверен, что сегодня Android SDK его вообще поддерживает. Ant точно намного легковеснее.

Можно вообще сделать себе sh-скрипт (bat-скрипт) или Makefile и забыть про Gradle, см. эту статью:

https://habr.com/ru/post/309504/

Там правда под Windows написано, но аналогия-то думаю, понятная.

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

Нету, но мне нужен сервис, который будет при помощи SIM-карты посылать разную инфу в зависимости от положения акселерометра и т.п. Гуя там почти нет. Эмулятор тут вообще не поможет/не нужен.

Ну ты бы это всё обозначил в стартовом посте сразу. Если тебе сервис с простым GUI-оболочкой нужен, то конечно и устройства и эмуляторы тебе может и не нужны вообще. Но там другие проблемы могут быть со всякими подводными камнями между версиями Android’ов, правами особенно. К примеру, сервис будет норм работать на твоём устройстве с Android 9, но на Android N он уже не будет работать, потому что Google постоянно ограничивают права приложения, т.е. возможно тебе потребуются какие-то дополнительные действия и т. д. Вот для таких подводных камней и нужны эти эмуляторы.

Я просто к тому, что мы «профессионально» (ну в смысле full-time) клепали в 2011/2012 разные чатики для ведроида и IOS, ну и уже тогда никто эмуляторами не пользовался. Т.е. для нормальной ведроид разработки нужен «пяток устройств».

В 2011 году там был лютейший эмулятор ARM, а сейчас ты можешь выбрать x86_64-образы, которые будут работать вполне быстро и сносно. Или даже какие-то сторонние эмуляторы использовать, типа Genymotion, которые весьма быстры.

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

32GB RAM – это такой комфортный минимум, по моему мнению. Когда ты просто работаешь и можешь открыть несколько проектов, кучу вкладок в браузере, при необходимости запустить один или несколько эмуляторов и всё это не будет swap’иться и раздражать тебя фризами.

Видимо у каждого он свой.

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

32GB RAM – это такой комфортный минимум

Шёл 2020 год, вместо программистов софт пишется цыганами, готовимся к переходу на адронный коллайдер для комфортного минимума.

anonymous
()

Сборка современного андроида ОЧЕНЬ медленная. Особенно релизная.

Советую найти какой-нибудь средних размеров проект на гитхабе и попробовать собрать на своем динозавре. Я думаю, каждая сборка будет занимать минут по пять.

Для сборки особо ничего не надо. Нужно чтобы стояла джава и андроид сдк. Обычно, в корне каждого проекта есть нагененированный исполняемый скрипт gradlew. Этот скрип умеет сам загружать нужную версию гредла и необходимые зависимости. Т.е. достаточно в корне проекта выполнить ./gradlew assembleDebug или ./gradlew assembleRelease и соберется апкашка. Последующие сборки будут быстрее, т.к. пересобираться будут только измененные файлы, но все равно это будет боль.

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

Ну и попробуй сгененрировать студией или найти на просторах инета хелло ворлды с одной активити и какой-нибудь кнопкой. И посмотри сколько этот проект собирается.

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

4Gb RAM 333MHz

HDD (не SSD): average reed rate: 35.1 MB/s,

Мне кажется, я погорячился с пятью минутами. Думаю, это время нужно умножать минимум на три.

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

Мне кажется, я погорячился с пятью минутами. Думаю, это время нужно умножать минимум на три.

Ну в крайнем случае, я выдеру из динозавра мышь и повешусь на проводе от нее.

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

Проще нашкрябать 15-20к на средней паришивости бушный офисный системник хотя бы из середины этого десятилетия с дешевым ссд, i5 и хотя бы 8Гб оперативы. И не сношать себе мозги.

А старый комп годится разве что для ретро игор или как печатная машинка, но уж явно не для современной разработки.

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

А старый комп годится разве что для ретро игор или как печатная машинка, но уж явно не для современной разработки.

Да понимаю я, все понимаю. Пить надо было меньше просто. Так или иначе попробовать в CL можно. Нет - так нет.

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

PS I created games some time ago и я знаю, что если артист не может запустить сыг-но (Unity, C#, Excel, Minspeeper, Minecraft - нажать там кнопку play, ничего не компилируя и не зная, что такое git, то такая indie студия обречена на провал.

PPS Но с дргой стороны гиганты могут себе позволить более-менее осмысленные движки (или написать свой).

PPPS Для такого вышеупонятого дезайней с Unity за пазухой нужен будет еще боле можный комп.

PPPPS Спокойная и мелодичная песня, чтобы остудить обстановку: https://www.youtube.com/watch?v=lty4o-LktNA

dissident ★★
() автор топика
Последнее исправление: dissident (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.