Android Development Thread 2.3.1> Хочу вкатиться в разработку под 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://arhivach.org/thread/293352/
Как присвоить массиву значения цифр которые я напишу в EditText и вывести этот массив в TextView?
>>1079278http://developer.alexanderklimov.ru/android/views/edittext.phpА еще, лучше займись джавой на месяца два три, и научись гуглить. Когда разберешься с потоками, коллекциями, классами, построишь интерполяционный многочлен лагранжа, тогда можешь привыкать к андройду. Не лезь, сука.
>>1079632Я в андойде мимоходом чтобы более менее понимать. В январе перейду на C++
>>1079643Зачем долбиться в этом говне, если переходишь на с++? Где логика Карл?
>>1079659Не я решаю. Мне в конце августа нужно проект на android studio сдать и потом начнем изучать C++ %%тоже хз нахуя андроид. Я посмотрел, больше половины функций из андройда реализованы другими командами.
>>1079670тоже хз нахуя андроид. Я посмотрел, больше половины функций из андройда реализованы другими командами. фикс*
>>1079670>Мне в конце декабря*
вкатываюсь, хочу выяснить — насколько велика вероятность в android/ios со временем начать работать из дома. скажем, в течение года с момента старта.необязательно (даже желательно не) фриланс, а просто чтобы разрешили не ходить в офис и самому планировать своё время.судя по вакансиям с возможностью работать из дома на hh, это больше характерно для веба с фронтэндом (к которым у меня душа сейчас не лежит), но вы что скажете?
>>1079670ты хуйнёй какой-то страдаешь. никого не ебёт что тебе нужно. твой запрос уровня "нихуя не хочу разбираться зделайте плс".разбей на подзадачи и реши их с помощью мозгов и гугла:- считай из EditText строку, преобразуй её в массив хуй знает как конкретно тебе надо.- сделай какуюто хуйню с этим массивом, требуемую тебе по задаче, ибо нахуя тогда в массив бы было преобразовывать?- массив преобразуй назад в строку и выведи в TextView.но я, сказать честно, подозреваю что тебе и массив нахуй не всрался, и андроид нахуй не всрался, и с++ потом, и вообще айти с такими подходами к решению задач.
>>1079780у меня со временем само так вышло (не фриланс) но для джавы и андроида это скорее повезло имхо. на фрилансе больше шансов.но - врядли с нуля за год вкатишься до приличного уровня андроидп, а на фуллтайм удаленку с годом опыта тебе врядли доверят.короче, шансы малы, но они есть если не сольёшься раньше.
>>1079810ясно, спасибо.java-треда в разделе я не вижу, спрошу у тебя — бесплатные лекции по джаве на ютубе от головача 2013-14 годов, это норм? для лекций 2013 года срок давности 5 лет скоро будет. нужно искать что-то более свежее на английском?
>>1079807Да с выводом массива в textview я уже разобрался и >нихуя не хочу разбираться зделайте плсС этим я не согласен. Я хотел сделать программу которая строит графики, но я не могу понять как в моей библиотеке присваивать данные массива точкам на графике поэтому и просил гайд чтобы разобраться
>>1079814Нормально. и хёд фёст 2012 года тоже нормально. Может потом после фёста скачать полное руководство - там и лямбы и чего только нет или украсть 9 издание, оно недавно вышло на англ.Еще здесь лежит https://github.com/pafnat/golovachcourses.com но я пока не копался в этом.
>>1079817>нихуя не хочу разбираться зделайте плс>С этим я не согласен. Ой блять, давай рассказывай. Захочешь - задрочишь сам и прощерстишь весь интернет.
>>1079823нормас, спасибо
>>1079825Я смотрю ты любишь покормить.
Мертвый тред мертвой платформы?Как учиться material design, пасаны? Вот есть набор гайдлайнов, окей, круто. А вот как их применять, какие элементы для лэйаутов использовать, как это все соотносить с темами/стилями?Где про это вот все почитать можно?
>>1081753Хуя себе мертвая платформа
>>1082177А если бы twitter был написан на xamarin, все бы побежали скачивать visual studio?Алсо, почему-таки xamarin не популярен? Мне кажется есть в этом какое-то луддитство. Xamarin слишком охуенен, т.к. с ним становятся не нужны отдельные команды по разработке для каждой платформы. Программисты боятся что станут не нужны
>>1082185> Алсо, почему-таки xamarin не популярен? Потому что говно. > Xamarin слишком охуененА ты говноед.
>>1082185https://android.jlelse.eu/why-we-are-not-cross-platform-developers-fd7ef70e976d
>>1082196>ко-коНу и чем это отличается от написанного мной?Без xamarin разработка приложений дороже - выгода программистам. Эдакая цеховая солидарность
>>1082177>Которые СОДЕРЖАТ языкнейм>Имеется 10 конкурирующих ЯП>Мы сделаем охуенный ЯП который заменит все>Имеется 11 конкурирующих яп.
>>1082347
>>1079632>построишь интерполяционный многочлен лагранжау тебя опечатка в слове "пососешь"
>>1082574Ахахахахахахахаза бугага ыыыыыы лол ржунимагу))))))00
>>1082177если брать настолько жирные приложения - там можно найти любое мыслимое хайповое говно/технологию/язык. с таким же успехом на пикче можно написать там же Top apps that contain Javascript или C++.лучше покажи список, который не contains а полностью написан на сабже.
>>1082603Показал тебе за щеку. Проверяй.Серьёзно думаешь, что кто-то будет переписывать готовое приложение на котлине? Полностью написанные на нем приложения только начинают появляться. А в топе приложений (именно о нем речь на пикче) новые приложения появляются в лучшем случае раз в квартал. Хочешь не из топа? Открывай гитхаб и смотри, тонны их.
Блять, вчера полдня ебался с неработающими тестами, а оказалось, что Espresso не работает с ProgressBar. Даже если отключаешь анимацию, Espresso все равно думает, что анимация происходит и зависает.
>>1082626>Серьёзно думаешь, что кто-то будет переписывать готовое приложение на котлине? не поверишь, но в как раз именно в больших конторах регулярно таким говном маются, переписывая значительные части на новый фреймворк-нейм. не аргумент.а так-то никого не ебёт на чем написано, главное чтобы быстро и дёшево разрабатывалось. а вообще я в рот ебал андроид - похуй на каком ЯП, всёравно говно выйдет из-за того что на xml-лях всё основано.
>>1082635> а вообще я в рот ебал андроид - похуй на каком ЯП, всёравно говно выйдет из-за того что на xml-лях всё основано.Любитель перетаскивать кнопки мышкой по форме в треде. Все в Delphi.
>>1082638ага в дельфи топчик было, ебаться после этого с разметкой иксемельки - днище.олсо ты не прав вдвойне, т.к. гуглы преподнесли ConstraintLayout для тягания мышкой , который ожидаемо тоже говно на фоне дельфи. как охниебатьсяпрорыв в удобстве.но я не о лайаутах в первую очередь, а манифестах, компонентах, стилях, селекторах, xml-дроваблов итп. лайауты из всего этого наиболее адекватная часть.олсо, студия 3.0 наконецто созрела из беток, порадуемся.
>>1082521Маняпрогноз.
>>1082677Мелкобуквенный луркоеб. Почему этому треду так везёт на долбоебов?
>>1082702> ВРЁТИ
>>1082705Анончик, нетолсти, позязя.
>>1082677>гуглы преподнесли ConstraintLayout для тягания мышкойИ я ебашу его в xmlе, так тупо быстрей. Пиздец как мне бомбит от Xcoda, там автолэйаут только мышкой, пиздец как же это долго.
>>1082703знатно тебе пригорело, лучше бы по существу высказался>>1082791да
>>1082812> знатно тебе пригорело
Кто-то пользовался "новыми" xml-шрифтами? Можно ли ими полностью заменить Calligraphy. В частности интересует возможность исспользовать шрифты из xml в связке со Spannable. Сейчас как я вижу нужно создавать свой класс спана, можно скопировать от каллиграфии. Еще не могу понять что значит fontWeight в аттрибутах для font в font-family, по какому принципу они выбираются? Игрался со значениями - разницы не увидел. И почему для fontStyle доступны только normal и italics?
Как разместить элементы одного linearlayout под другим чтобы элементы второго были видны?
>>1084420XML показывай, а не скриншоты. Вагую у тебя высота стоит match_parent И тебе студия даже подсказывает, что ты делаешь что-то не так: три жёлтых восклицательных знака
>>1084420Бросай это дело и пиши в хмл. В первом линере в height зачем мач парент поставил? Ты троллить решил здесь?
Опытные аноны, нужно реализовать клиент-серверное приложение, клиент отправляет серверу картинку, сервер эту картинку с помощью специальных алгоритмов обрабатывает и улучшает ее качество (алгоритм super resolution). Каким образом лучше реализовать бэкенд приложения? Сложно ли реализовать серверную часть на питоне? Сложно ли вообще организовать связь приложения с удаленным сервером? Опыта андроид разработки ноль, но времени полно.
>>1084494Нет не сложно, все что ты описал тривиальные вещи.
>>1084438>>1084484Спасибо. Было match_parent
Есть один Coordinator, Recycler, Appbar, CollapsingToolbar лейауты. Вся эта конструкция при скролле скрывает тулбар. Интересует вот что. Я проскроллил только половину тулбара, ушел в другой фрагмент, затем вернулся. Как мне сохранить стейт аппбара, чтобы он был так же наполовину проскролленным, как я его и оставил?
Знатоки, внимание вопрос. Есть приложение в котором пять разных карточек, у всех разные xml,но данные тянет с одного сайта. В одной из карточек есть поле EditText, получив цифру из которого нужно использовать как id для ссылки, чтобы получить ответ с сервера. Как реализовать это? Использовать буду Retrofit2.
>>1084877Используй retrofit2
>>1084882Спасибо. Нашёл в описании либы:A request URL can be updated dynamically using replacement blocks and parameters on the method. A replacement block is an alphanumeric string surrounded by { and }. A corresponding parameter must be annotated with @Path using the same string.@GET("group/{id}/users")Call<List<User>> groupList(@Path("id") int groupId);
Сап, андроидач. Есть один фрагмент, в лэйауте которого есть несколько заглушек для различных ситуаций (прогрессбар, сообщение об ошибке, еще пара вещей по мелочи). Сейчас пока смена заглушек происходит через смену visibility, но лэйаут фрагмента сильно перегружен и код говно получается. Что делать?У меня из идей только оставить в фрагменте FrameLayout и инфлэйтить туда отдельные лэйауты заглушек при необходимости. Какие подводные камни в этом случае?
Котоны, немного ньюфажный вопрос.Как происходит сборка DEX при формировании apk и что он в итоге содержит?Я тут немного погуглил и вот что понял: сначала все .java файлы пропускаются через javac и на выходе получаем .class (который представляет собой байт-код JVM), затем при помощи dx все .class файлы собираются и транслируются в байт-код Dalvik.Я все правильно поднял? Также меня интересует какие оптимизации производят javac и dx. Судя по вики javac особо ничего не оптимизирует и тупо делает проверки и раскрывает всякий синтаксический сахар, а dx тупо транслирует байт-код джавы в дальвик. В итоге DEX содержит практически оригинальный джавакод с минимальными изменениями?
Как установить sdk не имея доступа к интернету?
>>1084973>Я все правильно поднял?Да.Я сам нафаня, внутренностей dx/dexopt не знаю, но вот есть немного инфы.dx можешь начать изучать отсюдаhttps://android.googlesource.com/platform/dalvik/+/master/dx/Есть вот этот пост 11 года.https://stackoverflow.com/questions/4912695/what-optimizations-can-i-expect-from-dalvik-and-the-android-toolchainЕсть какая-то документация по ART/Dalvikhttps://source.android.com/devices/tech/dalvik/Есть еще dexopt.https://android.googlesource.com/platform/dalvik/+/master/docs/dexopt.html
>>1085000В студию?Качаешь/берешь у друга/находишь на помойке sdk.Идешь в Andrid Studio -> Tools -> SDK Manager.Указываешь путь к sdk.Правда, хуй знает, где скачать по прямой ссылке чисто SDK, обычно используется SDK Manager. Но ты, наверное, можешь попросить кого-то скачать все нужные компоненты и тупо скопировать папке.
>>1085000Это пиздец браток.
>>1085005О, вот сорцами dx и правда надо обмазаться, спасибо.Алсо обмазался тут apktool и глянул выхлоп в smali: там всё, даже оригинальные названия полей и переменных, раскрыты все циклы да if'ы, похоже ни javac ни dx нихуя толком и не делают.
>>1085089proguard может немножко соптимизировать, но если ты попросишь. Есть утилита фейсбуковая, чето-то там делает. Но вообще главное в JIT, и на новых версиях при утсановке немного под устройстов оптимизирует ART.
Котаны, случайно попал в Google Developer Challenge Scholarship на Android Basics. Стоит переключатся на это дело, если сейчас активно учу python?
>>1085246Ну про odex и art я знаю, меня интересовало в каком виде жавакод лежит в apk и насколько полно его можно будет восстановить при условии что не используются всякие мокрописьки-обфускаторы.Как оказалось, восстановить можно достаточно подробно.
>>1085339Даже если proguard будет жостаточно просто восставноить, dexguard не сильно лучше. Остается нативный, но и там если захотят все достанут.
>>1085348Ага, а всякие игори на хуюнити с логикой на шарпе вообще разбираются чуть ли не в оригинальный сорцы каким-нибудь dnSpy.
Анончик, поясни плиз за передачу между скринами в MVP?Есть один проект, в нём всё работает через интенты при старте активити и аргументы фрагментов.Как правильнее переделать:1) Пилить переходы через модель (кладём перед переходом - берём после)2) Передавать между презентерами?
>>1085408В идеале в модель данные которые надо куда-то передаватьи не попадают. То есть допустим ты ты находишься в профиле, по клику ты попадаешь на экран редактирования. Но данные ты не передаешь между экранами, у них либо общий презентер, либо у их презхентеров есть общие данные на уровне модели. Соответсвенно ничего никуда класть не надо, если оно уже где-то было, то оно и осталосьв модели.
>>1085408Переход на другой экран осуществляет вьюха (интент, фрагмент-менеджер etc). Вьюха нового экрана получает входные данные (extras) и передает их презентеру.
Анон, есть методыhttps://pastebin.com/VVBqqiSG нужно передать значение переменной streamUrl из setWebmData в onResume. На данный момент пробовал через сеттер-геттер, но переменная остается пустая. Проверял работу обычным Toast. Если проверять в setWebmData, то данные в сеттер передаются. Но не далее чем в этом месте. Куда копать? Это связано с потоками?
>>1086027Иди нахуй.
Ананасы, мой календарь на ксяоми автоматически тянет даты с писем на gmail и добавляет ивенты. Как мне сделать такое же? Почитал вот это https://developers.google.com/gmail/api/quickstart/android , но тут вроде про включение возможности парсинга писем со своего аккаунта.
Анон, есть SqlBrite а есть Room.При том что у обоих есть rx поддержка, в сэмпл проекте SqlBrite используется Room. В чем разница между этими двумя либами? Какую мне использовать?
Какая минилальная по железу пека должна быть?
>>1086688StoreIO
>>1086709Этот вопрос тут каждые 40 постов задают. Читай тред.
>>1086769ебанутый что ли?
>>1086823Пошёл нахуй, клоун.
Тонем
>>1086200Не понимаю твой вопрос
>>1079097 (OP)Всем привет!Хочу писать на Ruby приложения для Android.Есть ли для этого возможность без глючных гемов и т.п., чтобы я просто в Rubymine или другом редакторе захуярил код, а потом сделал apk и протестил на своём телефоне?Вопросы настолько простые, потому что я нуб в программировании, просто есть идеи приложений, которые я хочу сделать.
>>1087516В теории можно. На практике - НЕ ЛЕЗЬ БЛЯДЬ, ОНА ТЕБЯ СОЖРЁТ.
>>1087516Начни с гугла что ли.https://habrahabr.ru/post/165071/Идея пистаь на руби под ведро не очень.
Чё, взяли тут кого на курсы по андроид разработке от гугла и юдасити?
>>1087542Идея пистаь на руби не очень.Пофиксил тебя
>>1087545Что значит взяли? Этим курсам сто лет и они бесплатные. В чем смысл-то?
>>1087548Ты наверно про какие-то другие курсы думаешь. Эти курсы платные и стоят 1к баксов. Гугол выделил 15к (или около того) бесплатных месте. Нужно было заполнить анкету, чтобы появился шанс на то, что тебя возьмут. Вот тут вся инфа - https://www.udacity.com/course/android-developer-nanodegree-by-google--nd801
>>1087549И вот тут ещё инфа - https://blog.udacity.com/2017/10/udacity-google-announce-50000-new-scholarships.html
>>1087554Ой нет, не то. Вот это - https://blog.udacity.com/2017/09/announcing-60000-challenge-scholarships-udacity-google.html
Ну и что вы тут, яжпрограммисты? Пикрелейтед на андроид портировать можете?
>>1087547Это тоже.
>>1087556Зочем?
>>1087542именно из-за этой статьи я и обращаюсь к тем, кто уже пробовал.а если на яваскрипте писать, перспективы сразу становятся лучше?
>>1087562Не думаю что тут кто-то настолько извращался что бы на руби писать, смысла нет.Ну на жабоскрипте пишут, но опять же тут таких мало, реакт нейтив конечно лучший из их семейства.
>>1087565сейчас заглянул в их тему и действительно в него упёрся.что ж, говорят его несложно освоить, почему бы и нет...
>>1087545>>1087549>>1087555Нет, курсы как были бесплатными, так и есть: https://classroom.udacity.com/courses/ud853Бабло нужно только за сертификат и бестолковое код-ревью финального проекта платить. Часть плана Гугла по насыщению рынка миллионами низкооплачиваемых макак. http://adage.com/article/digital/google-train-2-million-android-developers-ffree-india/304979/
>>1087562Ебашь сразу на Хаскелле: https://github.com/neurocyte/android-haskell-activity/blob/master/src/HaskellActivity.hs
>>1087572нет уж, в интернетах пишут что реакт — новый и классный, так что начну с него, хуй уж с этим раби, подождёт.
>>1079632>построишь интерполяционный многочлен лагранжаЯ думал здесь адекватные люди сидят.
>>1087487На gmail почту приходят письма с ивентами, в которых есть даты. Типа такого то числа приходите на такое то мероприятие. Гугл календарь эти мероприятия автоматически добавлчет на указанные в письмах даты. Как мне такое же сделать?
>>1087545Меня взяли на Android Basics. Пока очень смахивает на какую-то хрень: материал выдают без объяснения того, как всё это работет. Даже и не знаю, стоит ли тратить время.
>>1087677Берёшь и делаешь. Или ты ждёшь, что за тебя код напишут?
>>1087689>>1087545>>1087568Ссылка на курс, кстати, в шапке треда висит уже несколько десятков перекатов точно.
>>1087694Этот курс они используют для отсева кандидатов. Из 20 000 стипендиатов по итогам этого тренировочного курса они отберут 2000, которые получать доступ к Android Basics Nanodegree Program.
>>1087697Тебе писали уже, что к нему не нужно получать доступ, он и так открытый, лалка: >>1087568
>>1087710Сертификат и код-ревью тоже бесплатные, да?
>>1087713Сертификат ты себе только в жопу сможешь засунуть, а код-ревью там уровня LGTM! Looks good!
>>1087717Чего у тебя так припекает? Курс то как сам по себе? Стоит на него тратить время, или можно как-то быстрее и качественнее эту информацию получить?
>>1087545Похвастался в рабочем чате, что меня приглашают в Google
>>1087545Чёто почитал инфу и хуйнёй какой-то это оказалось. Все интересные плюшки будут только во втором туре, куда смогут попасть только 10% от изначальной массы. Отбирать будут в основном, как я понял, по активности на форуме и в слаке, по-скольку задания, которые выдают в первом туре уже с решениями и тебе по-сути делать нихуя не надо, только перепечатывать. Т.е. отбирать по результатам задания не получится, так как у всех всё одно и тоже будет. Да и там сказано, что проверять никто это не будет. Всё это во втором туре только. Соответственно, если ты не социоблядь, то сразу в пролёте оказываешься.
>>1087934Вот так неожиданность!
Возник вопрос насчет использования Android SDK на линуксе. Как должны быть настроены разрешения если SDK находится в /opt/android-sdk-linux? Или если это совсем хуевый путь, куда его можно засунуть на общем билд сервере?А то у меня сборка градлом падает с ошибками вроде "Exception while marshalling что-то там .xml. Probably the SDK is read-only".
Анон, как стать таким же, как авторы этого репозитория? Сколько за свою непродолжительную карьеру занимаюсь программированием, такое встречаю редко. Обычно все пишут не так красиво и технически правильно. Даже не знаю, как с этим работать после кучи непрофессионального кода.https://github.com/lawloretienne/Loop/blob/master/app/src/main/java/com/etiennelawlor/loop/network/models/response/Video.java
>>1087983Ну хуй знает, такой себе код. Запросы на сервер прям из фрагментов вызываются и там же проверяются.
>>1087981Проиграл с пика. Хитро!
Анон, как стать таким же, как авторы этого репозитория? Сколько за свою непродолжительную карьеру занимаюсь программированием, такое встречаю редко. Обычно все пишут не так красиво и технически правильно. Даже не знаю, как с этим работать после кучи непрофессионального кода.https://bitbucket.org/derekwilson/recommender-android/src/
>>1087998Недостаточно фабрик, я бы еще добавил.
>>1087983Архитектуры нет, тестов нет, ci нет, единообразия стиля нет, куча закоментированного кода
>>1087981У меня просто в ~/Android/sdk лежит, никаких проблем нет.> куда его можно засунуть на общем билд сервереВ Docker-контейнер.
>>1086027Ну как ты там, решил проблему?
>>1088105После тщетных попыток, вернулся к прежнему решению, и перенес часть кода из метода инициализации плеера в метод, где происходит запрос данных.
Какое приложение можно создать для курсовой работы? Сказали еще юзать технологии. Где подводные?
>>1088343Очевидный Claris Organizer очевиден.
>>1088343> Где подводные? Под водой.
>>1087689Советую посмотреть бесплатный курс на udemy, там нормально подходят к всей хуйне и не дрочат тебя лейаутами пол месяца
У меня такой вопрос, анон. Имеется список картинок, которые загружаются с сервера. Написал для его отображения и отправки запроса класс, наследуемый от Fragment, поскольку использую NavigationDrawerMenu. Собственно с сервера можно получить сортировку по времени загрузки, количеству просмотров и лайкнутые картинки. Переход по этим пунктам будет осуществляться с помощью того самого навигационного меню. Теперь вопрос, как мне обойтись без копипасты и не копировать один и тот же код, ведь нужно всего лишь заменить в запросе одну строчку? Возможно ли передавать интент в виде тех самых строк, при нажатии пункта меню?
>>1088678Возможно все! Все в твоих руках!
Сап, анон. Актуально ли вкатываться в Android development в конце 2k17 или вообще в 20!8? Недавно читал статьи в духе "Native apps are doomed, long live Progressive Web Apps". Не хотелось бы потратить время на Java/Kotlin, Android SDK и сторонние фреймворки зря.
Попробовал приложение после нексуса вкатить на виртуалку с мелким экраном, ну и с моими руками конечно ничего не влезает. Есть какой-нибудь трюк, чтобы скрывать элементы, если высота экрана слишком маленькая (в лендскейпе, например)? C ловлей смены размера все очевидно, а можно на чистом XML скрыть? без дублирования лейаутов и скроллвью, понятное дело
>>1088786Не доклеил пики - нужно в landscape оставить только good button.
>>1088788Сделай еще один макет для портретной ориентации.
>>1088793Там вместо бутона десяток элементов с прописанными лейаутами. Их тогда либо выносить во фрейм, либо в инклуд, иначе все это чревато мучениями с поддержкой; в любом случае, тут уже проще будет кодом.Тут больше академический интерес, может, есть какой-нибудь andoid:minScreenHeightToDisplay.
>>1088797Короче нагуглил-таки непортабельный изврат, который все равно использует альтернативные файлыhttps://stackoverflow.com/questions/24187867/hiding-views-declaratively-based-on-screen-size-in-android
>>1088691Кстати, сработало. Действительно возможно все.
>>1088868Как минимум два пункта пиздеж.По факту зависит от целей приложения. На ведре так небось еще и то что лагать не должно лагать будет.
>>1088731>>1088868Java всё, Android всё. А теперь съеби в js тред.
>>1088868Ну да... А ещё обычные игры исчезнуть, ведь в браузере тоже есть игры и их даже скачивать не надо.
>>1088868Все кроме двух пунктов - пиздеж и оправдания неосиляторов и аутистов.Уже блеять сколько их было, фонегапы ионы и подобной хуйеты, но js долбоебы досихпор не могут остановиться думать, что их параша лучше всего остального и клепают продукты однодневки, которые через год два уже поддерживать никто не хочет.
>>1079780Работаю дома, офф. стажа меньше года. До этого месяцев 6 работал в офисе.Спрашивай свои ответы
>>1088868лол блэт, как веб вью не назови, он им и останется.
>>1089096Веб вью это пол беды, хуевое сообщество у того же реакта, куда более серьезная проблема.
>>1089091Где заказы начал брать / сейчас берешь?Сколько выходит в месяц?
>>1089122Просто на удаленке сижу. Решил работу поменять и через hh отбирал только удаленку. Через пару собеседований нашел компанию в дс.
Сап, ребят, вкатываюсь к вам за помощью по такому вопросу: надо в приложухе сделать пуши из firebase, которые бы нормально приходили и когда приложуха открыта, и когда закрыта, и когда вообще выкинута из фона. Раньше для этого можно было юзать классы-наследники от WakefulBroadcastReceiver и FirebaseMessagingService. Вернее, даже первым можно было обойтись. Но траблы начались недавно, когда таргетСДК стал ставить 26-27, то во-первых WakefulBroadcastReceiver стал deprecated (по той причине, что фоновые сервисы убираются потихоньку, хотя имхо это лютая ошибка гугла делать было такую херню, ну да ладно), а во-вторых когда приложуха выкинута из фона, то пуши приходят, и при этом во-первых отрабатывает onReceive в WakefulBroadcastReceiver, где я показываю свой notification, а во-вторых показывается ЕЩЕ ОДИН notification, генерируемый автоматом , на который я влиять не могу и который я не вызываю, который по факту дублирует мой собственный. И эта херня только на 8 андроиде и только, когда приложение убито из фона. Сам я эту тему гуглил, но на Stackoverflow пока никто не ебет, что надо делать, в инете вменяемых примеров нет. Что-то нашел, что для фоновых сервисов надо теперь юзать JobService, но опять же, адекватных примеров для JobService+Firebase нет вообще от слова ВООБЩЕ. Такая беда, аноны.Кто-то из опытных девелоперов с таким сталкивался? Как разрулили? С меня как всегда два чаю
>>1089804ну же, неужели никто пуши через firebase в приложениях в последнее время не делал и не проверял на 8 андроиде?
>>1089823Делал, проверял, всё работает.
>>1089835не верю. Выставь таргет сдк 27 в проекте и перепроверь
>>1089837Выставил тебе за щеку.
>>1089839Твое место в /b или /po - вали туда. Тут другое общение и более умные обсуждения, не для тебя
Анон, как стать таким же, как авторы Телеграма? Сколько за свою непродолжительную карьеру занимаюсь программированием, такое встречаю редко. Обычно все пишут не так красиво и технически правильно. Даже не знаю, как с этим работать после кучи непрофессионального кода.https://github.com/DrKLO/Telegram/blob/master/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java
>>1089894я очень надеюсь, что это сарказм или тралинг. Потому что за такие моменты:> pinnedMessageTextView.setTextSize(14);>Theme.getColor(Theme.key_chat_topPanelMessage)>LocaleController.getString("стринга, не вынесенная в отдельный класс с прочими ключами или хотя бы в глобальную переменную"> антипаттерн проектирования, так как "god object"я бы отбивал нахуй руки из-за нечитаемости кода и невероятно сложной отладки.То что телеграм - большая и используемая программа - не значит, что там нет говнокода и быдло кода. И пример, что ты кинул - наиболее наглядный.
>>1089894а если хочешь научиться писать по-настоящему читабельный и чистый код, то во-первых, нужен опыть хотя бы года 2, чтоб знать досконально, что и как связано, а во-вторых, не ориентироваться на отечественных разрабов, как минимум.
>>1089904>>1089906Земля тебе пухом
>>1089894ебать, вот это говнокод. за такое нужно сразу руки отрубать нахуй, чтобы они больше не прикасались к клавиатуре
>>1089917ты не считаешь, что там жуткий говнокод?
Вкатился в андроид 2 месяца назад, дали проект сложный в котором большой стэк технологий, за выходные надо все понять и продолжить ебашить хороший читабельный чистый кодПосоветуйте чтива по:- mvp, design patterns (в теории знаю что такое мвп, юзать не умею, знаю синлгтон, билдер)- web sockets - Dependency injection, dagger- butterknife- rxJava- Room, Dao (в понедельник надо бд спроектировать, а я ОРМ не юзал раньше)Нужны топовые гайды, которые быстро введут меня в курс дела.Также посоветуйте годные ресурсы чтобы держать себя в курсе в ИТ сфере, новостные сайты, каналы в соц сетях етц.
>>1089804Шли data и не убдет автосгенерированного нотификейшона.
>>1090090>mvpСемпл от Антониа Левиа и от гугла в clean architecture>web socketЧо ты там про них учить хочешь? Это костыль для веба который не умеет в обычные сокеты, по сути открывается обычное соединение, которое не разрывается очень долго и постоянно гоняются туда-сюда сигналы что бы проверить что ты на месте. В okhttp из короробки есть.>DaggerПросто что бы тебе легче управлять зависимостями было, самое узкое место - говняные классы ведра, где нельзя вцепится в конструктор. 3 статьи на habr'e от xoxol_89 мне показались самым лучшим вариантом.>butterknifeПросто тулза что бы не ебашить десяток findViewById, генерирует классы в компайл тайме, но в рантайме создаются через рефлексию, но это не важно. Ты декларативно записываешь свои вьюхи/листенеры вьюх в поля класса, а потом вызывааешь bind/unbind>rxJavaНяшная штука, но многие пользубтся не правильно, лучше всего презенташки от Wharton'а. Ну и вообще понимания смысла реактивности.>RoomЭто не ОРМ, странно что впилили в проект, только недавно стабильной стала. Лично мне показалась менее удобной чем StorIO, позволяется тебе декларативно задать DAO для работы с базой.Просто берешь гугл/медиум/забр и смотришь статьи там, ну еще семплы на гитхабе.
Банжур, антуаны. С помощью чего лучше построить график на андройде, допустим битка за месяц ?
Аноны, нужен совет. Увлекаюсь мобильной разработкой, учусь в забугорном ВУЗе. В будущем хочу быть моб. девелопером. Есть возможность пройти практику в солидном стартапе (во всяком случае выглядит солидно), но там нет ничего связанного с Android, только Backend на java спринге. Стоит ли идти туда или лучше на галеру где дадут соло проекты / в тиме 4< человек ковырять?
>>1090230С помощью рисования на холсте.
>>1089894Кстати да, жуткий говнокод. Тем не менее аппа работает стабильно.Как разработчики/разработчик справляются с этим? Как тестируют?
Имеет ли смысл Android dev'у вдобавок изучать Machine Learning / Data Science? Или этим все равно в тиме занимаются два разных человека?
>>1090547Как правильно, нет, ибо люди этим действительно разные занимаются.И ML на мобильных устройствах а ближайшее время не предвидется. Почти все приложения (Prisma, vl, аппы гугла, микрософта и Яндекса) шлют данные на сервер, который уже там с ними что-то делает.
пузырь не лопнул еще?
Парни, есть .scetch файл с дизайном приложения. Сам сижу на виндоус. Есть вариант как-то напрямую этот файл импортировать в студию и получить всё готовое? или стоит ручками всё вытягивать и заново создавать десигн?
>>1079097 (OP)Проблема такова: Нужно прикрутить bassboost и virtualizer к проигрывателю. Я сделал это, но не уверен, работает ли. И ещё одна вещь: хотел сделать так, чтобы по нажатию одного выключателя - другой отключался. Графически так и выходит, но вот музыка продолжает играть. https://pastebin.com/4duu99BP
>>1091078Тебе надо sketch прочитать, или ты хочешь что бы тебе на основе скетча весь UI сделался автоматом?Для первого есть Zepplin/Figma, для второго тебя собственно наняли.
Как правильно составить json Post запрос для laravel? Куда писать oayth/token? Есть только голый урл сайта, кончающийся .ru. Запутался пздц
>>1091250точнее .com. Вот пример кода, который бы работал не с ларавелом. Я попытался что-то сделать, но ответ не получаю. https://pastebin.com/cAKJdNCA
>>1091250Причем здесь фреймворк, причем здесь домен? Ты понимаешь что ты делаешь? Токены обычно пихаются в хедеры, смотри как доабвить хедер к запросу. Боди пишется через стрим, опять же примеров полно.
>>1091251> HttpsURLConnection > JSONObject Выкинь это нахуй и используй OkHttp.> Куда писать oayth/token?В Authorization Header.
>>1091135Вообще никаких идей нет?
>>1091423Используй параметрический полиморфизм
>>1091442Это шутка такая или куда? Задание для даунов, а ты заставляешь читать лишнего. Полиморфизм - могу, умею, практикую. Но в данном случае что нужно сделать, применяя полиморфизм - неясно. Не мог бы ли ты не так абстрактно сформулировать совет свой?
>>1091135Что я вижу. Неужели это RELATIVE LAYOUT?
>>1091266Тут как минимум половина не понимает что они делают.
>>1091590Есть такое, и как же прекрасно, что на это абсолютно поебать и к проблеме это не имеет никакого отношения
>>1091598Нахуй иди, говнокодер ёбаный.
>>1091601Что-то в голос прорвало посмеяться с твоей логики: не разобравшись толком - скорее показать, что ты хоть что-то выучил за свою жизнь, ведь без тебя бы никто и никогда не узнал настолько гениальной вещи. Иди учи школьников, гений домашний
пацаны, как выучить kotlin правильно? java не знаю. укажите порядок, и если уж нужно сначала java, то книги.английские ок, лишь бы можно было достать в бумаге.
>>1090239пацаны, как выучить kotlin правильно? java не знаю. укажите порядок, и если уж нужно сначала java, то книги.английские ок, лишь бы можно было достать в бумаге.
>>10916631) Трей Нэш, «C# 2010. Ускоренный курс для профессионалов»2) Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му, «Язык программирования C++»3) И только потом уже Benjamin Evans, David Flanagan, «Java in a Nutshell» вроде бы у неё есть перевод.>kotlin Он не выйдет за пределы своей платформы, эти знания бесценны в том смысле, что их ценность —
>>1089894
>>1091738Обосрался
>>1086709минимум 8 гигов оперативки, остальное не так важно
>>1087545Разве для этого не надо проживать в сша?
>>1091890Там отдельно для сша (50к мест) и для EMEA (60к мест) (Europe, the Middle East and Africa) включая рашку.
Как лечить эту хуйню? Студию переустанавливал, джаву переустанавливал, этот же проект, слитый с гитхаба, собирается на другом компе.
>>1092048Короче что-то с .gradle/caches было
Анон,как загрузить изображение с карты в объект (есть либа для обработки ) , готовые решения предлагают сразу грузить в Layout
>>1092048>>1092165Ну нихуя ж себе, тебе об этом даже написали в студии.
>>1091590а что не так с RELATIVE LAYOUT ?
>>1092324Уже не модно, наверное. мимо
Можно ли на ведройде работать фрилансером? Посмотриел количество вакансий на апворке 4к, в 8 раз больше чем на рельсах. Правда половина из них джс дрисня.
>>1092363та ну хз. ConstraintLayout как был дновым, нелогичным и баганым изначально, таким пока и остается. Так что, в зависимости от ситуации, LinearLayout или RelativeLаyout юзать вполне норм.
>>1092491а какие там баги?
Sup, /pr/. Новенький в итт. Учусь на курсе на разработчика приложений андроид. Куча вопросов. Буду потихоньку задавать тут. Благодарю за терпение и ответы. Почему при поиски кнопки через id нужно указывать это так:button1 = (Button). Для чего этот button в скобках?
>>1093898Потому что у джавы статическая строгая типизация.
>>1093898Параметрический полиморфизм.
>>1093898Лучше с Мейера и джавы начать, а потом уже в Андроид лезть, многие концепции не поймёшь, будет очень тяжело (сам через такую хуйню прошёл)
>>1093898Сейчас бы учиться мобильной разработке, не зная что такое приведение типов.
>>1094029Сейчас бы срать здесь ради ничего.>>1093898Когда сможешь на это ответить, попытайся в андройд.Типы данных. (Примитивные и ссылочные)Циклы(for/while/for each)Устройство памяти в Java(Stack, Heap). Так же важно понимать, как и на каком уровне работает Garbarage collectorМетоды — возвращаемые/не возвращаемыеМассивы и коллекции, а так же операции с ними (Сортировки)ООП (Полиморфизм, Наследование, Инкапсуляция, Абстракция)Comparator и Comparable (для сортировки объектов)Threads и Runnable, для понимания, как устроена многопоточность в Java.Exceptions (try/catch/finnaly) — для «отлова» ошибокGenerics (Обобщенные типы)
>>1079097 (OP)А что за маскот у тредов? Откуда взялся? Имя? Фейсбук?
>>1094084
>>1093898погоди, так это раньше было, в последних версия SDK оно уже не нужно, так как findViewById уже метод с дженериком.Но отвечая на твой вопрос - это явное приведение типов, по сути - самая база джавы, без осознания этого дальше особо не уйдешь
>>1079097 (OP)Хочу получить рут на свое ведро, вот у меня установлен уже supersu это на рутирование никак не влияет?
>>1093898Вспомнил того анона с тегами и вебмками.
>>1094142Чтобы не полить тебя тонной говна, скажу лишь что пора бы научиться гуглить такие темы.
>>1094337Как ты его ловко говном облил
Вкатился на хуевую контору, сижу на поддержке ссаного проекта, фиксаю 1-2 бага в неделю, остальное время пинаю пистон т.к. проектов нету. Вкатился джуном.Завтра иду на большую контору на собеседование, позиция - traineeНе проебусь ли я, если пойду туда? Просто чувствую что деградирую аки ебаная шавка.
>>1094347А сколько платят здесь и там?
>>1094349Здесь 500, там 300 в 600 после 3 месяцев.Алсо, посоветуйте что повторить по джаве и андроиду?
>>1094350Решился все-таки? А что ты знаешь?
>>1094386Ну на собеседование точно схожу а там видно будет.Знаю всего по-немношку.
Призываю вангу в тред. Что с поиском?
>>1094422Он не работает.Я не знаю, что за хуйня у тебя на пике. Научись уже пользоваться Грейдлом.
>>1094446> Он не работает.Я вижу. В 2.3 работал, а тут нет. Через сайт Maven всё ищется.
Привет всем, такой вопрос, не совсем по теме программирования под андроид, но из этой сферы. В общем, стал работать в конторе, получаю порядка 800 в месяц, работаю уже полтора года там. Работаю, как я считаю, хорошо, в дедлайны вкладываюсь и т. д. Но у меня подозрения, что зп как для этой сферы маловата, слышал, что платить должны в таких случаях около 2к. Подскажите, тут уже я сильно губу раскатал или я прав? Валить надо из конторы из-за низкой зп или оставаться, мол 800 тоже норм?Город указывать не буду, считайте обычный СНГ-город на 600к людей.
>>1094547>считайте обычный СНГ-город на 600к людей.Мне бы в своем 900к найти работу на джуна.
>>1094547Ну если ты чувствуешь себя на 2к, то да, но возможно у тебя задач день на 3 часа пинания хуев. Сколько другие чуваки получают у тебя в конторе?
>>1094577у остальных - также или меньше. Но вопрос не в остальных. А в том, сколько в среднем получают реально в этой сфере и не мало ли 800 баксов.>но возможно у тебя задач день на 3 часа пинания хуевта нет, не замечал такого
>>1079097 (OP)Шалом, генацвале, пытаюсь прикрутить дата биндинг. Судя по гайдам, что я нашел, нужно добавить по одной строке в градл модуля и приложения. Это я сделал. Дальше несу тег <data> в разметку layout'а, но компайлер в упор не видит атрибутов name и type у тега variable. Как мне заставить эту суку работать?
>>1094598<layout>__<data>__</data>__<SuperGovnoView>__</SuperGovnoView></layout>
>>1094603Да, действительно. Спасибо
Анон, как в своем приложении сделать чтобы его шапка в листе всех запущенных приложений тоже меняла цвет, как на скрине? Программно меняю цвет тулбара и статус бара, с ними всё окей, но списку на все эти цвета до пизды, мое приложение в нём остается белым.
>>1095111Так что у тебя в стилях прописано? Вот там и смотри.
Теперь за жабой в калькуляторе всё проверять?
>>1096028Из-за ошибки округления и порядка операций, хочешь супер-пупер точности используй strictfp или BigDecimal.
>>1096028Пицценос, прежде чем за джаву браться, почитай как компьютер дроби хранит в памяти.
>>1096089А ассемблер я не должен знать? Почему у всех нормальное округление, а жаба проёбывается на 8 знаков.
>>1096109> А ассемблер я не должен знать?Должен. Только не ассемблер, а язык ассемблера. И байт-код, конечно же. Иначе так и останешься пицценосом, которого унижает собственный код.
>>1079097 (OP)Посоны, а что вы разрабатываете? Большинство людей на телефоне ничего, кроме браузера, соцсетей и читалок не держат, а если им что-то нужно, то они гуглят в браузере, а не в плэй маркете.Других способов использования ведра я не вижу, просветите меня плес.
>>1096132> Посоны, а что вы разрабатываете? > браузера, соцсетей и читалокВот их и разрабатываем.
>>1096115Вообще, если человек не может реализовать монаду на CMOS технологии, то ему нечего делать в программировании.
>>1096132Стартапы, соц. сети, бизнесс апки, мессенджеры етц.
>>1096140>>1096295Но все, кроме нахуй не нужных стартапов на Андроиде, за вас уже создано. Да и не может так много людей делать настолько оригинальные продукты
>>1096322Они и не делают, их говно проваливается нахуй. Меня на фрилансе раз в месяц просят написать супер оригинальную соц сеть.Алсо, есть еще андроид тв, андроид часы, андроид машинки.
Проигрался с ListView и адаптером, почитал на глаз материал дизайн и поделал калькулятор. Применил обратную совместимость, покопался в классах андройда, почитал многопоточность, взял AsynsTask, взял рандомный API и через интернет распарсил данные. Показалось мало, создал едитТекст, нашел другой АПИ и начал делать так, чтобы при вводе текста андройд находил книгу например, и показывал мне ее с автором и т.д. При повороте экрана помещал объекты в Parceble, ну и с ним поигрался. Думаю сейчасс фрагментами покопаюсь, запилю напоминалку с RecycleView. А что дальше изучать? Алсо, пытался открыть исходный код проекта для бегиннера, но там так было запутано все, аж пиздец меня накрыл. Не могу собраться с мыслями, хочется и то и то взять сразу и быстрее я но нихуя не получается и путаюсь во всем.
>>1096323Тоесть вы фрилансите на лохов с ОРИГИНАЛЬНЫМИ ИДЕЯМИ, которые сразу же проваливаются? Ебать, сколько же таких лохов существует, если андроид разработчики актуальны. В моем манямирке, погромироаание существует только в вебе и Энтерпрайзе, и я хочу понять, существует ли оно за этими сферами. как я понял, на ведре и гейоси его нет
>>1096333Да один хуй что с вебом, на днях в руки попала индуская апка, суть: есть 2 апки, одна для доктора, вторая для пациентапациент может вызвать доктора на дом, у доктора приходят нотификейшены от клиентов, менеджмент вызовов и т.д.Фриланс для докторов корочеЧелик хотел редизайн и рефакторингКогда я начал тестить он мне написал что у них пиздец как сервера напряглись и он не понимает что происходит.Апке больше года, до 300 скачиваний
>>1096341>300 скачиванийЛол бля.
Если я сделал клон приложения могу ли я выложить его в аппстор без каких-либо профитов, просто в качестве портфолио? Исходники открыты тоже. Не пидорнут ли его и не заблочат ли мне акк?
Есть ли специальные библиотеки, которые позволяют распарсивать pdf или epub в приложении? Читалку хочу сделать.
>>1096600Про PDF обсуждалось в начале одного из прошлого треда, можешь почитать. В кратце: всё плохо.
>>1096330>ListView>AsyncTask>2k17проиграл чет
Пацаны, это ведь утечка, да? Я 5 раз повернул телефон и вижу пять инстансов активити. Плюс на эту хуйню триггернулся ликкенери и стриктмод. Но чё мне с этим делать. Чекнул либу эту, там вроде всё норм, вызываются гугловские методы для отписки. Чё делать дальше я хз.
>>1096623Короче не тот контекст юзал при инициализации либы.
Что будет, если я возьму опен соурсик, подкорректирую под себя и выложу в гугл сторе? Меня пидорашки пидорнут или нет?
>>1096654Пидорнут. И хорошо.
>>1096648Это частая хуйня, в прошивках от сосунга постоянно и даже в AOSP. Вообще странно что эти хуйни не вызывают getApplicationContext
>>1096618ну а что тогда актуально юзать сейчас?
>>1097081RecyclerViewRxJavaKotlin Coroutines
>>1097081асинкс таски вообще лучше забыть и выкинуть. Нужна многопоточность - thread в помощь. Запросы через связку retrofit+okhttp, там асинронность нормально соблюдается. Сверху потом приправляй Rxjava + mvp архитектурой. Если и с этим справишься - то dependency injection (dagger 2). Когда перечисленное закончишь и врубишься, то считай работа андроид девелопера тебе обеспечена
>>1097119> Нужна многопоточность - thread в помощь.))
>>1097165да, самого всегда забавляло, что в джаве треды и на дваче треды)))00)
>>1097172Тупая мелкобуква, причём тут двач. Давай, попробуй в ведре многопоточность через Thread реализуй, сразу по ебалу от тимлида схватишь.
>>1097105Корутины, кстати, просто щикарная вещь. Что мне не нравится в rxjava, это то, что нужно плодить кучу классов для промежуточных стримов, либо для того чтобы объединить несколько стримов в один и тд. А с корутинами просто херачишь код как раньше.
>>1097196ебать дибил, как там в 2011? Асинк таски - устаревшая хрень, без адекватной отмены задач, которые уже выполяются, без адекватных перехватов их же и т.д. Сами гугл признали, что асинк таск - неудачная замена тредам в андроиде, да почитай хотя бы англоязычные форумы об этом. То что ты упомянул тимлидов, которые юзают асинк таски - это лично твой манямирок. Во всех конторах, в которых я работал, либо с людьми из которых общаюсь - все чуть ли не сразу говорили джунам, что асинтаски - зло, вместо нах юзать треды. Очень много людей на собеседованиях из-за этого валилось, потому что дупля не давали, что такое тред из-за недостаточной грамотности в кодинге и лютого надроча на асинктаски после чтения русскоязычных форумов. Буквально недели 2 назад искали нового мида в компанию, выбирали из двух кандидатов, в итоге выбрали того, который использовал в определенных местах именно треды, вместо тех же тасков.Любой тимлид тебе по ебалу даст как раз за то, что ты эти таски заюзал. А если ты их еще делаешь для сетевых запросов, то тебя надо сжигать живьем имхо.В общем, ты обосрался, перекатывайся в пхп, там тебе будет проще
>>1097218И как ты тестировать эту лапшу будешь?
>>1097235Тупая мелкобуква продолжает прилюдно обсираться. > ебать дибил, как там в 2011? Асинк таски - устаревшая хрень, без адекватной отмены задач, которые уже выполяются, без адекватных перехватов их же и т.д. Где я говорил обратное, даун? > ты упомянул тимлидов, которые юзают асинк таски Пальцем покажи, где я такое писал. Долбоеб, сам придумал хуйню, сам стал её опровергать. > вместо нах юзать треды. Очень много людей на собеседованиях из-за этого валилось, потому что дупля не давали, что такое тред из-за недостаточной грамотности в кодинге и лютого надроча на асинктаски после чтения русскоязычных форумов.Давай, показывай, как ты Thread для асинхронных запросов на сервер используешь. Обоссым твой говнокод. > Любой тимлид тебе по ебалу даст как раз за то, что ты эти таски заюзал. А если ты их еще делаешь для сетевых запросов, то тебя надо сжигать живьем имхо.В общем, ты обосрался: сам придумал хуйню и приписал её мне. Представляю, какой ты код пишешь. В js-треде тебе были бы рады.
>>1097196Ну вообще-то, нет. От матерых тимлидов слышал как раз, что асинктаски очень нерекомендуемы для использования и Thread - единственный выход, если надо что-то сделать в отдельном потоке.Вот этот анон >>1097235 прав
>>1097119> mvp архитектуройОхуительные познания, кстати."Архитектура mvp" - это что-то уровня "новый-год мем КЕК" а может даже ниже.
>>1097237Так же как и обычный код? Корутинам можно задавать пул потоков на котором они будут исполняться. В случае андроида есть стандартный пул для выполнения корутин в гуи потоке - UI. Ну а дальше остаётся только как и с rxjava сделать провайдеры этих пулов и передавать в случае реального кода пул с бекграунд потоками, а в случае тестов UI пул.
>>1097245Ещё один пиздоглазый? Где я говорил, что AsyncTask нужно использовать?> Thread - единственный выход, если надо что-то сделать в отдельном потоке.Давай, показывай код, как ты Thread на ведре использовать будешь.
>>1097248Я не он, и вообще то что я сейчас покажу это очень хуёво, но всё же - https://github.com/DrKLO/Telegram/blob/dd679bd7d1713896272016d4e53c3b4ead744683/TMessagesProj/src/main/java/org/telegram/messenger/DispatchQueue.java
>>1097248чего ты агришься сразу? Вот ты пишешь:>Давай, попробуй в ведре многопоточность через Thread реализуй, сразу по ебалу от тимлида схватишь.намекая, что нужны асинктаски, так?>Давай, показывай код, как ты Thread на ведре использовать будешь.ты че, серьезно? Скажи, а ты точно программист? (new Thread(() -> { // 123 // 456 })).start();
>>1097255> намекая, что нужны асинктаски, так?Ты опять придумываешь за меня то, чего я не говорил. > ты че, серьезно? Скажи, а ты точно программист?> (new Thread(() -> {> // 123> // 456> })).start();Охуенно. И где тут синхронизация с главным потоком? Где возможность отменить асинхронную операцию? Где возможность использовать пул потоков? Где обработка смены конфигурации (например поворота)?Услышать, что асинктаски плохие - услышали, но вот понять, почему они плохие, и как сделать хорошо - не в курсах. Зпто перед другими ватывальщиками выебываются "коко асинктаски коко".
>>1097259ок, если не асинк таск и не тред, то что?>Охуенно. И где тут синхронизация с главным потоком?runOnUiThread> Где возможность отменить асинхронную операцию?interrupt>Где возможность использовать пул потоков? ExecutorService threadPool = Executors.newFixedThreadPool(8);>Где обработка смены конфигурации (например поворота)?тут уже уточняй задачу, вариантов решений подобного масса. Самый лучший - это, банально, отключить пересоздание экрана при повороте в манифест файле.>Услышать, что асинктаски плохие - услышали, но вот понять, почему они плохие, и как сделать хорошо - не в курсах. Зпто перед другими ватывальщиками выебываются "коко асинктаски коко".ты стал отвечать оскорблениями - оскорбления пошли тебе в ответ, хули ты ноешь теперь?
>>1097270> Самый лучший - это, банально, отключить пересоздание экрана при повороте в манифест файле.))
>>1097277если дизайн экрана не меняется (либо меняется минимально), то это и вправду лучший выход
>>1097286> имплаинг, что поворот - это единственно возможное изменение конфигурации
Конечно мда. Raw new Thread тоже ничем не лучше AsyncTask'a так как все те же проблемы. Родина дала им Executor'ы, Future'ы и это без бибилотек, но нет - хочу жрать говно.
InstantApp пробовал кто на вкус?
>>1097453Как земля.
Как найти угол между осью Y и горизонтом без учёта вращения вокруг других осей? Т.е. при использовании примера вот тут - https://developer.android.com/guide/topics/sensors/sensors_position.html берётся плоскость в 3D и при наклоне телефона значение уменьшается. Надо вот как тут - https://youtu.be/-Cy75fAkK4s . Как я понял, это какая-то математика с векторами, но я школу прогуливал, вообще не могу сообразить.
Как объединить поиск по картинкам Google со своим приложением? Допустим, google картинки распознало что-то и эти теги необходимо отобразить в программе
>>1097537А не охуел ли ты? Это монополия гугла.https://stackoverflow.com/questions/12238727/get-search-results-from-google-in-android-apphttps://developers.google.com/custom-search/json-api/v1/overview?refresh=1
>>1097525Считаешь собственные значения матрица поворотов, проводишь перпендикуляр к получившейся гиперплоскости, это оно и будет
Можно ли относительно быстро вкатиться, если есть джуно-уровень джавы и вроде не совсем дебил
>>1097644Относительно, что в джаве знаешь?Теория по андроиду не сложная но нужен опыт (хуярь погодные аппы на гитхаб)
>>1097646Погодные аппы уже не модно. Сейчас надо по крайней мере нахуярить соцсеть.
>>1097655С чатом и анимациями
>>1097656Анимации это какой то пиздец уровень?
>>1097664Это атрибут
>>1097665Не оче понятно.
>>1097667Ну типа кандидат должен уметь писать по 200 строчек кода в минуту, иметь 10 успешных аппок на маркете с 100к скачиваний ну и было бы неплохо уметь анимации делать
>>1097671хм, я вот умею анимации делать. На каждый экран аппы пихаю, например. Я успешен?
>>1097676Если будет такой же кандидат, который умеет все то же самое кроме анимаций то возьмут тебя, например.
Как лучше поступать с соединением SQLite:1. открыть соединение с БД один раз и пользоваться по необходимости2. открывать и закрывать непосредственно до и перед операцией DML?
>>1097694Перед каждым действием, когда нужна запись getWritableDb (для чтения - getReadable). Не закрывай, ведро само закроет когда грохнет твое приложение.
ОП, добавь в шапкуhttps://www.youtube.com/watch?v=GZIvyi_kO40&list=PL7AVKPxfsCp7lEWVKmNm_96XZeRc35OR5
Как можно заверифаить фингрпринт апк? Хочу быть уверенным, что апк-шка, скачанная не с гугл плей, не содержит изменений.
>>1098114CRC
>>1098115Проблема в том, что хз откуда узнать маркетовский для сравнения, ну или верный фингерпринт сертификата, которым подписано приложение.
>>1098198Из стореджа ключей?Скачать апк с гуглоплея и посмотреть фингепринт?
Ребятки, можете внятно пояснить - чем в андроид разработке отличаются архитектуры MVP и MVVM? Сам юзаю первую (та и почти вся наша контора тоже) , но появился один петушок, который уже всех заебал MVVM , так что уже самому стало интересно - есть ли какие-то плюсы в нем по сравнению с mvp?
>>1098293> архитектуры MVP и MVVMЭто не архитектуры, а презентационные паттерны.
>>1098296Архитектурный паттерн, маня. То есть архитектура.
>>1098242В том и дело, что с гуглплея не могу скачать (недоступно для моей страны). VPN не решил проблему, т.к. гугл подхватывает страну из аккаунта, ну или я где-то затупил.
>>1098297Маня, архитектура затрагивает всё приложение, а MVP/MVVM определяет только способ организации слоя, ответственного за отображения и взаимодействие с UI.
>>1098304та всем похуй, все это понимают именно как архитектуру. А это:>Это не архитектуры, а презентационные паттерны.нахуй никому не нужное задротство, не меняющее сути.По делу есть что сказать?
Сук, как же я проигрываю до слез. Ньюфаг попросил различия про архитектуру, набежал один маня, потом второй и начали сраться по ним. Продолжайте.
>>1098302apkpure?
>>10983041. Это архитектурные паттерны.2. Эти архитектуры затрагивают все приложение. Почему так.Model - набор классов отвечающих за данные, работу с сетью, получение и обработку, базы данных и тд, а не сраненькие POJO. И да, Model включает в себя так же и сраненькие POJO. View - собственно то что отображает твои данные.Presenter - класс, который является прослойкой между Model и View, обрабатывает инпут от пользователя и решает что с ним дальше делать. Получает данные от Model и решает как поступить с вьюхой на основе этих данных.Так о чем я? О том что это архитектурный паттерн, то есть полноценная архитектура.
>>1098438Так в этом и соль — при аплоде apk из apkpure какие гарантии того, что там нет изменений в коде?Идея в том, чтобы проверить, что нужное мне приложение я могу скачать из apkpure в том же виде, в каком оно в Google Play. Не понимаю, почему на странице приложения в гугл плей нет информации о фингерпринтах ключей разработчиков, которыми они подписывают распространяемые апк.Проблема для меня в том, что я не знаю, насколько можно доверять apkpure (возможно, страхи из прошлого, и идут ассоциации с васянскими сайтами "скочать апк безплатно", но тем не менее, просто интересно, можно ли как-то более-менее достоверно проверить апкшки не из Google Play).
>>1098445> Эти архитектуры затрагивают все приложениеТолько если в твоей приложении ничего кроме UI и нет.Собственно, MVP ничего и не говорит о том, как организовать M. Более того, MVP не говорит ни слова о том, что делать с бизнес-логикой. Именно поэтому это не архитектура. https://habrahabr.ru/company/mobileup/blog/335382/
>>1098478https://medium.com/@cervonefrancesco/model-view-presenter-android-guidelines-94970b430ddf
>>1098478Тебе любой источник скажет что MVP это архитектура.
>>1098507>>1098506Да ну?> MVP is not an architecture pattern: It is just a way to organize code in the presentation layerhttps://medium.com/@Miqubel/refactoring-to-mvp-b504a3774ffdhttps://antonioleiva.com/mvp-android/
Пиздец, как же вы заебали.>>1098293тут я просто попросил описать отличие этих двух архитектур, с минимальнми примерами в коде или, на крайний случай, словами. Нормально попросил, понятно описал, потому что юзаю в жизни мвп и стало интересно "а что если мввм?". Но нет же, сука, местные ебучие дегроды решили доебаться до слова АРХИТЕКТУРА, развести срач, а потом и вовсе начать кидать бесполезные ссылки, где в одном предложении встретятся слова mvp и architecture. Поистине, pr - сборище для даунов, которые минимально вкатились в программирование , в более-менее сложных вопросах нихуя не разбираются, но тем не менее, пытаются блеснуть своим "дохуя умным" нахуй никому не нужным мнением, даже если в вопросе вообще не разбираются, и вот этот вопрос это явно показал. Идите вы нахуй, короче. Теперь воспринимаю pr не более чем флудилку на околопрограммистские темы и место для тралинга недопрограммистов. Еще раз идите нахуй.
>>1098630> Пиздец, как же вы заебали.> тут я просто попросил описать отличие этих двух архитектурЭто не архитектуры.Ответ на твой вопрос гуглится в один запрос, но ты ждёшь, что всё за тебя разжуют и расскажут. А когда тебе указали на распространённую ошибку, о которой ты от гугла уже не узнаешь, ты начал брызгать слюной и обзывать всех школьниками. Так что да, с каким подходом к обучению, тебе нечего делать в этом треде. Да и в IT тоже.
>>1098640>гуглится в один запрос>ошибку, о которой ты от гугла уже не узнаешькек, ты обосрался в своих же паре предложений.>Это не архитектуры.а еще упорно пытаешься оставаться долбаебом. Почитай уже про мвп, вникни в суть, пример на гитхабе том же найди небольшой. Посмотри, что в проекте с mvp классы по своему рассортировываются по пакетам, имеют определенные названия. А это отчасти и есть архитектура проекта.>ты начал брызгать слюной и обзывать всех школьникамипотому что так оно и есть - тут в своем большинстве либо школьники, либо долбоны с комплексами школьников, вроде тебя. Ты даже до сих пор не понял, в чем заключался мой вопрос - там можно было проигнорировать даже слово архитектура, суть бы не поменялась. Но с твоими комплексами пришлось разводить срач даже тут.>Так что да, с каким подходом к обучению, тебе нечего делать в этом тредекек, с каким таким? Я задал вопрос - дауны развели срач не по теме практически, какой ту тподход, ты о чем вообще, маня.п.с. я достаточно знаю программирование, чтоб игнорить не шарящего школотрона с двачей вроде тебя, который мне заливает про архитектуру, не шаря в ней сам. Но вопрос насчет различий мвп с мввм был интересен, однако я видимо оказался слишком наивен, думая, что тут кто-то вообще поймет саму суть и уж тем более что-то внятное напишет.
>>1098678Ты как тот еврей из анекдота, который всё прощается, но никак не уходит.Съеби уже, раз собрался, гуру программирования. Мы ты тут все очень завидуем твоим скиллам просто, поэтому и бесимся.
>>1094024Согласен, мне рановато андроид, но увы не я решаю. Я на курсе от армии(я из израиля). Тут нам просто выдают материал, и идите учите сами. Поэтому темы выбирает учитель, а я учу, как могу. Увы, не все ответа находятся в гугл, или я неправильно подаю запрос. Но тут сидят довольно умные люди, возможно кто и поможет.
>>1093931>>1093943>>1094074>>1094137>>1094029Спасибо за ответы. Всё прогуглю. Ответил тут анону выше, но напишу еще раз, если интересно. Я получил курс от армии (не рашка). Тут нас обучали джаве пару месяцев (1 урок в неделю, что на мой взгляд маловато). Потом сразу перевели на андроид. Дали пока задание: написать калькулятор через фрагменты. Сижу, пытаюсь понять что и как делать, но особо подвижек нет. Знаю, что отсутствует база знаний по джаве, но у меня почти нет времени возвращаться назад, пока не сделаю калькулятор. Поэтому пытаюсь выгуглить\спросить что могу, чтобы потихоньку начать понимать суть вопроса.
Метод @Override стал deprecated. Как вернуть как было? Гугл не помог. Облазил стак оверфлоу, но не нашёл ничего. Заранее благодарю.
>>1098764> Метод @Override Это не метод, а аннотация перед методом. Название метода ты не написал.
>>1098764>>1098784Прошу прощения. Сама аннотация deprecated. Уже нашёл решение. Спасибо, в любом случае.https://stackoverflow.com/questions/45973987/override-in-all-methods-is-decripted-in-new-project-created-in-android
>>1098447гарантий никаких, но я проверил пару файлов когда-то - совпало.ещё рекомендую yalpstore, там можно качать через токены от чужих аккаунтов.
народ, подскажите ньюфагу, как реализовать рисование на экране пальцем? точнее, возможность рисования в определенной области экрана. Нужно рисование простейших черт, по принципу как работает кисть в пейнте. Ну нажал палец, ведешь по экрану рисуется линия, отпустил перестала.
>>1099353Ккастомна вьюха и TouchListener, а дальше у вьюхи на канвасе раз-раз.https://code.tutsplus.com/tutorials/android-sdk-create-a-drawing-app-touch-interaction--mobile-19202
Суп, ведро. Бомж в треде. У меня максимально всратая пека, она с трудом и в конвульсиях запускает Андроид студио, к тому же, если добавить к этому то, что там все СЛОЖНА, то все желание что-то пилить и учиться в конечном итоге пропадает. Но, у меня есть ведро которое мощнее пеки, и я просто хочу пилить на него свои программы, и не важно как и на каком языке, главное чтобы не в сраном Андроид студио. Что посоветуете? Естественно, нужно такое, чтобы потянул мой калькулятор, и чтобы можно было по usb запускать на ведре, либо сразу делать апк и скидывать на него.
>>1099596Пиши в любом текстовом редакторе, собирай и деплой грейдлом из консоли.
>>1099596>>1099615еще есть такая замечательная вещь, как jenkins, но имхо, там без бубна и двух литров не разобраться. Но если ты усидчивый, то можешь попробовать погуглить и пошерстить инфу в эту сторону. Вкратце - код пишешь у себя , заливаешь на битбакет, а дженкинс из определенной ветки все достанет, скомпилит и разошлет кому хочешь.
>>1099659Ты ебанутый?
>>1099615> собирай и деплой грейдлом из консоли.Вот тут по-подробней. Есть какой-то гайд? Загуглил грейдл, нихуя не понятно.>>1099659> пердолингНет, пердолинг я не люблю.
>>1099825./gradlew installDebug
>>1099733погуглил бы сначала, что это и с чем едят. А потом бы агрился уже, ну. А вообще не знаешь - лучше промолчал бы , школьник.
>>1099733кек, школьник зашел на борду, отличную от /ро/ или /b/, увидел какое-то сложное незнакомое слово и по старой привычке вскукарекнул, не подумав даже вникнуть минимально в суть. Классический двач, че. Однако уебывай назад в /po, недоразвитый
>>1099851Но он же ебанутый.И ты ебанутый. Вы тут все ебанутые.
На некоторых устройствах перестает запускаться приложение. Не стартует даже контент провайдер. После перезагрузки устройства начинает некоторое время работать, потом снова идет по пизде. Доступа к проблемных устройствам нету. На тестовых устройствах повторить не получается. Какие есть варианты найти проблему, кроме поиска других тестовых устройств?
>>1100406Crashlytics?
Бамп
Есть кроссплатформенное ядро приложения.И есть логи.Какой способ лучше, практичнее и менее пердольный для ограничения логов (для релизной версии приложения) в этом ядре, учитывая регулярный обмаз тестами?- Интерфейс уровня Debuggable с методом setDebuggable(boolean isDebuggable) и проверкой флажка перед выдачей лога, который реализуют логгируемые классы?- ProGuard (им вообще реально убрать логи, скажем, в десктопном коде, в котором нет андроидных костылей?)?
>>1101401Можно передавать экземпляр конфигурации через все приложение. Никаких неявных зависимостей через статические поля или синглтоны. Дополнительные плюшки в виде возможности передать еще всякое. Никакой магии уровня ProGuard'a. И все это с тестируемостью.
>>1101401Напрямую зависит от того, что ты подразумеваешь под этим:> Есть кроссплатформенное ядро приложения.
>>1101428Что-то вроде того, как в libgdx, например. Java-модуль, который должен быть максимально независимым от того, запускается приложение на пеке, или на мобилках.
Как делается бегущая полоса загрузки как, например вверху страницы в мобильной опере? Сделал прогрессбаром, но там отступы сверху и снизу от полосы остаются. Никак не могу убрать.
>>1101610Рисуй drawable на канвасе
>>1079097 (OP)>Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17 мая поддерживается официально.Не был тут пол-года.Котел уже победил? Все упертые жаваны уже под шконкой?
Как настроить databinding для list view или recycler view? Я создал шаблон-лэйаут для элемента list/recycler view, там в xml настраиваю биндинг для отдельного элемента. Что теперь писать в activity_main.java?вот есть у меня recycler view с id recViewКак теперь мне заставить его схавать коллекцию элементов и отображать каждый ее элемент в кастомном лэйауте?
>>1082521>>1102211У них стадия отрицания.
>>1102211Конечно, сразу же все топовые компании перейдут писать под котлин. Манямирок привет.
Обращаюсь к состоявшимся Android-разработчикам.Правда ли что большая часть времени уходит на верску, чтобы приложение одинаково красиво смотрелась и на последнем Нексусе, и на китайской свистелке за $100?И вопрос по поводу карьерной лестницы. Представим walkthrough мобильного разработчика. В начале пути это стажер/джун, а кто на самом верху, к чему нужно стремиться?
>>1102439Неправда.
>>1102429Некоторые уже перешли. И будет переходить всё больше и больше.На iOS кстати так же было — сначала он 3 года назад появился и был нахуй никому не нужен. Потом на него переписали линкедин. Твиттер. Кучу самых популярных либ. То у мамонтов, которые писали на Objective-C (некоторые начали на нём писать 20-30 лет назад), тоже началось отрицание. Сейчас и белые люди, и ваффиянский тырпрайз перешёл или переходит вовсю на Свифт. Родилось поколение разработчиков, которое не знает Objective-C. И так далее.>>1102439>В начале пути это стажер/джун, а кто на самом верху, к чему нужно стремиться?Если ты постоянно учишь новое, радеешь за чистый-чистый код, помогаешь всем коллегам — то очевидно твою жопу рады будут продать за дорого, бросая на самые трудные вещи. И платить соответственно будут прилично.Если тебе больше нравятся организационные моменты, собеседования, умение найти подход к каждому разработчику — станешь лидом мобильной платформы на своей галере.
>>1102466>сначала он 3 года назад появилсяswift т.е.
>>1102466>То у мамонтов, которые писали на Objective-C (некоторые начали на нём писать 20-30 лет назад), тоже началось отрицание. Сейчас и белые люди, и ваффиянский тырпрайз перешёл или переходит вовсю на Свифт. Родилось поколение разработчиков, которое не знает Objective-C. И так далее.Не знаю, что там свифт, я в живую подходил к одногруппнику, который работает в компании, и он мне говорил, что свифт такое себе, что-то там про несовместимость сказал и в конце добавил, что нормальные компании пилит Objective-C. У него стаж третий год и думаю вряд ли он будет пиздеть. Так что сори, тырпрайз.
>>1102488Ты просто пидораха, которая дальше своего носа не видит.
>>1102490>Ты просто пидораха,Мы сидим на двощах и верить какому-то левому пидору - первая необходимость.
>>1102488Возможно. Просто у меня круг общения несколько шире, чем пара одногруппников. А именно — весь цвет и тырпрайз, и стартап-разработки Пидарахии, Усраины (где пилится куча всего для первого мира) и т.д.Несовместимость — решат в след мажорном релизе. А пока — похуй на неё. Эппл убил Обжси разработку. Всё. О чём можно говорить дальше.
>>1102211Among Android developers using either Java or Kotlin – and not other languages via Android NDK – 94.9 per cent used Java in September 2016 and 5.1 per cent used Kotlin.A year later, the ratio has shifted to 85.7 per cent Java and 14.3 per cent Kotlin, a fairly sizable change."Since Google blessed Kotlin as an acceptable language on Android, which happened in May at Google I/O, Kotlin use has just exploded, " said Paul Kopacki, veep of marketing at Realm, in a phone interview with The Register. "We think by the end of next year, Kotlin will have eclipsed Java for Android apps."According to Realm, 20 per cent of Android apps built with Java prior to Google I/O are being rewritten in Kotlin.Ну сам смотри, по мне так это охуеть какой рост, учитывая что 15-20% от всего кода, включая уже написанный тоннами джава-код.
Я чёт не понял, в RecyclerView onItemClickListener не завезли?
>>1102528Оверрайдни onClick() в адаптере
>>1102550очень удобно. а если я хочу в этом onclick'е открывать новую активити с резалтом, то мне еще в конструктор адаптера закидывать ссылку на main activity?
>>1102556Колбеки
>>1102556КолбекиЛибо если ты ретард то можешь у адаптера написать публичные методы и их юзать.
>>1102556Зачем ссылки? Адаптер знает всю хуйню про элементы которые в нем размещены. Вся хуйня из элемента по которому кликнули пакуется адаптером в интент и отдается активити которая ее отображает/делает с ней все что нужно.
Тест
>>1102550Во вьюхолдере.
>>1102556У тебя ссылка на кликнутую вьюху в onClick(View v), v.getContext().Сечешь? Но в адаптере логику клика лучше не держать. Делай умные вьюхолдеры.
>>1102508ВРЁТИ
>>1102557>>1102558я не джава, я из соседнего лагеря. что вы под коллбэками имеете в виду? отправлять в конструктор VH/adapter'а делегат/указатель на функцию? или это у вас так называются обработчики событий типа onClick()?>>1102664>У тебя ссылка на кликнутую вьюху в onClick(View v), v.getContext().Сечешь? не секу. что мне дает эта информация? типа можно по родителям добраться до активити? >Делай умные вьюхолдеры.это как гуглить?
Почему в некоторых мануалах nested class ViewHolder делают static, а в некоторых нет?
>>1102872Смысла делать их nested всё равно нет, неважно static или нет.Если ты их так от всех кроме адаптера инкапсулировать пытаешься, то значит у тебя в них вообще ничего нет, кроме вьюх. Гугли sad ViewHolder.
>>1102856От андройд треда - одно название. Хуй кто тебе скажет что-нибудь, здесь предпочитают сраться по паттернам МВПи и посылать нахуй ньюфагов.Но это серьезно детские вопросы, погугли, собери все в кулак и применяй.
>>1102923да я беситься начинаю, когда гуглю. смотрю видосы у индусов, как они в конструктор viewholder'а через адаптер передают контекст активити И, сука, список объектов для отображения. и у этого 95% лайков, как будто это, блять, национальная идея у андроидов - делать всё через жопу. я отчаянно надеюсь, что это не так, и это просто индусы хуйню пишут, но блять, на 15000 просмотров 7 дизлайков. похоже всех такое устраивает
>>1102927Только дебил учатся по видосиками на ютюбе.Что-то хорошее там может быть только если доклады с конференций смотреть, да и то не все. Но там про такие ньюфажные темы не говорят.
>>1102979я бы с радостью читал бы официальную документацию по настройке RecyclerView или DataBinding для него, вот только про onClick ни там ни там нихуя не написано. и на сайтах различных тоже нихуя, либо говно какое то. ютуб для меня был последней надеждой, но и там какие то индусы охуенные костыли пихают
>>1102988Ссылки в шапке для кого? https://guides.codepath.com/android/Using-the-RecyclerView
>>1103018это всё круто, конечно, но мне нужно с клика стартовать активити с результатом. как мне модифицировать пример обработчика в мануале, чтобы я мог это сделать?
>>1102856>это как гуглить?Берешь вьюхолдер и реализуешь всю логину отображения/обработки кликов внутри, а не в адаптере.Во вьюхолдер в onBindViewHolder просто сеттишь данные в свой вьюхолдер типо viewholder.setData(dataset.get(pos)).
>>1102856>не секу. что мне дает эта информация? типа можно по родителям добраться до активити? Ясно. Ты просто тупой.Context имеет метод startActivity(даже не смотря на то что активити наследуется от контекста и то что все вьюхи в большинстве своем имеют контекст активити в котором созданы). Теперь сечешь?
>>1103070Правильно, нахуй архитектуру. Ебашь всю логику в ViewHolder.
>>1103083Лол, о какой архитектуре ты говоришь, если долбоеб не может активити из клика стартануть. Можно и для вьюхолдеров ебануть всю связку MVP/MVVM и ещё чего.Но этот долбоеб же не осилит.
лол , как же я проигрываю с ДОЛБАЕБОВ, которые не в состоянии написать блядь банальный интерфейс с одним методом OnRecyclerItemClick , передать этот интерфейс в конструктор адаптера и в нем уже при нажатии на весь итем вызывать метод этого интерфейса. При этом вся обработка нажатия будет уже в активити\фрагменте, а адаптер отвечает лишь за отображение данных (что соответствует определению паттерна АДАПТЕР). Но нет, школоло-пиздюки и макаки-первокурсники лезут даже с такими элементарными вопросами сюда. Сириузли, как вы дальше собираетесь кодить, если даже такой детский сад вам не под силу?
Расскажите мне как правильно делают крутые чуваки в продакшене.Нужно иметь данные из настроек приложений: скажем, юзернейм и сессионный ключ. Храню я их в SharedPreferences. А вот как с ними работать:1. Наследоваться от класса Application (я так понимаю он синглтон). В методе onCreate считывать в его поля из шаредов значения, при изменении настроек изменять эти поля, сохранять их в шаред к пример в onStop. Использовать данные как app.username.2. Создавать класс настроек (он должен быть синглтон?), там в геттерах и сеттерах читать и писать данные напрямую из SharedPreferences. Использовать данные как appSettings.getUsername. В таком случае нужно передавать контекст в конструктор класса.3. Обращаться к шаред в функциях прямо по месту требования.
>>1103415Создаешь интерйфес SessionManager (допустим, называй как хочешь). У него можно получать токен/имя, че там тебе надо. Дальше развилка:1) Создаешь объект класса реализующего этот интерфейс (может брать из перефернсов, может из аллаха и тд) в Application::onCreate, а дальше как-то его достаешь оттуда;2) Берешь Dagger, добавляешь в компоненту модуль провайдяший этот самый менеджер, ну или в билере компоненты используешь @BindsInstance, как хочешь. А дальше либо инжектишь по нужному месту доставая компоненту из апликейшона, либо дергаешь из компоненты аксесор на эту штуку, тут уж как тебе удобней.По сути второй вариант модификация первого, которая имеет смысл при большом графе зависимостей.
>>1103380Ты тоже не знал. Ебало на ноль.
>>1103492Для того что бы это ухнать достаточно немнодко загуглить.
>>1103492херово тебе. Это ведь базис уровня findViewById или создания фрагментов
>>1103496Ухнал немнодко новово севодня
Анончики, поясните за Write External Storage.У него написано, что с апи 19 он вообще не нужон. При этом в доках он причислен к Dangerous Permission. И на стековерфлоу куча постов о том, что у них лолипоп+ выдаёт ошибку при попытке лезть без запроса пермишена. Кто-нибудь сталкивался с подобным, или это удел каких-то ноунейм китаедевайсов, и пермишен можно выкидывать?
>>1103739Ты что-то путаешь. Read ненужен, а вот без write ты во внешку хуй запишешь. Разумеется без получения пермишена от юзера начиная с зефирки будет падать.
Господа, выручайте. Сам я нюфаня еще тот.Ситуация примерно такая:приходит стринговый массив. Количество строк неизвестно.Мне нужно в зависимости от количества строк, создать такое же количество текстовых полей(для вывода строк) и кнопок рядом(повесить на них отдельный функционал). То есть парами: строка = поле + кнопка.Проблема в том, что я не могу найти в Constraint, как выравнивать вьюшки относительно друг друга, ну и родительского Layout(подчеркну на всякий - создание интерфейса ПРОГРАММНОЕ). Перешерстил немного гугл, документацию, но чет ничего не нашел. Выручайте.Остальное я примерно знаю как осуществить, но вот в это расположение уперся и пиздец
>>1104201RecyclerView, ListView.В адаптер пихаешь свой массив строк и вуаля.
>>1104224Я уже только что понял, что я про эти прекрасные вещи забыл. Буду через них делатьНо все же, чисто теоретически, так сказать для общего развития, есть возможность программно двигать вьюшки? Вроде для Relative Layout что-то видел похожее. Но, для Constraint не было, хотя он же вроде подразумевает под собой все лучшее из Relative, насколько я понял
>>1104233Можно двигать, можно добавлять. Например, делаешь линейный лайаут (вертикальный). Потом в рантайме засовываешь туда сколько нужно линейных лайаутов (горизонтальных) с кнопкой и надписью. Но там еще ебаться нужно со скролом, с размерами чтобы все ок было. Нормальных причин такое делать нет. Это если у тебя очень сложное вью, каждый элемент уникальный по структуре которая еще и заранее не известна (описание вытаскивается из json), тогда может быть.
>>1104233Любую вьюху можно создать программно. Но вот насчёт constraint layout я не уверен. В Anko его тоже нет и не будет
>>1104252В чем ты не уверен, имбецил? Любая вьюха которую ты объявляешь в xml все тоже самое умеет и через код.
>>1079097 (OP)Анон, сейчас будет самый тупой вопрос за время существования вашего треда: мне нужно написать кое-какое приложение на андроид, главное - с простым почти статичным UIесть какие-то годные эмуляторы, чтобы всё это дело тестить и запускать, потому что я червь с обосранной нокией 7310?
>>1104249>>1104252Ну я понимаю, да. Просто я не нашел такого рода команд именно для Constraint. Для Relative видел что-то вроде addRule(), в котором задаешь куда элементу двигаться, и относительного какого. Впрочем, наверное, похер, это не столь важно уже.
Можно ли как нибудь загрузить незакоммиченные изменения в удаленный репозиторий, чтобы потом скачать их, удалить из remote и продолжить работу на другой машине? Не хочу делать коммит с промежуточным "мусором".
>>1104298Сделай форк и сри в него. Потом отребейзишь в читабельный вид и вмержишь в нормальный репо
пошли вы нахуй, козлы ебаные. пока писал вопрос, сам нашел ошибку.
>>1104298Ебать, сделай бранч.
>>1104298И вообще уебывай в git тред
>>1104295Есть, идёт в комплекте со студией.
>>1104319> отребейзишь TRIGGERED https://blogg.bekk.no/why-you-should-stop-using-git-rebase-5552bee4fed1
>>1104362Так никто и не предлагает ребейзить бренч репы, в котором уже кто-то работает.
>>1104362Хериггеред! азазаНа то и форк, чтобы там страдать любой хуйней, ребейзить, форсить, хоть в жопу ебаться. Потом приводишь это все в красивый читабельный вид и делаешь мерж-реквест.
>>1104818пулл реквест
>>1104819В гитлабе вроде это называется мерж-реквест. Но в час ночи я могу и сильно ошибаться
Аноны, поясните пожалуйста за котлин, под что на нем пишут кроме андроида?Какова продуктивность, популярность? Много ли работы? Есть фриланс или только энтерпрайс?
>>1079097 (OP)IOS ЛУЧШЕ, ЧЕМ ВАША ПАРАША!
>>1104935Пройди на парашу, петух! И гейфон свой в жопу засунь!
>>1104935кек, как там фоновые процессы?как там функциональность уведомлений?как там перекидывание файлов с телефона на комп и наоборот?как там работа с svgшками при разработке?как там работа с svgшками при разработке?как там эпловская экосистема по сравнению с гугловской? Особенно интересно про карты и видеохостинг почитать.как там мультиоконность? напомню, что сейчас уже почти 2к18, а кое-где ее до сих пор не завезли.добавляем ко всему этому ебанутую дороговизну телефонов, даже в сравнении равных по характеристикам моделей (пиксели против айфонов например) и яблокобляди идут нахуй отсасывать за очередной айфон
>>1104938Это конечно все хорошо, но на ведре ис svgшками не все хорошо, как меня заебал варнинг unsupported tag, опять же всеми любимая фрагментированность.
>>1104935Гейосеры заебали про пидоров на работе шутить.>>1104938>как там фоновые процессы?Как раз это в Эппле правильней сделано.>как там функциональность уведомлений?А что там не так.
>>1104938И самое главное: как там с исходниками?
>>1104950>Как раз это в Эппле правильней сделано.лел! правильно - это типо не сделано вообще? У них нет вообще такого понятия, как фоновый процесс, а в андроиде тебе на это Service есть.>Это конечно все хорошо, но на ведре ис svgшками не все хорошо, как меня заебал варнинг unsupported tag, опять же всеми любимая фрагментированность.ну хз, у меня всегда свгшки нормально парсятся. Если же не открываются, то прошу дизайнера перенарезать их, либо конверстирую в хмл сторонними сервисами на изи. Опять же, у яблокоблядей их нет вообще>как там функциональность уведомлений?>А что там не так.то что в отличие от андроиде она не несут никакой ползы или функций
>>1104972>у меня всегда свгшки нормально парсятсяЯ про то что многи штуки с 23 апи.>яблокоблядей их нет вообщеНу как бы да, но но самам деле это не какая-то килерфича. закидываешь пдф с вектором и тебе сгенерит при блиде все нужные каотинки Может быть я просто непарвильно свгшками пользуюсь, максимум тинт/поворот.>не сделано вообщеТак и проблем с батарейками нет! Тебе не нужно накладывать анальные ограничения на бэкгрануд если его нет.
>>1104972>правильно - это типо не сделано вообще?Именно. Спасает от разрабов-долбоёбов.>в отличие от андроиде она не несут никакой ползы или функцийПервый раз про это слышу. Такие же там уведомления.
>>1104970Зачем тебе исходники? Что-то их наличие не спасает от того, что любой телефон с Андрюшей это рассадник вирусов.
Лучше бы ios тред перекатили, ей богу.
>>1079097 (OP)Sup, АноныКому-нибудь удавалось считывать входящие USSD-сообщения?Все, найденное мною в гугле, не работает, по крайней мере на моих устройствах
>>1105103Алсо, возможно, кто-то знает другой способ автоматически определять свой номер на устройстве?Через TelephonyManager не вариант, т.к. на большинстве устройств номер тупо не хранится. Можно выделять его из входящего смс с номером при запросе номера у оператора, но многие операторы возвращают номер в формате USSD
>>1104997> Тред разработки под Android > Зачем тебе исходники?Вот такие у нас разработчики.
>>1091738Охуеть, это не фейк https://github.com/DrKLO/Telegram/pull/76#issuecomment-34747349
>>1091738>я говнокодер потому что не знал что буду постить это на гитхаб
>>1105260Зато он миллионер.
>>1105300Я тоже миллионер, но не говнокодер.
>>1105390Без пруфов ты хуй простой.
>>1105475Какие тебе префы?
>>1105681Выписку с банковского счета с супом.
>>1105696Хуев тебе за щеку. Сейчас бы в 2ккк17 кому то что то доказывать на анонимном форуме для маргинальных отбросов.
>>1105745Слив засчитан.
Блять, аноны, поясните мне за тупое говно тупого говна.Вот есть Java и Kotlin. Мне бы хотелось познать андроиз через котлин, без написания кода на ебаной джаве, это реально? Есть ли туториалы аля андроид с нуля, только на котлин?
>>1105905Реально, но не тебе.
>>1105905Учи джаву. После джавы перейдешь на котлин за день и на идиоматический котлин за неделю. Не нравится джава - свифт и высокие зарплаты в ios разработке ждут тебя.
>>1105826Твой слив. Переводить разговор в разряд "зато он лилионер" это что то на уровне "а что там у Хохлов".
Кому-нибудь приходилось иметь дело с легаси где ещё используется roboguice?Предложили проект для совмещения, он огромный, грязно написан, использует похороненные технологии (robospice ещё). Глядя на него хочется только переписать все с нуля, но заказчики хотят только местами улучшить поддерживаемость, платить собираются хорошо. Т.к. есть основная работа, то пока думаю, соглашаться или нет?Анон, ты стоял перед подобным выбором?
>>1106065>Не нравится джава - свифт и высокие зарплаты в ios разработке ждут тебя. Lol, в iOS ещё очень много проектов на objective-c. Чтобы всерьез туда вкатиться придется сначала прилично освоить, так сказать, первичный язык. А потом swift возможно и не захочется, как мне, например
>>1106108Не лезь, блядь, дебил, сука, ебаный. Ты чё, хххуёл, я те сказали что ли? Залезь, наххуй, нака обратно, блядь! Дебил, блядь. Она тебя сожрёт, блядь. Нахуй ты б?..
>>1106113Видимо ты прав, они ещё не хотят отказываться от этого говна.
Как сделать чтобы студия сама переносила закрывающие ">" и "/>" xml разметки на новую строку?
>>1105905А нахуя? Джава - это основа, без нее щитаю в андройд разработке делать нечего. Котлин - приятное дополнение для тех, кто знает яву, начинать сразу с котлина(не зная хотя бы шарпа) очень глупо т.к. почти вся экосистема, сторонние библиотеки, все это на яве и не смотря на крутой интероп, если ты не будешь знать яву - будешь натыкаться на кучу граблей и неочевидностей в использовании библиотек т.к. там идеоматический код на этих языках в куче мест отличается.Да и сорцы интересных либ/проектов не сможешь читать.
Братаны, можно ли перекатиться в джаву из андроида безболезненно? Куда еще можно перекатиться?На случай если ведро ко дну пойдет
Хочу вкатиться в андроед, и, прежде чем пойти джуном, запилить небольшое приложение. Есть некоторые знания джавы. На ней пилить, или на хипстерско-модном котлине? Или на скале нахуй?
>>1106429Меня на собесодовании спрашивали писал ли я на котлине (этот вопрос поступил уже после того как я сдал жаву и другие технологии)
>>1106429На Haskellhttps://github.com/neurocyte/android-haskell-activity/blob/master/src/HaskellActivity.hs
Можно ли простыми средствами и без ебли канваса руками сделать как на пикрил1?Если раскрашиваю обычный view, который внутри cardView то с закругленными углами получается пикрил2, а если ставить cardPreventCornerOverlap="false", выходит то, что на пикрил3.
>>1106948Или определи drawable в xml, или в коде хуйни GradientDrawable с нужыми углами.
>>1106948Clip to padding = false поставь
>>1106975Не понял как это должно работать, но на всякий поставил атрибут у cardView и в коренном viewGroup у айтема, не заработало.>>1106963А вот это работает. Хуйнул shape в xml c нужными закруглениями и меняю цвет программно. Спасибо.
Сколько примерно будет стоить хороший ноут с 16гиг и норм процом? Не обязательно ультрабук. Алсо, можете вкидывать хорошие машины для кодинга под ведро/свои рабочие компы.
4 ядра, 8 гига озу, ссд норм будет?Другой
>>11073998 мало, студия совсем поехавшая в этом планне первый
>>1107403>>1107399>4 ядра, 8 гига озу, ссд норм будет?А мне норм, на старом маке.
>>1107399
>>1107445Ебанись, сколько ваша ведроид студия ресурсов жрёт, на моём десятилетнем два ядра@два гига даже эклипс притормаживает, похоже, вопрос стоит-ли вкатываться в андроид-разработку для меня закрыт. Алсо, как оно на линуксе работает, через wine-костыли? Тогда всё ещё хуже.нищеброд, мимо скролил главную
>>1107473Нормально оно на линуксе рабоатет, джава же.
>>1107399Пишу на таком, только 2 ядра и без ссд.Все нормально, хотя если есть выбор бери 16 озу.
>>1107473По личным наблюдениям лучше всего работает на маке, на прыщах тоже норм, никаких вайнов не нужно, это же не шарпопараша
>>1107399Юзаю макбук-эир ай5 1,6Ггц, 8 гигов. Работать вполне комфортно, имею в виду, что эмулятор тоже запущен. Покупал его б/у за 45к. Зависимость есть. Кстати, заметил, что когда запускаю эмулятор под Орео апи 26+, то тяжелее работает. А вот 23 апи шикарно.
Молодые люди, помогите мне, пожалуйста, с отображением, мать их, картинок.Вот скачиваю я с сервера глайдом картинку, и она может быть самого разного разрешения и иметь самое разное соотношение сторон.Поместить её надо в контейнер фиксированного размера.Какой бы scaleType я не брал, как бы не выставлял размеры - всё равно часть картинок отображается некорректно.Есть какая-нибудь чудесная умная либа, которая сделает всё классно?Скажем, нормально отцентрирует, хотя бы.Или нужно самому мудрить с битмапом, смотреть на размеры картинки, исходя из этого выставлять настройки ImageView и т.д. и т.п.?
Аноны, есть веб сервис, который пока запускаю локально и приложение, которое его использует.На эмуляторе для тестов все просто, 10.0.2.2 - это локалхост машины, на которой запущен эмулятор, соответственно его в base_url для ретрофита и использую.А как можно получить внешний Ip или ip машины в своей wifi сети, используя который я мог инжектить его через buildConfig и тестировать приложение на своем телефоне?Пробовал вот этот метод, но не работает и как я понял это просто более надежный аналог поиска адреса локалхоста.http://jeremie-martinez.com/2015/05/05/inject-host-gradle/
>>1107626Ты все таки определи почему не правильно отображает. Юзал несколько раз глайд на больших наборах картинок/фоток - все нормально и отоброжало и центировало, и перекодировало битмапы для превьюх. Большей йобы для изображений, на мой взгляд, уже не придумать.
>>1107633Посмотрел свои сорцы, я в imageView вставлял.asBitmap().centerCrop()
>>1107633Fresco гораздо большая еба чем ваш глайд
>>1107745Щас б кушать фейсбучное говно.
>>1107856Уж лучше любого другого говна
>>1107641пробовал,если картинка вертикальная, то печалька.То есть если соотношение 3:1, например
>>1107932>>1107633Так, обновил глайд, выставил фиксированные размеры вьюхе, глайд сделал всё как надо.Слава глайду!
>>1106413C этим вроде разобралсяЕсли кому нужно:settings -> editor -> code style -> xml -> android -> layout files -> insert line break after last attributeЗато так и не разобрался как сделать чтобы xmlns=.... тоже переносилось на новую строкувезде стоят галки insert line break before first attribute, но если делать реформат разметки все равно этот блядский аттрибут неймспейса на той же строке.Это баг или фича что?
>>1107546Сколько минут билдит?
Кто юзает multidex, проблем никаких нет? Апп стартует быстро?Я всегда стараюсь в лимит влазить, но заказчик хочет ещё вот сранных либ добавить
>>1109204>заказчик хочет ещё вот сранных либ добавитьРекламка?Нет, особо никаких проблем не замечал. Ну начиная с лолипопа. А что, прогвард тоже не вывозит? У меня так 50-60% вырезается.
>>1109231Без proguard и не запустится же, слишком много методовПритом самого кода прилаги - около 10к, остальное гугл и суппорт либы, + плюс ебаные аналитик либы rx 6к методов, я худею
>>1109237>6кНашел с чего бомбить.У меня io.reactivex очень няшно в 720 скукожилось. (в проекте только вторая)
>>1109241Как? У меня тож вторая. Ты из классов юзаешь только observable?
>>1109245Хз, использую Observable с ретрофитом и Single в некоторых местах, но вообще приложуха однотипная и небольшая, наверное из-за этого.Сколько тебе вообще прогвард вырезает?
>>1109246блэд, это надо multidex включать, чтоб посмотреть?
>>1109248Нет, это отдельный плагин генерит при билде.https://github.com/KeepSafe/dexcount-gradle-plugin
>>1109249так билд сфейлится, если прогард отключить
>>1109252>прогард отключитьНу так включи))0)
>>1109252собрал епта
>>1109200Билдил довольно крупный проект аналог Vimeo, первый запуск идет туговато, но потом в пределах пары минут, да и первый не особо далеко уходит. Но уснуть не успеваешь в общем.Макбук эир сейчас не является чем-то дорогим и крутым, он даже наоборот сейчас является выбором нищебродов, которые берут себе устройство не на один год.
Очевидно что у этого долблеба прогуард даже и не настроен
>>1109342Вон жеж сжатие на 32%.>>1109256>>1109252
>>1109357Сжатие твоего очка.
Ведробоги, у меня при удалении определенного айтема запускается runnable в другом треде, который удаляет кучу данных из разных таблиц в бд. Если при этом юзер решит удалить другой айтем, пока не удалились данные из предыдущего и запуститься новый поток удаления уже других данных sqlite нормально это обработает или нужно городить очередь?
>>1109544Нормально отработает, писать больше чем из одного потока он всеравно не умеет.
>>1109398Хуя ты агресивный.
>>1109277когда собираю на стационарнике за минуту, уже пригорает, думаю вот апгрейдить комп, как люди на таких корчах билдят не понимаю.
Вкатывание и доказательства, что ты что-то умеешь.В случае ведра - нужно ли показывать свой говнокод на гитхабе? Или сойдет работающий пример из гугломаркета, и, скажем, приглашение в приватный репозиторий на bitbucket'е, если захотят видеть код?
>>1109579Я бы тоже хотел себе стационарный комп, но таскать его по съемным хатам не хочется. Да и вообще, мобильный разработчик, должен быть мобильным.
>>1109594асло купил себе ноут, с i7 , по идее даже мощнее стационарника, но собирает даже медленней.Думаю вот взять макбук, чтобы ios подтянуть, так когда смотрю на их железо и цены - плакать хочется
>>1109586Конечно хватит, меньше хабрапараши читай про звездочки и успешность на гитхабах. Такой инфантильныйуспешный челик скорее будет первым кандидатом на неоплачиваемые переработки и прочее говно в будущем, если его возьмут.
>>1109586Если спросят то покажешь код, а так тебя должны по архитектуре спрашивать - типа как ты то делал, как другое. Код твой никому нахуй не нужен - все равно им прийдется дополнительные вопросы задавать, чтобы понять ты его писал или спиздил где-то. Разве что захотят просто на внешний вид посмотреть. Можешь перед собеседованием закинуть на гитхаб, а потом удалить чтобы не ебаться с доступом к битбакету.
сап, гайс. Вопрос к скорее более-менее опытным анонам - вы заметили, что в последнее время полгода так точно у заказчиков возникло прямо какое-то обострение на жесткие требования к проектам, такие как мвп + даггер + RXджава ? Если раньше про это мало кто говорил и это от себя уже рекомендовалось им, то сейчас все прямо поехали на том, что хотят в своих проектах такое видеть. Чем это вызвано? И заодно напишите в чем вообще прикол от юзания DI, по крайней мере в андроид разработке? Если например польза от мвп и rx явно заметна, то DI мало того, что добавляет путаницы и сложности к отладке, так еще читаемость кода сокращает, при этом не имея явных плюсов. Плюс только для самого разработчика, что можно просить повышения зп, ведь юзаю новую сложную технологию, лол что я и сделал успешноП.С. Я сам активно тот же DI использую, не надо писать, чтоб я гуглил и т.д., все я в коде прекрасно делаю и все работает, я лишь спросил, нахера оно надо, если не имеет смысла
>>1109922Что бы не ебаться с созданием объектов, и что бы изолировать реализацию, так и тестить удобнее. Вот сам подумай, тебе удобнее сделать:PresentersPersistanceSingletone.getInstance().getProfileScreenPresenter(RetrofitSingletone.getApiInstance(), GovnoDaoSingletone.getInstance());Или:((MyApp) getApplicationContext()).getComponentManager().getProfileComponent().profilePresenter()
>>1109944>PresentersPersistanceSingletone.getInstance().getProfileScreenPresenter(RetrofitSingletone.getApiInstance(), GovnoDaoSingletone.getInstance());так нормальный программист все равно писать не будет)Ну хз, насчет создания объектов соглашусь, насчет изолирования реализации - читабельность лучше не станет. Надо тебе поменять что-то в модуле для сетевых запросов - тебе лезть хз куда надо. А если вдруг тебе надо два объекта одного класса - надо через аннотацию @named ебашить, которая тоже головной боли может добавить. А если вдруг после всего даггера в коде что-то не компилируется, то реально сложно отследить, что именно не так, так как тебе точная строка с ошибкой не покажется и тебе надо уже по всем компонентам и модулями лазить высматривать, где ты проебался
Есть активити с таблейаутом в котором три фрагмента. В это активити приходят события из сервиса через ивентбас, которые далее раскидываются по фрагментам через гугловскую вьюмодель и rxjava. Вопрос - как это протестить? Юнит тестами я тестирую вьюмодели, но как мне протестить полный маршрут ивентов от сервиса в активити и далее в нужный фрагмент? Тут походу только через инструментальные тесты, да? Роболектрики всякие не подойдут, да? Или же забить хуй на полный маршрут и тесть только отдельные часть?
>>1109922не заметил>>1109982заняться нечем чтоли?
>>1110039Всмысле заняться нечем? Мне надо под эту хуйню тесты написать.
>>1109952>А если вдруг после всего даггера в коде что-то не компилируется, то реально сложно отследить, что именно не так, так как тебе точная строка с ошибкой не покажется и тебе надо уже по всем компонентам и модулями лазить высматривать, где ты проебалсяЕбать. Что за чушь я читаю? Даггер всегда явно говорит где ты соснул.
Анон, для того, чтобы добавлять, удалять, искать данные в бд, нужно для каждой задачи создавать каждый раз отдельный поток (т.е. ебошить кучу AsyncTask'ов) или можно поступить как-то иначе?
>>1110267AsyncTask не создает каждый раз отдельный поток. В зависимости от версии они выполняются или на одном потоке последовательно или на пуле потоков. Для версий старше 4.0 это один поток. Можешь спокойно ебашить асинками. Так как на новых версиях все асинки по умолчанию выполняются последовательно то если операции долгие используешь втроеный пул потоков асинк таска - executeOnExecutor с партаметром THREAD_POOL_EXECUTOR. Или наварачиваешь свой пул.
>>1110290Понял. Спасибо, анончик
ПЕРЕКАТ https://2ch.hk/pr/res/1110463.htmlПЕРЕКАТ https://2ch.hk/pr/res/1110463.htmlПЕРЕКАТ https://2ch.hk/pr/res/1110463.html