LINUX.ORG.RU
решено ФорумMobile

Опишите ситуацию с разработкой под андроид для души

 ,


1

3

В скором времени получу в качестве старья смартфон с шестым андроидом, который по всем параметрам круче моей текущей звонилки на винфоне. Раньше по идеологическим причинам не интересовался разработкой под свой телефон, да и профиль совсем не мой. А тут подумал, почему бы и не поковыряться для себя на выходных вечер-другой. В связи с чем и прошу в общих чертах сориентировать меня по следующим вопросам:

  1. У меня сложилось предубеждение, будто для разработки под андроид нужны монструозные IDE, жрущие эмуляторы, десятки гигагерц и гигабайт и т.д. Можно ли полноценно и удобно разрабатывать в привычном VIM'е на ноутбуке, используя make и проч?
  2. Действительно ли имеет смысл разрабатывать только на Java, а приложения на остальных языках сильно ограничены by design/platform и инструменты разработки для них пишут "в одно рыло" энтузиасты? В особенности интересуют приложения на JS, потому что Java мне точно никогда не понадобится, а JS сейчас везде и, потенциально, у него больше шансов пригодиться.
  3. Слышал, что для публикации приложения нужно платить. За что вообще придётся платить деньгами?

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

Всех с прошедшим и наступающим!

★★★★

1. Да, хоть в «блокноте», особенно есть это будет React Native.

2. React Native, но нативный код понадобится.

3. Только один раз за аккаунт разработчика гуглу.

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

1. Да, хоть в «блокноте», особенно есть это будет React Native.

Хотел бы я посмотреть как на жабе в блокноте пишут.

urxvt ★★★★★
()

2. Можно котлин. Для своего хоум-проектика может быть интересно.

ncuxer
()

разработка под андроид для души

Это должна быть невообразимо темная и извращенная душа.

entefeed ☆☆☆
()
Ответ на: комментарий от vvn_black

А что насчёт React в более длительной перспективе? На лоре написано, будто эти JS-фреймфорки каждый день новые и JSеры только и занимаются, что постоянным переписыванием одного и того же на очередной модный фреймворк.

Иными словами, через пять лет без правок заработает? А Java?

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

А что насчёт React в более длительной перспективе?

Вопрос к фейсбуку )

vvn_black ★★★★★
()

1) Всё зависит от твоих представлений о удобстве и полноценной разработке. Лично я ничего не могу полноценно в Vim разрабатывать. Лучше поставь IdeaVIM плагин в Android Studio
2) Даже не думай тащить мерзкий JS в Android. На Java смысла разрабатывать тоже нет. Бери Kotlin, все переходят на него (плюс он может компилиться в JS, если надо)

А а общем, ситуация вполне приемлимая.
Есть огромная куча качественных библиотек, есть много документации, есть коммюнити, есть удобные инструменты разработки. Есть всё, правда в этом легко потеряться.
Из недостатков: некоторые вещи, например Activity, прибитая гвоздями к жизненному циклу, получение состояния клавиатуры, работа с сервисами, могут показаться слишком брутальными. Здесь стоит понимать, что сами концепции замечательные, просто их реализовывали C++ программисты на Java много лет назад. Также много чего уже не актуально, например ListView для отображения динамических списков

I60R ★★
()

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

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

Посмотри в сторону Litho, Anvil, и ещё Flutter (хоть там и Dart используют)

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

Use any editor and build from the command line

О, это в Kotlin радует, прямо с языка сняли. Спасибо за наводку!

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

Если жс, то Crate React Native App/Expo, и можешь себе писать в виме, если тебе удобна разработка на жс в виме. И никакой студии не нужно.
Удовольствие сомнительное, но не могу сравнить с нативной разработкой на жаве/котлине, не пробовал.

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

Котлин и для души? Ну не знаю, душа обычно требует чего попроще.

«Use any editor and build from the command line» это и для gradle подходит.

vvn_black ★★★★★
()

1. Нет, не нужны. Мы в FWGS(кастану ещё сюды mittorn) так и работаем. :)

2. Ну и пиши на жоэс. Таких приложений много.

3. В Google Play. 25 баксов один раз в жизни, больше не попросят. Сколько хочешь, столько и загружай.

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

Мой профиль — ОС/драйверы, си/ассемблер и вокруг них. Поэтому для меня шо то Java, шо то JS. Я пока эти два варианта только вижу, успею всё потыкать на днях и сравнить для себя.

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

Для java ide может и правла нужен (только я ее советую android studio, лучше плагин для java-ide), т.к рисовать gui в xml вручную сложно. А в остальном не нужен - сборка через ant простым скриптом.
Для c/c++ можно использовать свой любимый редактор, только надо сборку через ndk-build настроить.
От себя добавлю что использую древние sdk т.к они компактнее. А в древних ndk больше возможностей. Совместимость с новыми версиями при этом не теряется, зато меньше весит.

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

Думаю, писать на Kotlin в Vim будет очень больно :D
Там даже автодополнения и документации нет, да и вряд-ли будет когда-то.
Не будет там и полноценного рефакторинга, и полноценной подсветки кода, а самое главное — не будет подсказок и проверок, очень полезных при разработке.
А читать выхлоп Gradle в поисках ошибки компиляции — то ещё занятие.

Вот тебе мой совет: ставь Android Studio. Сразу же можно отключить некоторые предустановленые плагины — будет чуть легковеснее.
Затем устанавливай IdeaVim + Relative line numbers.
Vim можно будет установить как external tool и забиндить на хоткей, чтобы файл открытый в IDEA, на том же самом месте можно было открывать в Vim, при надобности

I60R ★★
()

У меня сложилось предубеждение, будто для разработки под андроид нужны монструозные IDE, жрущие эмуляторы, десятки гигагерц и гигабайт и т.д. Можно ли полноценно и удобно разрабатывать в привычном VIM'е на ноутбуке, используя make и проч?

Можно, но это будет очень неудобно. Android Studuio + реальный смартфон для базовой отладки самое то.

Действительно ли имеет смысл разрабатывать только на Java, а приложения на остальных языках сильно ограничены by design/platform и инструменты разработки для них пишут «в одно рыло» энтузиасты? В особенности интересуют приложения на JS, потому что Java мне точно никогда не понадобится, а JS сейчас везде и, потенциально, у него больше шансов пригодиться.

Да, т.к. почти все API на Java для Java.

Слышал, что для публикации приложения нужно платить. За что вообще придётся платить деньгами?

За аккаунт в плеймаркете. Ах да, обновляю пост - ещё некоторое API от гугла платное, если обращается к гугловским серверам.

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

Но ведь можно писать проогу и выкладывать на гитхаб апк его?

Я так и делаю: пишу для себя и просто ставлю apk. Юзверей можно тыкать на инструкцию по активации установки апк файлов, а также сообщатью что на свой страх и риск (хотя в Плей Маркете, думаю, ситуация не луДше).

bookman900 ★★★★★
()

Скажу тебе, что разработка для android не легкое занятие. Можно бесплатно выкладывать на google play, если хочешь продавать, то нужно получить счет как продавец, куда деньги будут зачислять, я хотел попробывать получить, но там нужно указать организацию, а у меня такой нет. Есть активности, когда ты поворачиваешь экран, одна активность уничтожается и создается новая для повернутого экрана. Все данные удаляются в старой активности. Поэтому нужно с помощью специальный функций сохранять переменные, которые в новой активности будешь получать. Если ты освоишься с активностями, то потом познакомишься с фреймами. Тебе придется научиться в активность нужный фрейм загружать, а для планшетов возможно загружать два фрейма, так как экран там большой. Советую прочитать книжку 2017 года, android, профессиональное программирование. Я даже и представить не могу что ты хочешь создать. Приложений в google play каких только хочешь нет. Я даже не хочу делать прогу для android, потому что и так в google play есть на эту тему. Иногда даже думаю, что у меня лучше не получиться. Щас доступна android studio 3 версии, она предоставляет возможность использовать kotlin, а так на java. Если хочешь добавить код на си или c++, то лучший вариант это ubuntu 16.04, там поддержка нужной ncurses и openssl есть, можно собрать проект with c/c++. Также можно собрать для android с помощью qt либы, только вроде раньше была отдельный пакет qt для android, ну там включены были gcc armv. А щас вроде в последней версии qt будет поддерживаться, но не факт. Скорее всего придется качать с названием qt for android.

u0atgKIRznY5
()

JavaME гораздо интереснее Андроида. Она не требует монструозных вещей. Работает на новейших микроконтроллерах типа Raspberry Pi для управления роботами и на кнопочных сотовых телефонах, смартфонах с тачскрином, поддерживает мультимедиа API, OpenGL ES профиль, REST API, очень компактна и надёжна.

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

А читать выхлоп Gradle в поисках ошибки компиляции — то ещё занятие.

конечно, потому что можно направить выхлоп gradle в quickfix окно vim'a и прыгать по ошибкам точно так же как в ИДЕ.

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

Я в школе книжку «Программируем игры для телефона» покупал и с J2ME ковырялся со своим Siemens. Тогда было круто jar'ки по ИК-порту перекидывать, а как сейчас это разрабатывать и дистрибьютить под телефоны, что с доступом к API платформы?

d ★★★★
() автор топика
8 марта 2018 г.
Ответ на: комментарий от onlybugs

Можешь писать на HTML5 или движках которые позволяют предварительно откомпилировать проект для той же Cordova. Затем откомпилировать проект каким-либо сервисом онлайновым - например Cocoon.io или Adobe Phonegap.

Рекомендую кокон (cocoon.io) - более вразумительный интерфейс, есть плагины.

Для публикации в гугле нужно заплатить примерно 1500 рублей единовременно. Если нет времени и реальной потребности и знаний для того, что бы стать тру программистом под Андроид - то путь вида IDE Adroid Studio и т.п. выбирать не рационально да и по ресурсам - требуется производительный комп.

Я сделал пару игр используя игровой движок и затем скомпилировал их под кордову и обернул фоунгэпом а другую коконом. Всё работает отлично.

Вот два примера этих игр:

https://play.google.com/store/apps/details?id=com.etoigri.xenmeleepvp

https://play.google.com/store/apps/details?id=com.etoigri.cosmonafter

xonixmx
()

разработкой под андроид для души

Под андроид разрабатывают для бабла и только. Все аналоги GPL-программ под андроидом напичканы рекламой и вымогательством.

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