> Хочу вкатиться в разработку под Android! С чего начать? Большинство приложений написано на Java, выучить её на хорошем уровне — это первое, что необходимо сделать. Рекомендуемую литературу см. в Java-треде. После этого можно установить Android Studio, открыть официальную документацию http://developer.android.com/training/index.html и попробовать создать по туториалам своё первое приложение. В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.
> Не хочу писать на Java! - Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17 мая поддерживается официально.
> Есть что-то кроме нативных приложений на Java/Kotlin? - Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Спрашивать в C++ треде. - Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде. - PhoneGap/Ionic/Titanium/ReactNative — имя им javascript, принципы у них разные, первые три попытка в кроссплатформенность одного кода, ReactNative проповедует другой подход, а именно написание разного кода но на одном языке. Популярность у них разная как и размер комьюнити. Вопросы по ним — в js-тред. - BugVM — кросс-платформенный фреймворк, написанный на Java. Форк невинно убиенного RoboVM.
> Хочу писать игры! LibGDX или Unity. Спрашивать в /gd/.
> Что нужно, чтобы взяли джуниором? Что учить в первую очередь? Нужно хорошее знание Java, понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library, shared preferences, SQLite), знание популярных библиотек типа Retrofit + Glide/Picasso. И хотя бы оно готовое приложение.
>>992480 >>992481 Слава Андроду, Котлину слава. Наконец-то. В последние пару месяцев пилил свои поделки на котлине, писать на нем легко и приятно, именно такого сахарка жаве очень не хватало.
>>992561 +: Есть подержка rxJava2 без ссаного интеропа; Тайп конверторы; Миграции; -: Сикель ручками в квери без подстановки параметров, какого блять хуя? Сделают как в ретрофите тогда можно сказать малаца.
> таки просто добавили котлин плагин в студию, ничего более > РЯЯЯЯ КОТЛИНОПЕРЕМОГА
Как вы заебали, просто пиздец. Хотя журнашлюхи еще больший пиздец высирают, уже чуть ли не лично сколачивая гроб джаве. Когда саппорт либо перепишут на котлин, тогда и приходите.
аноны, подскажите опен сурс проекты или какие-то стартапы где после работы можно пару часиков покодить для себя. Не сильно сложные, с мердж реквестами например.
>>992877 Зачем переписывать-то? Просто новый код можно писать на нём, легаси на джаве никому не мешает.
Олсо, не понимаю ослоёбов, которые мучают себя пейсанием на жаве. Это же как смазывать ослу жопу маслом вместо вазелина — нагревается, быстро растекается и просто воняет.
>>992877 > таки просто добавили котлин плагин в студию, ничего более > РЯЯЯЯ КОТЛИНОПЕРЕМОГА Смысл в том что с поддержкой гугла(даже если там по факту просто встроенный плагин) не бояться и использовать котлин будут намного охотнее.
>Когда саппорт либо перепишут на котлин, тогда и приходите. Вот тут щас пояснил резко свой вскукарек.
сап аноны я как студент с энтузиазмом изучал андроид разработку пол года (каждый день по 2-24 часа) кто может подсказать какой стек нужен и как охотно берут джуниоров PS сам из харькова
>>993322 Это ты, все знающий друг, не понял. Котлин прикручивать был смысл. Для го в андройде юзкейсов вообще нет. Ну и хуле что го язык гугла и они его пиарят? Они там еще не настолько ебанаты чтобы пилить поддержку языка, который там нахуй не всрался. Хотя дело скорее в деньгах, если бы им это почти ничего не стоило то навернаяка бы прикрутили, специально для долбоебов, которым ЛИШЬ БЫ МОЙ ЛЮБИМЫЙ ЯЗЫЧОК БЫЛ. [spoilerИ это я не на тебя намекаю, на случай если захочешь триггернуться[/spoiler]
>>993349 Хех, школьник-ценник все пытается свести к возрасту, ничего нового. >>993376 Поддержки там нет и я тебе написал почему это глупый вопрос. А тебя так рвануло, что аж семенить начал.
Ни кто не сталкивался с таким? Использую в приложении chromium web view версии 58.0 на Android 6. Загружаю в него локальную страницу с формой, скриптом на js и рекапчей. В рандомный момент (иногда сразу иногда через пару часов работы приложения) после загрузки страницы перестают работать кнопки (input) и не нажимается галочка на рекапче. При этом нет никаких сообщений в logcat и консоли JavaScript. Обновление страницы или повторная загрузка не помогают. Пересоздание webview тоже не помогает. Баг исчезает только после полного перезапуска приложения.
>>993436 Там же написано всё. Тулкиты запилят, сдк обняшат, будут учавствовать в жизни языка (собираются создать комитет по развитию как в жаве) и тд.
Вообще, они давно испытывают симпатии к продуктам жб (тот же переход с эллипса на хуитку основанную на идеи как б намекает) и просто пугают в край ахуевший от хорошей жизни оракл. В любом случае для нас это зрелище и ништяки с барского стола.
>>993322 А нагую гуглу прикручивать го? Абсолютно несовместимый я жявой язык (вот представь, как ты там жабье сдк хотя бы будешь прикручивать на структурки и функции), с абсолютно другой целью (утилизировать ядра процессоров), которому сначала надо ещё хотя бы компилятор в жвм байт-код запилить, после чего перехуячить половину вм чтобы запилить корутины (которые прям супер лайтовые и с динамическим резайсом стёков и прочей хуитой), потом портировать его сборщик (который, напомню, жрёт цпу как не в себя ради низкого латенси в расчете на серверное железо) и... заставить кого-то на этой хунте писать. Ну рили, местные аборигены даже котлина боятся. Я таких только в своём пту видел, только там они как пять лет сидели на седьмом вб так и седят
Кто как использует Rx? Я лично использую его только для реквестов. Но тут посмотрел один код, где им ловили онскроллы, и хуярили пагинацию. Но ведь юзать вью, как источник событий - ебаный оверкод? В презентере будут одни сплошные цепочки Observable, тестировать и читать это будет очень тяжело. Паблик методов почти нету, только внутренние конфигурации цепочек типа view.onButtonXPressed() .flatmap((Object o) -> loadData()) .subcribe(..) Или я не прав, и принято хуярить на Rx всю логику?
>>993654 >принято Принято хуярить везде где есть асинхронное говнецо. Может быть со скролом лучше обойтись subjectои или relayем, что бы не городить flowable для блока.
Анон, помоги. Есть идея сделать небольшой проектик в качестве практики. До этого ничего сам не создавал и поэтому хочу попросить помочь разобраться со структурой. Будет одно активити с VideoView и Button. Сразу возникает вопрос по поводу по поводу макета. Какой макет выбрать (RelativeLayout/LinearLayout?) и как сохранить нормальный внешний вид при повороте экрана? Кнопка выходит за границы экрана, скролл в таком положении не уместен. Так же интересно, как закастомить контроллер видео (как на YouTube, например)?
>>993763 >>RelativeLayout/LinearLayout какой удобней >>как сохранить нормальный внешний вид при повороте экрана
отдельно сверстать для лэндскейпа
>>как закастомить контроллер видео а от это хуй знает, ни когда не работал с этим. Если с ютубика будешь видео крутить, то у гугла есть библиотека со своим плеером
Бля сосаны, я запутался. Они на конфе сказали что теперь можете забить на мульти апк, мол маркет сам порежет и разложит ресурсы/бинарники и пользователю будет выдавать хорошо оптимизированный апк. Но как тогда быть с мультиоконностью или сменой dpi. Там же размерчики меняются, а у меня могут быть специфичные ресурсы. Или эта услугу плей маркета по оптимизации апк опциональна?
>>993788 > мультиоконностью Лейауты думаю резать не будет. > сменой dpi Ты можешь только xxxhdpi ресурсы добавлять в апк, ведроид тебе в рантайме сам отскейлит под нужный dpi.
>>993904 Я не шибко уверен, что до таких масштабов проект дорастет. Мне бы на свой телефон макет сверстать и уже хорошо. Про первые два не знал, чем от мною указанных отличаются?
ДА ЕБАНЫЙ В РОТ БЛЯТЬ КАКОЕ ЖЕ ВСРАТОЕ УГРЕБИЩЕ ВАША СТУДИЯ И ВЕСЬ ВАШ ТРАХОМУДИЧЕСКИЙ БЛЯДОПРОЕБАНИСТИЧНЫЙ АНДРОИД-ДЕВЕЛОПМЕНТ-ЕБАНОИД-ГОВНОБЛЯДИМЕНТ И ВСЯ УЕБАНСКОЕ ЖАБЬЕ БОЛОТО ПЕРЕПОДНАПОДВЫПЕРДНУТЫХ КУСКОВ ГОВНА. СКИНУЛИ СУКА БЛЯТЬ НАХУЙ СЫРЦЫ ЗАТАРЕННЫЕ, ПОПРОСИЛИ ДОДЕЛАТЬ, Я КАК УМНАЯ МАША БЛЯТЬ РАСПАКОВЫВАЮСЬ ГОВОРЮ ДЕЛАЙ СУКА ПРОЕКТ ИЗ СУЩЕСТВУЮЩИХ СЫРЦОВ, А ЭТА ЗАЛУПА БЛЯТЬ НЕ МОЖЕТ ДАЖЕ С ЗАВИСИМОСТЯМИ САМА РАЗОБРАТЬСЯ, ПИЗДОС БЛЯТЬ НАХУЙ ДВА ЧАСА В СРАЧЕЛЬНИК ПРОГАНДОШИЛСЯ ИЗ-ЗА ТОГО ЧТО БЛЯДОЕБАНОИД-ХУЕМУДИЯ НЕ УМЕЕТ БЛЯТЬ САМА ДУБЛИРУЮЩИЕСЯ ЗАВИСИМОСТИ УБИРАТЬ, НУ ОХУЕТЬ ТЕПЕРЬ. ЛАДНО ХУЙ С НИМ, ГОВОРЮ ЭТОМУ ПОДЗАЛУПНОМУ СЫРУ ЗАПУСТИТЬСЯ И ТУТ БЛЯТЬ БАТТЕРНАЙФ ДРИЩЕТ ПРЯМО СЕБЕ В ШТАНЫ ЭКСЕПШНОМ, ЧТО НЕ МОЖЕТ НАЙТИ ВЬЮХУ ПО АЙДИШНИКУ, НУ ОХУЕТЬ ТЕПЕРЬ БЛЯТЬ. ПОШЕЛ РАЗБИРАТЬСЯ, ТУДА-СЮДА, ХУЯКС - В ЖИДКОМ ДИНАМИЧЕСКИ СГЕНЕРИРОВАННОМ ДРИСТОПШЕНЕ ЕБАНАЙФА АДИШНИК ВООБЩЕ ХУЙ ПОЙМИ ОТКУДА ВЫСРАТЫЙ, В R АЙДИШНИК ДРУГОЙ, ПОСТАВИЛ ЛОГИ - ВЫВОДИТСЯ ВООБЩЕ ТРЕТИЙ НАХУЙ БЛЯТЬ. АХУЕННО БЛЯТЬ. ПОМЕНЯЛ ЛЭЙАУТ, СМОТРЮ - А ЭТОТ МОЧЕГЛОТ ГОНДУРАСНЫЙ R НЕ РЕГЕНЕРИРУЕТ НИХУЯ БЛЯТЬ, ПОЭТОМУ И АЙДИШНИКИ ЕЩЕ ОТ ЧУЖОГО БИЛДА ТАМ ОСТАЛИСЬ И НИХУЯ НЕ РАБОТАЕТ. НУ ОХУЕННО, ДУМАЮ, ЩАС УЗНАЮ, КАК ЕГО СГЕНЕРИРОВАТЬ. И ТУТ ХУЯКС БЛЯТЬ - НУЖЕН ГРАДЛЕ-ОБЪЕБАДЛЕ. А ХУЛЕ ТЫ, ГНОЙНАЯ ТРЕЩИНА НА ЗАЛУПЕ, НЕ МОГ СРАЗУ МНЕ СВОЙ ГРАДЛЕ ЗАПИЛИТЬ КОГДА Я ЕЩЕ ТОЛЬКО ПРОЕКТ ПИЛИЛ? ЛАДНО БЛЯТЬ, ХУЙ С ТОБОЙ, СОЗДАЛ НОВЫЙ ПРОЕКТ С ОБЪЕБАДЛЕ, СКОПИРОВАЛ ТУДА СЫРЦЫ, МОДУЛИ-СРАКОДУЛИ, ХУЕ МОЕ БЛЯТЬ. НАЧАЛ СОБИРАТЬ - ЕБАТЬ МОЙ НЕЖНЫЙ ХУЙ ВАЗОЙ ВРЕМЕН ДИНАСТИИ МИН, ДУПЛИКЭЙТ КЛАСС БЛЯТЬ НАХУЙ СУКА НАХУЙ ЕБАНЫЙ В РОТ БЛЯТЬ. Я УЖЕ НЕ ЧЕЛОВЕК БЛЯТЬ, Я ДЕВЕЛОПЕР НАХУЙ
>>994155 > СКИНУЛИ СЫРЦЫ ЦЕЛИКОМ, ВМЕСТЕ С УЖЕ НАГЕНЕРИРОВАННОЙ ДО МЕНЯ ДРИСНЕЙ Ну так а хуле ты хотел? В приличном обществе за такое убивают сразу нахуй.
Ну и сам ты явно ванек-долбоебок, если не знаеш какие файлы относятся конкретно к проекту, а какие генерирует градл, сам андройд, студия и т.д. Для таких валенков специально есть gitignore файлы, в которые добавлено все то, чем ты не должен срать в репозиторий. Ах да, ты навреное просто взял и папку с проектом с чужого компа скопировал.
Какое приложение запилить для показа на собеседованиях? Изучил все основы, сейчас клепаю по туториалам всякую фигню. Что нужно написать, чтобы взяли самым простым джуном, тысяч на 35-40 в Москве?
>>994214 Поэтому я и спрашиваю, что написать. У меня то работа есть и я получаю 50к, мне норм в плане денег. Андроид разработкой хочу заниматься для души и перспективы роста зп.
>>994145 Ну а хули, действительно не плохо и можно даже без фреймворков и кучи либ делать нормально. Они же про Instant Apps затирают, а там все должно быть супер мелко.
Сап. Насколько сложно сделать приложение-книгу? Даже не ридер, а просто 1 текстовый файл просматривать, как в читалке. ViewPager'ом листать можно, а как разделить весь текст на страницы лол, как сделать поиск? Не тупо же одной строкой хранить файл в преференсах? Как бы вы делали?
Попробовать то обязательно стоит, может взлетит. Но если посмотреть их мастер-классы и доклады на предыдущих I/O, то можно заметить примерно такое: — ребята, используйте AsyncTask — а не, удобнее использовать пустой Fragment с setRetainInstance(true) — короче, используйте фоновый сервис и ServiceConnection/ResultReceiver — погодите, мы вам Loader и LoaderManager запилили — всё фигня, теперь у вас есть JobScheduler!
Хотя, возможно, я утрирую. В любом случае «MVVM» + Data Binding должны хорошо дополнить друг друга.
>>994665 Я не вкатывальщик после уроков. Умею в андройд, лол, щетаю на хорошом уровне. Пользовался и знаю все йоба либы, упоминавшиеся в треде. Есть 3 самолично написанных приложения, среднего уровня. Одно юзает opengl и opencv. Остальные без выебонов, в рамках фреймворка.
>а хотелка не обсрется Неа, я с рубипараши и 300-500 бачей могу получать хиккуя дома и макакируя по ночам 4-5 часов. Если на 600-700 бачей в Мск джунов в принципе никто не берет, то оно мне и нахуй не нужно.
С чего начать вкат в Rx? Хочу перевести пару ублюдочных асинков на него сейчас. Просто сделать какой-то класс типа HuitaFetcher и добавить в него методов, которые будут испускать потоки данных? ФП более-менее знаю.
А почему гугл вдруг сейчас MVVM использовать предлагает? Большинство разработчиков вроде пишут MVP. Какие преимущества у MVVM? Её ведь наоборот тестировать сложнее: вьюху можно просто замокать и удобно и легко протестировать презентер, а ViewModel будет иметь много зависимостей от андроидовских классов, да ещё data binding там. В чем смысл?
Где можно почитать про то, как устроить лучше работу с базой данных? Сейчас у меня отдельный класс со статическими методами, в которые я передаю бд и вызываю равквери
>>995144 тоже ща на этом этапе. Дальше, полагаю, обёртки-хуёртки типа Realm, stor io, итд. Гугл вот недавно выкатил Room, но у гугла обычно все игрушки деревянные и прибитые к полу.
>>992478 (OP) сап чатик, тут это js макака не может avd запустить, вроде выхлоп консоли в гугл писал, но ниче дельного не нашел порядок действий: cd ~/Android/Sdk/tools ./emulator => zsh: exec format error: ./emulator знаю что не очень информативно, только хз откуда логи брать шоб показать
Поясните: правда ли, что в ДС на рынке ведра голод, и джун с приложением на актуальных технологиях может претендовать на 60к и выше? Куда не гляну, у всех какая-нибудь хуйня под ведро написана. Только у IOS-господ ещё бывают рассказы про вкатившихся студентов на 80-100к.
>>996020 На рынке нехватка квалификацированных кадров. Среди ничего не умеющих джунов большая конкуренция. Чем больше таких вкатывальщиков, тем сложнее будет найти место или стажировку.
>>996024 Да ну нахуй, ты хочешь сказать что джуну с приложением в маркете с вторым рексом, ретрофитом, гсоном, тестами и MVP/Clean вместо мешанины во фрагменте надо идти на стажировку? Где же мой ламповый 2013, когда мне сами предложили джуна за кривой хеллоуворлд из активити со списочком. Почему я тогда зассал и остался учиться в шараге?
>>996020 Да никто в рашке-дегенерашке ничего не пишет под Андроид, весь софт иностранный, а банк-клиенты давно написаны. Добро пожаловать, это глобальный рынок.
>>995110 Поясните нахуй вообще тестировать презентеры/вью (MVP view)? Смотрел какую-то ебалу от гугл где они тестрируют используя мокито, хуито итд. Натурально, вызывают showHuy в презентере и проверяют вызвал ли он showHuy на своей вью. Нахуя это тестировать, скажите мне? Може у меня просто laba1 говноподелки без сложной логики? Приведите тогда пример сложной логики в презентере, которую есть смысл тестировать.
>>996153 Бро, не все приложения это хеллоу ворды. Порой на один экран приходится делать по несколько презентеров на несколько разные фрагменты. Тестирование это хорошо и это выпрямляет руки. Но зависит опять же от приложения и ваших возможностей. Тестирование это не строгая политика которой надо придерживаться - это просто удобный инструмент в умелых руках.
>>994142 бро, как я тебя понимаю. когда с эклипса год назад перешёл (ибо не поддерживают больше, а совсем извращаться заебало), до сих пор кровь из глаз от студии.
ещё jack-n-jill ссаный ввели для совместимости с 8й. охуеть просто. proguard'а + gradle мало же, нужно больше костылей.
ещё нихуя и не обновляется корректно и ворнинги и рекомендации по любой ссаке банальной, которые заебёшься сначала все отключать чтобы норм было.
>>994142 >>996220 Вы два дегенерата просто, которые не могут освоить инструменты, которыми пользуетесь. У андроида самые приятные инструменты для разработки. Такой же уровень удобства разве что у Qt есть.
Попробуйте ради интереса под ксамарин что-нибудь написать, вот где ад и пиздец.
>>994160 не, студия неок хотя бы потому что генерирует каждый раз .iml-файлы с мусором на 5к строк для каждого модуля проекта. а вообще можно перечислять долго даже что с ходу в голову приходит.
gitignore это конечно норм костыль, но зачем мне к примеру, ЗАЧЕМ?!, два параллельно проекта вести - gradle и iml? зачем мне почти каждый раз вручную ребилдить всё при каждом движении, чтобы конфликтов не было с исходниками и xml'ами? (у меня же автоматика, студия ведь 'за меня' всё понимать должна, онаж intelligent дофига)
про интерфейс самой ide тут конечно вне конкуренции если у тебя экран 3,5 дюйма, чтобы всё уместить. для больших мониторов (не дай бог нескольких) вообще не приспособлена. почему я не могу одновременно показать список проектов и projects и android и gradle? а нипочему, потому что пошёл отсюда, вот почему нафига мне грейдл спамит одновременно в три окна примерно одно и то же при сборке? как , мать его, log-cat можно было сделать с настолько убогим интерфейсом даже на фоне э-клипса? я же не могу даже свой символ таба вместо ссаной стрелкидля окна редактора текста поставить - он жёстко в бинарниках вшит.
единственное что норм сделали - нормальный UI-дизайнер. остальное всё - люто тормозящая некондиция (неспроста рекомендуют только на ssd гонять).
>>994160 я (был молодым и глупым) раньше думал, что у меня в эклипсе проекты долго собираются. (10 секунд на 20+ проектный воркспейс) студия теперь греет процессор на четыре ядра две минуты для полной сборки этого же списка.
и это ещё не развиваю тему, что студия как и идея не может в нормальные многомодульные воркспейсы.
но выбора-то нет, яж андроид девелопер теперь.
>Ну и сам ты явно ванек-долбоебок, если не знаеш какие файлы относятся конкретно к проекту, а какие генерирует градл
напоследок скажи, вот нафига мне постоянно заниматься тем чтобы чистить то что студия с грейдлами-хуейдлами срёт?
онижеж еще в ProgramData срут активно индексами всех файлов и подобным г
>>996225 не сомневаюсь, что есть инструменты ещё хуёвее чем студия. но тут не в этом вопрос. от ide, которая позиционирует себя как ОФИГЕТЬ КАК СУПЕР ЙЕЕ удобная и умная - ожиданий больше, хотя бы по кастомизации под себя.
я не хочу работать как 'дядя сказал будет хорошо, я всё', я знаю про каждое говно, которым она срёт на мой диск, я настроил всё до чего смог добраться. но всё что осталось (и \того дофига) меня всё равно очень печалит. особенно при отсуствии альтернатив.
>У андроида самые приятные инструменты для разработки Давно так не смеялся.
Эти инструменты приятные и удобные ровно до того момента пока ты пишешь хелловорлды в два клика точно по гайду.
>Вы два дегенерата просто, которые не могут освоить инструменты, которыми пользуетесь. Ты как раз путаешь целевую аудиторию гугла и его ide. Всё удобство в ней заточено на тех кто НЕ УМЕЕТ ей пользоваться, взаимозаменимых кодомакак, хуярящих MVP, MVVP, MVC и подобное с интерфейсиками на автомате и без мозгов признай это.
Эти инструменты, конечно, скрывают, сложность, причём часто необоснованную, и делают за тебя что-то. пока тебе похуй на это - всё норм.
Но в какой-то момент они начинают делать не то, что тебе нужно, или ты хочешь чего-то ОСОБЕННОГО, да хотя бы не особенного. И тогда всё, пизда. Студия может только по-прямой.
>>994160 >Ну и сам ты явно ванек-долбоебок, если не знаеш какие файлы относятся конкретно к проекту, а какие генерирует градл, сам андройд, студия и т.д. Для таких валенков специально есть gitignore файлы, в которые добавлено все то, чем ты не должен срать в репозиторий. Ах да, ты навреное просто взял и папку с проектом с чужого компа скопировал.
Кстати, собеседовал недавно на мидла по андроиду. На основании того что они мне напиздели, что дофига все знают и умеют, отправил примерно двадцати тестовое задание и смотрел на результаты.
Угадай, сколько из них прислали мне проект без дрысни с бинарниками и .iml и дистрибутива грейдла, включенным в сборку?
Answer: ОДИН НАХУЙ. И ты думаешь, что кто-то из них знает, что нужно, а не нужно. Да им же всем удобно, радугой ссут просто от студии, не иначе.
>>996020 Голод только на мидлов и выше. Джунов, вкатывающихся в айти в 16 лет, бывших автослесарей, решивших поклепать окошечки на фрилансе и прочего скама хоть жопой жри.
Тащемта, если ты закончил вузик по IT-специальности и хуи там не пинал, в андроид на норм уровень вкатиться можно примерно за полгода дрочева гайдов (если норм на Java - ещё быстрее) и ваяния приложений. Во всех остальных случаях у меня для тебя плохие новости.
>>996257 >>996261 Ога, ты не смог освоить самые простые вещи в инструментах, которыми пользуешься, но это оказывается просто мы тупые макаки, а ты неебацо умный и творческий, студия не подходит к твоим высоким стандартам.
>>994667 Тут, понимаешь ли есть некоторый разрыв inb4: жопы:
Джунов, готовых работать даже за 300 бачей даже в ДС охуеть как много. Если в конторе овер9к бабла течет и есть человеческие ресурсы их обучать - возьмут их, тк дешевле, а шансов что не съебут после обучения - мало. От фрилансеров больше пользы.
А мидлов охуеть как мало, и они все при делах давно. Соответственно мидл андроида может рассчитывать при одинаковой конкуренции уровень зарплаты сеньёра интерпрайзной java. И либо ты качаешься сразу на мидла, либо ты нахуй никому не сдался.
Сеньёрам андроида, по-видимому, дают сразу инвайт в гугл, и 300кк/сек, как приз за то что со всем этим смогли разобраться.
>>996269 >ты не смог освоить самые простые вещи в инструментах, которыми пользуешься Я-то как-раз это говно освоил и второй год на нём работаю почти еверидей, в отличие от >>994142
Попизди мне ещё про простые вещи. Грейдл это же так просто. Ко-ко-конвеншн овер конфигурейшн - раздался пронзительный голос со стороны параши. Но пацаны, как всегда, не обратили внимания на это визгливое кукареканье. Пусть кукарекает, что с него взять?
>но это оказывается просто мы тупые макаки Обобщаешь, я говорил только о тех, кто ссытся радугой от 'удобств' студии. Не уверен, что здесь все такие.
>>996265 Эти автослесари сливаются после десятой ошибки компилятора через три дня обучения. Это если они победят установку анроид студиои пердолинг с переменными в java7 и
Какие есть либы для работы с графиками. Использовал lecho.lib.hellocharts - работало все хорошо пока не захотел положить весь констренйтлайаут в скроллвью и после этого графики пропали и не показываются, если не прописать конкретные начения ширины и высоты вместо матчпарент или врап контент
>>996506 Структура базового фреймворка, общее представление о Dalvik VM, понимание как код превращается в apk (т.е. пояснить за каждый файл проекта, в т.ч. в билде), инструменты сборки и анализа из SDK (хотя бы знать какие зачем нужны и используются), аналогично про базовые классы (сходу мочь перечислить возможные решения под задачу).
Проекты - аргумент только когда они долго поддерживаются, а не за пару вечеров на коленке. Также по чистоте кода исходников и пониманию ООП почти всегда адекватно видно уровень (если не по Android, то точно по Java).
>>996526 Да похуй же что там будет в целом (или проект, подходящий под текущую хотелку конторы - но это не угадаешь). Если тебе не захочется скачать и начать этим пользоваться самому, то и всем остальным, очевидно, тоже. А если захочется, то наверное догадаешься заморочиться про способы монетизации и распространения.
Для проекта в резюме главное - как. Чистый код, только необходимые библиотеки, продуманный UI, если ты претендуешь пилить фронтенд.
Что еще за content_main.xml в макетах типа Drawer'a? От части стало ясно, что это взаимосвязано с main_activity.xml. Но почему-то в разметке не встретил похожей строчки, что одно дополняет другое. Как вообще эта система работает? Что делать, если я хочу переключать пункты в моем боковом меню? Делать это на фрагметах, вставляя в content_main.xml фрейм? Или при нажатии пункта вызывать новое активити с названием макета content_main_2.xml и т.д?
Сори за тупой вопрос, вообще никогда не занимался андроидом, но захотел поклацать рандомный проект с гитхаба. И собственно вопрос - какой файл надо запустить чтобы посмотреть прогу в действии? Я не понимать
>>996978 В каком виде у тебя ключ? Файл это и есть ключ.
>>996976 Нужно собрать апкашку, потом установить ее на телефон (просто в файлы засунуть и руками установить с телефона или через консольку). Потом опять же руками запустить либо через консольку.
>>996673 Ищи include, он там есть. >Что делать, если я хочу переключать пункты в моем боковом меню? Почитать гайды епт, все расписано. Да будешь менять фрагменты в контейнере. Вызывать новое активити бессмысленно и противоестественно в некотором роде если ты решил делать боковое меню.
ТОВАРИЩИ Мне очень нужен Ваш совет. Собираюсь ноут прикупить, да вот не знаю хватит ли его для студии. Dell на i3 5005u, с ддр 4 памятью, фулл хд и 920м. В этом конфиге меня смущает только i3. Есть ли у кого-то опыт работы на таком железе и советуете ли вы его к покупке ? Буду очень благодарен за ответ.
>>997392 Ноут 2013 года, стоит ССД, без дискретной видеокарты. Студия + эмулятор работают, но наблюдаются фризы во время сборки. Оперативка забивается под 100%. Собираюсь докупить еще 4ГБ планку и юзать дальше.
Анон, куда нужно копать, чтобы организовать воспроизведение видео файлов с сервера? Собираюсь проигрывать .webm формат. Простое videoView.setVideoPath работает медленно и записывает видео файлы в память телефона. Интересно, как это организовано на Youtubе.
>>992478 (OP) Призываю знатоков Kotlin. Что это такое? То есть он исполняется JVM или какой-то надстройкой? Просаживается ли производительность из-за оверхеда? Поддерживаются ли из коробки старые версии SDK?
>>997548 Это мультипарадигменный язык программирования, позиционирует себя как прагматичный язык для JVM. Сейчас есть реализации для JVM, JS и вот потихоньку пилят нативный LLVM. В случае JVM все те же самые байткод инструкции что и в джаве/скале/груви/цейлоне и тд. Никакого особенного оверхеда нет, просто иногда генерируются больше байткода так как этого требует более красивый код. Конечно, котлин не зависит от ведра никак, изначально он только в 6 версию джавы компилился, так что все версии ведра поддерживались, вроде бы сделали компиляцию в байткод 8 джавы, что конечно повысит его эффективность, но это не про ведро, ну только если ты конечно не только 24+ апи поддерживаешь.
>>997521 Только один момент уточнить по поводу процессора нужно. Возможно мой ай3 2330М более производительный, чем 5005u, т.к. второй более урезанный, для экономии энергии. 2330М сильно греется.
Аноны, может кто-нибудь дать годную инфу по VKSDK. В частности, как получить уже по годовому реквесту имя и фамилию авторизовавшегося пользователя. Нужно полученное имя с фамилией поместить в TextView. Вот код:
request.executeWithListener(new VKRequest.VKRequestListener() { @Override public void onComplete(VKResponse response) { super.onComplete(response); VKApiUserFull user = ((VKList<VKApiUserFull>)response.parsedModel).g;
>>998306 Нет. Презентер управляет вьюхой через интерфейс, ему можно подсунуть любую и сколько угодно реализаций. А вот вьюха, как правило, управляется лишь одним презентером, поэтому его и не нужно выделять в интерфейс.
>>992478 (OP) Есть один удаленный трек с саунклауда. Аппликуха андроида может его проигрывать из закладки History. В браузере там его нет. Как достать этот трекич из кэша апликухи? В папке >\Android\data\com.soundcloud.android\files Пусто. Где он может хранится?
>>998856 по первому методу дошел до "плз, скачайте убунту" толком и не понял, что он хочет? Чтобы я скачал убунту и через его консольку дальше что делал? по второму методу при исполнении ./psneuter получил ответ: ./psneuter sh: ./psneuter: not executable: magic 7F45 Половина анрут апк тупо не работает =(
Правильно ли я понимаю, что контекст нельзя удерживать только в объектах которые живут дольше активити? Т.е., если я, например, передам и сохраню контект в адаптере, то утечки не будет, потому что адаптер создаётся из активити. А если мне например надо передавать контекст в синглтон, то лучше его там хранить в WeakPtr?
>>999348 > Т.е., если я, например, передам и сохраню контект в адаптере, то утечки не будет, потому что адаптер создаётся из активити. Да. > то лучше его там хранить в WeakPtr Нет, лучше использовать getApplicationContext, который живет всегда.
>>1000551 Эти ретурны вложенные просто пиздец. И тип после имени тоже пиздец. Еще и ебля с вложенными it охуенная. А документацию к языку писал какой то шизик, по которой описание фичи языка разбита по нескольким фрагментам в вообще разных пунктах. В рот ебал этот котлин.
>>1000584 Почему? Если коротко - то я делаю функцию которая будет отправлять запрос на сервер, получать ответ и если в ответе сказано, что сессия умерла - делать релогин, после чего повторно отсылать реквест с новым айди сессии.
>>1000586 >почему Потому что тело колбека пиздецки огромное. А релогин лучше бы где-нибудь внутри фабрики запросов сделать (ну если у тебя ретрофит), или вообще не делать и выкидывать юзера на логин-скрин, как тот же пейсбук.
Госопода, можете накидатьс писок требований мидла для ведра, а сеньйора? Вообще бывают ведроидо-сеньйоры? Могу представить в их качестве только чуваков, которые по взгляду на девайс определяют баги в железе и силой мысли шлют репорты вендорам, и этой же силой ебут ндк что бы выдавать на этой говняшке 60фпс. Но мне кажется это слишком далеко от истины. Вот в EE сеньор знает как все настроить, где накосячат джуны, как лучше организовтаь архитектуру, составить запросы и тд. А в мобилках что?
Приветствую! Подскажите как решить следующую задачу: В идеале, чтобы пользователь мог запускать на устройстве только одну программу. Или закрыть доступ в интернет всем, кроме этой программы, и удалить все развлечение, и запретить их ставить. Или дать ограниченные права учетной записи и дать пользоваться только ей.
В общем, чтобы устройство использовали только для работы с этой одной единственной программой.
Скачал студию вместе с сдк, создал пустой проект, выбрал 4.0 в настройках платформы (у меня телефон на 4.4.4), сбросил апк на телефон, вылетает при запуске с ошибкой. Это, пожалуй, мой первый холлоу ворлд из каропки, который не заработал. 10/10 ПОПРАГРАМИРАВАЛ
>>1001554 Видишь ли, ты мог собрать апкашку которая нормально запустится только с проводом, какая-нибудь хуйня из под инстант рана. Бывала так что у меня через провод норм стало, а после пересылки файла хуйня и главный класс не найден, так что пеняй на себя.
>>1001577 Может ты попробуешь начать с офф. гайдов а не кусочков раскиданных по интернету? Особенно учитывая что такие детали как функционал ИДЕ там не раскрыты. Если хочешь можешь на хабре найти статью посвященную собиранию через консольку.
>>1001586 >Может ты попробуешь начать с офф. гайдов >>1001550 >Какая религия запрещает использовать отладку по usb ? Ок, подключил по юсб, поставил ADB драйвера, выбираю при запуске свой телефон (кстати, гугловский нексус) и вот результат. Мне начинает казаться, что андроид разработка это не программирование, а правильная расстановка костылей и тогда возможно всё заработает. А ведь это всего-лишь чистый проект из темплейтов.
>>1001648 > андроид разработка это не программирование, а правильная расстановка костылей Очень интересно слушать мнение эксперта, собирающего хэлоуворлд.
>>1001651 Успокой свое траханье, я уже загуглил ошибку и нашел решение, однако сам факт этой еботни для запуска хеллоу ворлд уже как бы НАМЕКАЕТ. И только слепой не заметил бы эти намеки.
>>1001648 ну чтобы ты понимал всю глубину - так оно и есть. особенно если дойдёшь до support-библиотек.
андроид - не для энтрилевела. андроид - это калека на костылях, которого постоянно подклеивают пластырями чтобы он не сломался. а тебе нужно знать дохуя, чтобы толкать этого калеку туда куда тебе нужно.
с хэлоуворлдами у них ещё со времён плагина для эклипса такая беда. но альтернатив на нативный андроид - нет.
>>992478 (OP) >- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Есть у кого примеры реальных приложений на куте?
>>1001648 Нет, андроид - это вполне себе программирование. Просто тут работает один из принципов на выбор: 1) читаешь выбранный гайд, делаешь по нему. 2) понимаешь глубокие процессы, делаешь самостоятельные движения. Иного не дано
Клиент утверждает что на его девайсе (говно лж с киткатом) не сохраняется бекстек, схематически: Активити 1(Ф1 -> Ф2 -> Ф3 -> Ф4, после бекпреса вдруг на 1 фрагменте оказывается)
Вторая ситуация: Активити 1 (Ф1 -> Ф2) со второго фрагмента переходим на новое активити, без очистки стека активитей, после финиша оказываемся на Ф1 вместо Ф2. Пробовал включить уничтожений активитей в режиме разработчика, не повторяется.
Может ли вообще такое быть? Мне казалось саппортные фрагменты нормально работают. ( В бекстек я все добавляю, даже с тегами, делаю реплейс)
>>1002418 Смотри внимательно код. Возможно, ты где-то заюзал не тот фрагментменеджер (там есть баги, и для определенных версий во вложенных кривые child и support) Алсо, гугли баг на 4.2 с вложенными фрагментами.
>>1002470 savedState чекаю, короче этот пидоран под главной понимал экран где есть дровер. А вот с фрагментами я думаю в другом залупа была, я нашел в приложении кнопку которую давно надо было выпилить, но она дает похожий эффект.
Почему андроидовский API ощущается как что-то совершенно разнородное, сотканное и разных, кое-как приклеенных друг к другу кусков. Пока писал десктопную хуитку на swing и на gtk, эти библиотеки воспринимались как что-то единое, посвященное единой цели. Андроидовский же апи воспринимается скорее как swt - неведомая ебаная неудобная непродуманная хуйня.
>>1002840 Потому что легаси хуегаси. Обмазанное тонной хотелок и метаний гугла и опенсоса. Может быть андромеда приде - порядок наведе, но я уже ни на что не надеюсь.
>>1002577 дак да, пиздато, могут ведь спустя 3 года после первой стабильной версии. бесил тоже этот гуттер давно тем что сантиметр экрана жрал пустотой, спасибо тебе.
>>1002122 1) Учишь линукс, как работает система, где крутятся контексты, и куда нельзя лезть чтобч не ёбнуло 2) Разбираешься с тем что навертели поверх - далвик, зигота, контексты, хуё-моё 3) Ссышь на всех кто говорит что андроид это стильно-модно-молодёжно. ... SON YOU ARE DEVELOPER NOW
>>1002840 >как что-то единое, посвященное единой цели Дак это цель гугла поддержать свою почти монополию на мобильных устройствах ну и не только, хром жи. Поэтому и хуяк-хуяк продакшен (особенно на саппорт либах) с непроверенными решениями с кучей багов, пока конкуренты не опередили.
Есть ли возможность дождаться завершения bindService, и только после успешного байнда продолжить выполнение?
GUI, если что, вообще нет.
Интриги добавляет я хочу подождать байнда в сервисе, который создаёт ОС и ОС вызывает колбеками все выполняемые методы (HostApduService). Поэтому ждать там через sleep и wait - не вариант, ибо всё встанет.
----------------- И вообще, какого хуя bindService не синхронный?
>>1003150 Ты не понял, я и так вызываю bindService( intent, serviceConnection ... ).
Так смотри что у меня происходит по шагам: 1. Андроид дёргает onCreate, в котором я вызываю bindService(). 2. Андроид дёргает processCommandApdu, в котором мне уже нужен готовый сервис, а его ещё нихуя не подконнектилось. 3. Где-то после андроид дёргает наконец колбек onServiceConnected и у меня подключается.
Всё это он дёргает из одного потока последовательно, поэтому любой wait в том же processCommandApdu не даёт андроиду дернуть onServiceConnected.
------------------- Короче, не прокатит так, написал в итоге синглтон, к которому оба мои сервиса будут долбиться вместо того чтобы один подключался к другому.
Привет. Есть ли возможность программно выводить Linear Progress Activity indicator вверху экрана, не добавляя при этом progressbar на каждую activity? В идеале было бы иметь какой-нибудь глоабльный статический класс, с функцией show hide, который будет просто выводить на экране полосу с загрузкой,
>>1003157 Твой выход - сохранять значение в ApduService, до бинда. Либо пихать его в Behaviour/ReplaySubject, а сам биндинг обернуть в Observable. Потом каким-нибудь флетмапом подписывешь сабжект на обсервабл, а после флетмапа вызываешь свой метод со значением с сабжекта и готовым сервисом
Пытаюсь импортировать библиотеку в свое приложение. В гайдах говорится что нужно прописать репозиторий в файл build.gradle, но их там два. Один module:app, второй project:appName. В какой файл вносить изменения?
>>1003319 Короче, сделал так: Создал класс BaseActivity с наследованием от Activity. Переопределил setcontentview, чтобы всё пропихивалось в framelayout, которые содержит вверху intermediate progress bar, в невидимом состоянии и определил 2 метода showloading и hideloading. Всё, в ходе работы программы, когда надо показывать активность, вызываю showloading, после выполнения hideloading.
>>1004171 >>1004132 Ведроидовский бекпорт ужат же. А так, я не представляю ситуации без мультидекса в 2к17. Стандартный стек теперь включает RxJava, Retrofit, OkHttp, GSON, даггер, роболектрики-хуектрики для тестов, AutoFactory (которая тянет гуаву(!)). Плюс всякие моки сервера, плагины для рхведроида, всякие MaterialDrawer и FastAdapter частенько юзаются, мосби я уже начинаю видеть в вакансиях. Да что уж там, если гуаву многие юзают и отдельно (вместо маленьковго Apache Commons).
>>1005024 Я имел в виду организационную часть. Допустим, у меня есть адреса объектов, которые я должен отобразить на карте, но нет координат. Как удобнее получить координаты, чтобы потом записать их в базу и хранить там?
Такая проблема: дублируется сервис, хотя перед запуском по кнопке делаю stopService. В итоге параллельно работают несколько экзекуторов. Кусок кода из метода onStartCommand на пике. Оболочка - MIUI 8.
Начал тут перекатываться с первой на вторую rxJava и заметил, что при ошибке цепочка observable больше не вызывается. Получается, при ошибке происходит unsubscribe? И как теперь это обрабатывать, если я, например, хочу кинуть исключение где-нибудь в flatMap, но при этом хочу, чтобы цепочка продолжала получать и обрабатывать observable?
>>1006660 Так давно кажись было, onError всегда был терминальной стадией. Ответ прост НЕ КИДАТЬ ошибки, это же какой-то изврат, возвращай значение позволяющие узнать что произошла ожидаемая ошибка. Например в том же ретрофите можешь использовать Response<T>(не http ошибки свалятся в error) или Result<T> (в error по-хорошему ты не попадешь вообще, содержит либо Response<T>, либо Throwable). Ну или вообще свой Try<T> используй.
>>1006706 >Так давно кажись было, onError всегда был терминальной стадией. Только что проверил и да, оказывается так было с первой rxJava. Странно, а мне всегда казалось, что это не так.
Как изменить функционал уже существующего андроид-приложения? Другими словами, мне нужно, чтобы после установки моего приложения, приложение, которое делало А, начало делать Б. Это технически возможно, и если да, то как?
>>1007112 Нет, его как раз и нужно использовать в и делать. Но оно доступно только начиная с sdk 24. Поэтому вместо него можно использовать thee ten abp.
>>1007115 Потому что > оно доступно только начиная с sdk 24. Если ты ставишь в проекте minSdkVersion = 24, то всё хорошо. Ели меньше - приложение будет падать на устройствах со старым ведром с Class not found exception
>>1007127 > То есть использовать-то ты его конечно можешь, но это будет как AsyncTask, евпочя. Не будет. Нехуй тащить целую зависимость, если тебе не нужны какие то сложные расчеты дат. Календарь хоть и не очень удобен, но если нужно посчитать сколько осталось до полудня или какая дата будет через 7 дней, то смысла в джоде нет.
К тому же джода тащит свои часовые пояса с собой, а не использует те, что зашиты в андроиде. На старых девайсах это может вызвать проблемы, когда показания джоды расходятся со временем в статус баре из-за смены поясов или летнего/зимнего времени.
>>1007194 Тащемта, есть йодовский бекпорт под ведро. У йоды плюс в том, что есть возможность вычислять пересечения интервалов. Но она и сама больше по размерам, особенно в сравнении с abp
>>992478 (OP) Анон, нужна твоя помощь. Я пилю меню настроек. Унаследовал свою Activity от PreferenceActivity, написал ее, а дальше ступор. Я почитал гуглодоки но так и не понял пару моментов: 1) PreferenceActivity сам сохраняет выбранные настройки в свой SharedPreferences или это надо ручками прописывать? 2) Если он все-таки сохраняет в них, то как мне передать сохраненные настройки в другой SharedPreferences?
Саб двач. Есть одна проблема... Делаю 2д платформер. Застрял на том что не знаю как сделать так, чтобы персонаж поворачивался в сторону в которую идет. Помогите
К черту детали. Есть какой-нибудь годный тутор замутить скажем веб-сервис и апликуху с регистрацией через гугло\вк\фб-акк, авторизаций через короткий пинкод и отпечаток пальца, с асинхронным подтагиванием какой-нибудь статистиски с сервера. Только не такой, что надо перечитать полтыщи страниц бесполезной хуйни, чтобы найти несколько нужных, а чтобы прям по делу.
Для работы запросов: http://square.github.io/retrofit/ (семплы на гитхабе). Но если у тебя нулевые знания ведра, то это все как мертвому припарка, начни с офф гайда.
Что можно хорошего почитать по паттернам клиент-серверных приложений? Как хранить сессию, какое количество и в каких случаях надо кешировать данные, стоит ли использовать бесконечный список с подгрузкой данных из базы или правильнее ограничить количество ~10 экранами и выдавать данные строго по фильтрации и тому подобное.
Анон, помоги разобраться со StaggeredGridLayoutManager для RecyclerView. Решил в свободное время под андроид пописать, думал простой прототип за пару часов наколбашу, в итоге уже в сумме дня три ушло на ОДНУ БЛЯТЬ поебень. Суть в следующем есть StaggeredGridLayoutManager для RecyclerView, адаптер для которого заполняется урлами гифок с giphy, из этих урлов скачиваются гифки и получается главная страница. Ширина всех гифок одинаковая, разная высота. Так вот: при первоначальной загрузке - грид заполняется в рандомном порядке. Если после загрузки пару раз вверх-вниз поскролить - все становится нормально, кроме того, что последние 3 гифки периодически меняются местами. До этого я дохуя часов ебался с тем, чтобы ВСЕ гифки рандомно не перемешивались. Как заставить эту адовую хуйню работать по-человечески? 3 года назад забил на андроид именно из-за этой анальной ебли с костылями, очень печально, что до сих пор всякая залупа осталась. Текущий код адаптера https://pastebin.com/fV8Z8mky Активити https://pastebin.com/nb5mumUD Остальное, думаю, не так важно.
>>1008037 Потому что ты сам пытаешься динамически считать высоту и изменять высоту вьюхи, и очевидно делаешь это неправильно.
Почему этим вообще занимается адаптер? Зачем он хранит мапу с их размерами? Это вообще не его ответсвенность. Что за херня к тебя в onCreateViewHolder и createView творится? Ты вообще понимаешь, зачем ViewHolder нужен?
>>1008044 эти костыли появились потом, после часов разборок. Про холдер я рили не понимаю. Везде это тупо холдер - хранилка вьюхи и всё. У меня так же. Чего я не понял?
>>1008037 > До этого я дохуя часов ебался с тем, чтобы ВСЕ гифки рандомно не перемешивались. Ничего ты с этим не сделаешь. Проблема вроде бы лежит в корне, что LayoutManager не запоминает позиции проскроленных элементов и из-за этого начинается перемешивание на ходу.
>>1008056 https://github.com/csdodd/GiphyTest тут перемешиваний нет, я даже клонировал и поменял простой грид на Staggered - нихуя не поменялось. Делал всё аналогично - нихуя не работает. Я не понимаю, какую магическую залупу нужно сделать, чтобы это работало по-человечески. В нормальных приложениях же работает. Или андроид это всё еще лес из костылей?
>>1008063 > GridLayoutManager Так у него этой проблемы нет, ему же не надо пустые участки заполнять. Перемешивание именно на Staggered. Можешь сделать свой Staggered, который будет запоминать, как он слейаутил предыдущие элементы, но боюсь ты не осилишь.
На выбор дают корпоративный ноут - с маком, виндой и убунтой. Сам всю жизнь на винде и линуксе, с маком не работал, но хочется сильно. Есть ли подводные камни и прочие геморрои, если сходу на него пересесть? В целом для ведройд разработки оно годится? вроде студия под мак есть, хз, что там еще нужно
>>1008405 > sketch Проприетарное говно не нужно. Если дизайнер его использует, то пожалуйста. Но экспортировать он его должен в удобный для разработчика формат (разные dpi и т д)
>>1008435 > Проприетарное говно не нужно У тебя дизайнер пользуется гимпом? > Но экспортировать он его должен в удобный для разработчика формат Ты хочешь получать готовые ассеты от дизайнера? А если твоя реализация компоновки не будет совпадать с его? Размеры текста на пнгшках будешь высматривать?
>>1008448 К тебе пришли иконки с отступом, тебе нужны без (или наоборот). Вместо того, чтобы в скетче/фотошопе/любом говне нажать 1 кнопку экспорта ты пишешь своему дизайнеру перерезать и ждешь, когда он это сделает. Что-то такое себе.
Поясните за перекат на Kotlin. Конвертнул один файлик, в итоге получаю невнятный NPE на onCreateLoader. Откатил обратно - все работает. Что за беда такая?
>>996220 Ну вот уж нахуй Ебал этот эклипс куда можно и нельзя Этот ебучий кусок ебанины по два раз в день проебывал зависимости из проекта и отказывался хоть как то работать. Слава студии
>>1008589 Ты был прав. Но при этом сразу следующа трабла: Было Cursor previousUpdatedOne = (Cursor) view.getTag(R.id.updated_cursor); if (previousUpdatedOne != null) previousUpdatedOne.close(); Стало val previousUpdatedOne = view.getTag(R.id.updated_cursor) as Cursor previousUpdatedOne?.close() Ругается kotlin.TypeCastException: null cannot be cast to non-null type android.database.Cursor Я хз че ему надо, помогач.
>>992478 (OP) Задаю: > Qt, Xamarin, PhoneGap/Ionic/Titanium/ReactNativ, BugVM, LibGDX На этом всем можно писать полноценные годные проги, игры, етц, ничем не хуже жабных/котлиновых или это все квадратноколесные велосипеды? При отсутствии у фреймворка требуемой возможности, можно ли из него обратиться к родному API ведра?
И еще: как у ведра обстоят дела с работой с фингерпринт-сканерами? Можно получить "фотку" отпечатка или хотя бы инфу о том, что "степень совпадения отпечатка А и отпечатка В равна С процентов"? Есть какой-нибудь гайд по хеллоуворлду с фингерпринтом (например, локскрин)?
>>1008986 > полноценные годные Нет. Работающие - да. > Можно получить "фотку" отпечатка или хотя бы инфу о том, что "степень совпадения отпечатка А и отпечатка В равна С процентов"? Нет.
Котаны, вам не кажется, что вся вот эта ебань, типа RxJava - это творения заигравшихся в ООП людей, когда для простейших асинхронных операций нужно шел SUBSCRIBER через OBSERVER а там FLATMAP?
>>1009180 Заглянул сейчас на их гитхаб. Субъективное ощущение - хипстота пытается сделать, чтобы можно было легко и непринужденно ебошить ту же асинхронную колбэковую лапшу, что и в любимом жс.
>>1009373 А главное - в жс лямбда это просто функция, а не ебаный анонимный класс, который обходится в дохуиллиард раз дороже. Но хипстоте похуй, ведь память - не ресурс.
>>1008986 Кучу раз уже обсуждали. Писать можно, но будет кривое, лагающее и трудноподдерживаемое говно. Попробуй найти в google play приложение, написанное на этой параше, у которого будет больше 10к установок и рейтинг выше 4.
Единственное исключение — Qt, но смысл на нем писать есть только для сложных приложений, где нужна работа с 3D, обработка звука/видео, гис-системы и т.д.
>>1009384 > ведь память - не ресурс 80% твоего потребления памяти будет все равно приходится на byte[], а не ссаные лябды/колбэки. >>1009405 > Попробуй найти в google play приложение, написанное на этой параше, у которого будет больше 10к установок и рейтинг выше 4. Твиттер на реактнативе.
>>1009409 >80% твоего потребления памяти будет все равно приходится на byte[], а не ссаные лябды/колбэки. Дело не в этом, а в том, что новый анонимный класс на каждую лямбду - это же пиздец, товарищи. А эти пидоры из rx предлагают их хуярить буквально на каждый чих. Вообще, люди, которые проектировали жабу, тоже так думали - а похуй, все равно 80% памяти будет занято полезной нагрузкой, ну и их любимое "RAM is so cheap nowadays". И что мы получили в итоге? Вопрос риторический.
>>1010042 сам спросил, сам ответил, двач хули... Android/Sdk/emulator => Android/Sdk/tools/emulator -forse-32bit => force-32bit алсо так и не получилось эмулятор запустить нормально, дебажу на реальном девайсе
Посоны, halp. Нихуя не понимаю, как с этим ебучим гитом студию подружить. По разному пытался, и просто гитом из консоли: >git clone https://[email protected]/sychov/mokrayapiska.git >cd mokrayapiska >echo "# My project's README" >> README.md >git add README.md >git commit -m "Initial commit" >git push -u origin master Потом в этой директории пытаюсь студией новый проект создать, она, какого-то хуя делает проект в папке mokrayapiska\mokrayapiska Всё снёс, заново пытался сделать при создании проекта clone projecе from version control system, создаётся тупо пустой проект, с одним ридми файлом. Жопа бля полная, какого хуя так сложно всё?
Вкатываюсь в андройд-разработку, посмотрел на апворке, какие зп и количество работы. Правда, количество разработчиков пугает тоже. Уже скачал андройд студию!
Как думаете, какими контролами делается вот такое https://www.youtube.com/watch?v=DpUCfG1UdoI Т.е. лист с которым можно взаимодействовать, увеличивать его как фотографию растягивая двумя пальцами, перемещать и тд.
>>1012211 Как же не гуглится, когда: document.getElementById('cell-a-4').innerHTML = '...'; Выдаёт сотни линков. Так оно и работает, и ничего сложного там нет.
>>1012262 Точно, про игровой движок я чёт и не подумал. А ведь я могу немного в Unity, попробую создать нечто в нём. Спасибо, но вопрос объявляю пока открытым, может кто ещё подскажет.
тупой вопрос, да-да знаю в шапке ответ, но все же. То есть чтобы адекватно писать в Android studio программы хуеграммы, нужны высокие знания жабы? или все же можно попутно и то и то дрочить или слишком много стульев и я сяду на хуй и лучше сперва на жабе сфокусироваться?
>>1012994 слишком много стульев. два языка считай учить будешь.
жава как язык и так не особо юзер-френдли для начинающих. андроид с его эксемелями в разных папках еще менее.
по опыту могу сказать что без жавы вообще лучше в андроид одному не лезть, и лучше лезть уже с опытом любого UI-фреймворка жавы, хоть того же свинга.
но если твоя цель хуяк-хуяк две кнопки и копипаст со стековерфлоу или 100уроковандроид, то впринципе можно, но понимать будешь примерно нихуя что происходит.
>>1013014 >но понимать будешь примерно нихуя что происходит. Да блять все равно нипонятно нихуя будет. Более менее понятно, в легких ферймворках под винду, ну там getmessage, по хендлу екземляр класса нашли, передали, хуяк вот и нажатие кнопки случилось, или отрисовать нужно что-то. А в адроиде этом пиздос просто, ад наворотили, эксемельки блять какие-то, нихуя непонятно. Мне проще было с шаблонами на С++ в WTL пердолится, чем с этой хуйней разбираться.
>>1013028 > Мне проще было с шаблонами на С++ в WTL пердолится, чем с этой хуйней разбираться.
Всё верно говоришь.
>>1013018 Так смотря что ты хочешь. Если на бекенде сосредотачиваться - жава мастхев на уровне чтобы даже не задумываться. Конкретно андроидовские фичи бекенда помимо базовой жавы осваиваются за пару месяцев на хорошем уровне, короче тут всё более-менее и жить можно. Помимо тебе понадобятся алгоритмы и байтоёбство, тут без жавы никак.
Отдельная тема - качаться в UI глубже чем хелловорлд - пиздос. Тут у тебя два основных пути: 1. ебёшься с фреймворками. 2. ебёшься с кривой Support-библиотекой, которая суть тот же фреймворк на костылях. А потом всё равно придётся ебаться и с тем и с другим одновременно.
На базовых концептах типа вью, лайаут, лиснеры-хуиснеры итп далеко не уедешь, чтобы выдавать что-то сложнее хеллоуворлда на паре кнопок - быстрее долетишь до марса на жопной тяге и утонешь в спагетти-коде. Чтобы вышло что-то годное - надо начинать думать не столько в жаве, сколько в ООП.
В процессе освоения - за каждым вопросом чуть глубже базовой разметки лайаута будешь лезть в гугол и охуевать, и охуевать, и охуевать насколько всё неочевидно и оверархитектура.
Даже когда освоишься, особенно ничего не изменится - будешь примерно вспоминать по каким ключевым словам искать решение проблемы, и всё равно лезть в гугол. Разве что добавишь очередной фреймворкнейм себе в резюме, и будешь рассказывать на какие его грабли натыкался на собеседованиях.
Без жавы будешь понимать, верно говорит анон - ещё меньше чем нихуя.
>>1013165>>1013161 а может шаришь, просто из любопытства, почему джуны по андроиду не нужны сейчас? алсо, вообще до 4ого числа мне нужно сделать задание тестовое на джуна, лол и оно ни разу сложным мне не кажется, как минимум хочу его сделать, просто потому чтобы сделать, вернее почему бы и нет. я понял за книги, спасибо всем кто помог и ответил, буду стараться вкатиться, вот. и да, есть не большая законченная прога написанная для универа, но все равно думаю жабу подзадротить и параллельно просто делать какие-то маленькие проги, чтобы просто руку набивать, такой вот план, короче спасибо анон
>>1013172 Банальный пример - допустим нужно быстро закрывать проект, в котором уже дохуя всего есть, и надо ещё допиливать, а рук чтобы имеющимися силами всё сделать не хватает.
Представим варианты (утрирую): 1) Взять 4х джунов скажем за 40к каждого, и въёбывать время и силы на то чтобы их доучивать фреймворку/ооп/токостям жавы или андроида, да и вообще программированию 2) Взять одного сеньёра-помидора за 160к+, с опытом андроида год-два который сразу начнет приносить результат. тут тоже кстати поискать ещё придётся, т.к. все при делах давно
Подучившиеся джуны могут съебать без всяких гарантий чуть ли не через пару месяцев на зарплату в два раза больше в другую контору, и т.д. по нарастающей.
Джуны ок в больших фирмах, где много свбодных ресурсов на обучение и удержание типа яндекса, это по сути долгосрочный актив. В таких местах тебя будут отбирать из десятка потенциальных кандидатов, ибо на программирование сейчас хайп, особенно на андроид - т.к. у любого школьника телефон, поэтому тех кто хочет вкатиться в программирование - овер9к.
Курсы/уроки/гайды по программированию за 24 минуты, которые проходят вчерашние школьники по сути дают мало, а на чистом энтузиазме далеко не уедешь. Да и кто гарантирует, что у джуна через 2 месяца работы даже этот энтузиазм не перегорит (особенно поебавшись с андроидами)?
>>1013018 Есть один путь короче. Качаешь с гитхаба исходники софтинки, которая ближе всего к тому, что собираешься запилить. Далее конвертишь в котлин, правишь косяки после конвертации, заодно разбираешь как что работает. Я к тому моменту как все на котлин переведу планирую уже осовить его на уровне запиливания собтвенных фитч. Ну дальше на маркет сразу.
>>1013326 мне нужно запилить кнопку которая будет находить 4 картинки относительно гео локации пользователя и чет я на этом моменте туплю, да-да я знаю за гугловский API для поиска по местности, но все равно как грамотно связть с кнопкой туплю. нажатие кнопки==>показывает картинки рядом с геолокацией где ты сейчас и берет 4 штуки и из них делает коллаж, вот.
Анон, появился вопрос про МВП. Когда создаётся презентер? В гугл примере https://github.com/googlesamples/android-architecture/tree/todo-mvp/todoapp он пересоздаётся каждый раз в onCreate активити и там же к нему крепится фрагмент. Но тогда мы сталкиваемся с вечной проблемой поворота экрана. Вот тут, например https://github.com/googlesamples/android-architecture/blob/todo-mvp/todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksPresenter.java ,124 строчка, индусы из гугла после загрузки данных извне и их мэппинга тупо смотрят, работает ли текущая вьюшка и если она была проёбана, то они тупо сливают свежескачанные данны в унитаз. Может я что-то не понимаю? За такое даже джунов пиздят, а тут вроде гугл и примеры правильного кода. Что если делать все презентеры синглтонами, а вьюшки к ним подключать по мере надобности? Если какая-то наркоманская архитектура, когда в один момент времени существует куча разных вьюшек, связанная с одним и тем же типом презентера, то в этом случае можно так же сделать презентер-синглтон и крепить к нему все эти вьюшки в виде листа и одновременно их обновлять.
>>1013801 > Что если делать все презентеры синглтонами, а вьюшки к ним подключать по мере надобности? В Moxy примерно это и реализовали. Презентер живет в статик мапе, пока вьюха окончательно не закроется.
Дроидач, а кто-нибудь здесь понимает, нафига нужны кастомные пермишены? Прочитал гуглогайды и всёравно не вижу профита.
Вот создам я их, даже буду спрашивать - пользователь мне даст из моего доверенного приложения. Также пользователь его даст и приложению злоумышленника inb4: не даст 0.003% пользователей, которые поймут что происходит.
Априори если человек установил что-то сомнительное - то проебался. Как в такой ситуации спасут пермишшны? Ответственность за принятие пермишшна волшебно перенесётся с разработчика на пользователя? Но ведь всёравно по сути нет, т.к. это задача разработчика защищать пользователя.
Короче, объясните плес, нужно ли мне вообще это говно, и зачем?
>>1015925 >>1015927 Игоры, конечно, интересно, но можно ли на них так же поднимать как и на андроиде? У юньки вакансий мало, срезняя зп ниже. Короче очкую я ей заниматься
Сап дроидач. Есть желание потыкать этот ваш Андроид, не собираюсь вкатываться, но как получится. В Джаву умеюв котлин нет. Сам пишу на сях/крестах и пистоне. С какого курса из шапки лучше начинать? Udacity или Codepath? Не хочется читать много воды. Спасибо.
Нужно посмотреть https-трафик одного андроид-приложения. Как это можно сделать? Пробовал через прокси с подменой сертификата, браузер работает, а приложение нет. Там наверное какая-то своя проверка сертификата я так думаю. Я в этом не силен. Ну так вот, можно ли в принципе как-то посмотреть этот трафик? Ну там, например, пропатчить где-нибудь, подключится дебагером, все дела
Дроиды, появилось желание вкатиться к вам Взял сегодня книгу Ретабоуил С., Android NDK: разработка приложений под Android на C/C++. Сильно ли я проебался с выбором первой литературы и актуальна ли информация из книги?
>>1017859 >Ретабоуил С., Android NDK: разработка приложений под Android на C/C++
Если игоры писать собрался разве что и ОПТИМИЗИРОВАТЬ. И надеюсь, что ты уже бог С++, иначе ты делаешь что-то сильно не так.
По андроиду впринципе проёб с книгами с актуальной информацией, т.к. слишком быстро новое выкатывают, тем более на русском языке (+полгода на перевод). Такчто актуальными могут быть (и то не всегда) только гайды от гугла.
>>1017739 Спасибо за ссылку, анон! Все получилось через xposed-модуль на genymotion. Даже приятно, что вот так помог. А то у меня уже опустились руки. Написал в треде так на всякий случай
>>1018876 >Зато как гейосники! Что гейосники? У них два варианта: 1) Таскать мышкой 2) Хуярить кодом В ведре есть промежуточный вариант (можно не мышкой) щедрая душа.
Анон, скачал API-демку, как правильно открыть её в андроид студио, чтобы можно было запустить на устройстве? Открыть всю папку через "import project" не даёт нужного результата.
>>1020236 Android нассыт на твой синглтон и пересоздаст фрагмент(с вызовом конструктора без параметров) когда ему будет нужно при рестарте/повороте экрана etc.
Fragments are meant to be reusable components of applications. You should not be using them as singletons, instead you should implement Fragment.SavedState or onSavedInstanceState.
public class YourFragment extends Fragment { // Blah blah blah you have a lot of other code in this fragment // but here is how to save state @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putInt("curChoice", mCurCheckPosition); } @Override public View onCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // savedInstanceState will have whatever you left in the outState bundle above } }
>>1020245 Проблема в том что гуглокарта ебет мозг. Ее проблема в том что у меня есть, скажем несколько фрагментов, которые открываются, которые открываются по порядку сваливаясь в бэкстек. Так вот каждый такой фрагмент с картой заново грузит эту ебучую карту, заполняя память и в итоге вызывая ООМ. Синглтон фрагмента же я могу деттачить в онСтоп и аттачить в каком нибудь онРезюм фрагмента контейнера. Помимо этого у меня там маркеры с фоточками, которые генерятся в рантайме. У меня в данном вопросе не стоит вопрос о сохранении стейта фрагмента и данных в нем, ибо данные у меня в бессмертном интеракторе/презентере живут. Так вот основная проблема это ебучая гуглокарта.
>>1020253 >OOM Прозреваю что ты чето с данными проёбываешь, так что из-за оставшихся ссылок GC что-то не может почистить. И смотреть тебе нужно именно в сторону утечек и их причин.
>Бессметный интерактор/презентер Ещё гипотеза что проблемы могут быть от того что он у тебя может быть в static-переменных.
>>1020333 >Ещё гипотеза что проблемы могут быть от того что он у тебя может быть в static-переменных. Презентер и интерактор живут в компоненте даггера, который обернут в WeakReference и живет столько сколько ему нужно. Они собственно тут не причем.
>>1020393 так говоришь, будто и в даггере утечек не может быть. сходу в гугле найдёшь несколько репортов на утечки с даггером.
>>1020409 потому что на эмуляторе одна реализация андроида (от индусов), а на девайсе другая (от китайцев), и что там каждый из них на своих форках навертел никому не известно.
плюс на эмуляторе у тебя меньше случайного говна из-за левых программ также жрущих память на физическом устройстве.
>>1020431 Я хуй знает с чем это связано. На физическом планшете сасунге 19 апи память так не кушает. На моём физическом 21 апи валится. На эмульгаторах все норм. Виноват был mapview, у которого не вызывался onDestroy что приводило к утечке внутри самого mapview. Теперь же я onDestroy переместил в onStop фрагмента своего и все заработало как часы.
Сап, котаны. Вопрос по бизнесовой составляющей. Мне предлагают поддерживать и при необходимости переписать проект, который представляет из себя просто адскую концентрацию говнокода и костылей, в котором блеать асинхронность сделана через new Thread(...).start() и сделать это нужно за два месяца. Масштабы проблемы - около десяти экранов с видео, биллингом, сложным UI, загрузкой и проигрыванием левой медиа, поворотами экрана и прочими сменами конфига и прилагающимся. Чтобы вы понимали - те, кого я учил делать приложеньки "для души" и кто знал до этого дай боже паскаль, писали более читаемый код.
В этом пиздеце есть венгерка, js_нижние_ебаные_подчеркивания, ЯШарпПропертиНотация и прочая параша, контексты везде пошли по пиздец и прочее подобное.
Сколько мне стоит запросить за этот пиздец, и стоит ли вообще руки марать? Оцените по меркам ДС
>>1024052 Берешь, оцениваешь стоимость работы для написания с нуля - тз же перед тобой. И просишь. А будешь ты писать с нуля или дописывать, уже тебе решать. Что проще, построить дом с нуля, или постоянно ремонтировать и достраивать развалившуюся избу.
Чего ты ожидаешь услышать, если объём проекта ты не написал (хотя бы примерно в тысячах строк), не написал используемые фреймворки и вообще нихуя конкретного кроме того что всё плохо.
Проси многа)))) И анон >>1024092 про с-нуля прав, конечно же.
>>1024052 А что плохого в new Thread().start() с точки зрения асинхронности? Просто я постоянно делаю такое, если нужно что-то в бэкграунде сделать, а если в ui-треде, то new Handler(Looper.getMainLooper()).post().
>>1024915 Так какие альтернативы? >тред, которому потом умереть вместо того что бы реюзать их Ты о чём? В джаве нельзя реюзать один и тот же тред. > It is never legal to start a thread more than once. In particular, a thread may not be restarted once it has completed execution.
Привет. Есть listview с rows разного типа контентом(сообщения в чате, могут быть картинки, вложения и т д). Как приоритетнее делать adapter в плане производительности: создавать разные layouts под свой тип и возвращать разные в зависимости от типа сообщения или создавать один layout со всеми возможными данными и убирать ненужное с помощью visibility.gone? В гугле смотрел делают и так и так
>>1025144 Ладно, проччитал про отличия, у меня имплементирован реюз элементов, так что по перфомансу должно быть норм. Но в будущем буду recyclerview юзать
>>1025162 В ресайклере ещё удобно как раз создавать разные ViewHolder для разных элементов, что является ответом на твой первоначальный вопрос. Там есть в RecyclerView.Adapter метод getItemViewType, по которому можно вычислять необходимый тип элемента, а возвращает он int'овое значение, которое потом используется при создании элемента листа в onCreateHolder. И по этому значению можно делать разные лэйауты, а потом в onBindViewHolder делать нисходящее преобразование типа и присваивать необходимые значения.
Есть старый комп. Ввиду неподдержки последними версиями android-ndk 32-битных ядер линукс (в смысле запуска) поставил арм тулчейн из пакетов и, пообщавшись немного с разработчиком и мейнтейнером ndk, последовал его совету: взять из сдк папку /sysroot и использовать clang из пакетов. Получаю invalid instruction. Если же я собираю древней 10й версией (последней для 32битных линуксов) - то получаю сигсегв. Срочно нужна помощь. Уже неделю ебусь.
Понемногу теребил андроид-разработку довольно давно, вот сейчас задумался о стажировке - учусь еще в универе, ну и подумал, что опыт нужно получать. И вот смотрю предложения, и нашел несколько для ios и ни одной для андроида ну только летние, а я уже не успел. Вопрос вот в чем: стоит ли пытаться еще и в ios или лучше не распыляться и таки долбить андроид? Тем более из отзывов на эти стажировки понял, что туда даже без опыта кодинга на платформе берут и даже без знания языка, знай только си да ооп с алгоритмами.
>>1026027 Я бы взял что есть и не выебывался, существует устойчивое мнение что з айось получаюь больше, а еботни меньше. Но это не верифицированная информация.
>>1026030 на будущей неделе, если время будет, планировал на гейось что нибудь запилить хелоу ворлдовское. Если запилю отпишусь по поводу еботни мимо другой анон 2года в андройде
>>1026477 >а как либгдх припилить Берешь либждкк, там есть мастер создания новых придожений со своей "другой" струткурой грейдла. Создаешь там проект, всю андроидовскую часть переносишь в андроидовский модуль, а хуевую делаешь внутри чисто-либджксовского модуля. По сути у тебя будет либждксовский активити, но можно фрагментом сделать.
как переключить developer.android.com на английский? некоторые материалы отображаются на русском и изменить не получается. кто поможет - плюс в карму :з
>>1028210 так у меня вот эта хуйня и не работала. вообще, сейчас проверил в файрфоксе, там все норм, потом немного поебался с куками в хроме и теперь все работает. спасибо, анон.
> Хочу вкатиться в разработку под Android! С чего начать?
Большинство приложений написано на Java, выучить её на хорошем уровне — это первое, что необходимо сделать. Рекомендуемую литературу см. в Java-треде.
После этого можно установить Android Studio, открыть официальную документацию http://developer.android.com/training/index.html и попробовать создать по туториалам своё первое приложение.
В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.
> Мануалы?
- Официальная документация: http://developer.android.com/
- Полезный гайд для начинающих и продвинутых: http://guides.thecodepath.com/android
- Бесплатный видеокурс от Google для новичков: https://www.udacity.com/course/android-development-for-beginners--ud837
- Два ресурса, единственный плюс которых — русский язык: http://startandroid.ru/ и http://developer.alexanderklimov.ru/android/
- Классика, способная дать ответ на почти любой вопрос "Как сделать xyz?": http://stackoverflow.com/
> Не хочу писать на Java!
- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17 мая поддерживается официально.
> Есть что-то кроме нативных приложений на Java/Kotlin?
- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Спрашивать в C++ треде.
- Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде.
- PhoneGap/Ionic/Titanium/ReactNative — имя им javascript, принципы у них разные, первые три попытка в кроссплатформенность одного кода, ReactNative проповедует другой подход, а именно написание разного кода но на одном языке. Популярность у них разная как и размер комьюнити. Вопросы по ним — в js-тред.
- BugVM — кросс-платформенный фреймворк, написанный на Java. Форк невинно убиенного RoboVM.
> Хочу писать игры!
LibGDX или Unity. Спрашивать в /gd/.
> Что нужно, чтобы взяли джуниором? Что учить в первую очередь?
Нужно хорошее знание Java, понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library, shared preferences, SQLite), знание популярных библиотек типа Retrofit + Glide/Picasso. И хотя бы оно готовое приложение.
Предыдущий тред: https://2ch.hk/pr/res/974849.html