> Хочу вкатиться в разработку под Android! С чего начать? Большинство приложений написано на Java, выучить её на хорошем уровне — это первое, что необходимо сделать. Рекомендуемую литературу см. в Java-треде. После этого можно установить Android Studio, открыть официальную документацию http://developer.android.com/training/index.html и попробовать создать по туториалам своё первое приложение. В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.
> Не хочу писать на Java! - Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. Можно использовать в проекте вместе с кодом на Java.
> Есть что-то кроме нативных приложений на 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. И хотя бы оно готовое приложение.
>>957245 >>957248 Никакого вранья. Стек осваивается за 2 недели при наличии свободного времени. При желании, можно даже чуть быстрее. Разумеется, в эти 2 недели не входит время на то, чтобы научиться писать код и рабочие программы как таковые. Может, вы просто тупенькие? Хотя ладно, люди разные, может я и правда слегка перегнул. Просто себя я умным совершенно не считаю. >>957254 Я опять же имел в виду, когда ты уже под андроид пишешь и решил свой паверлевел поднять. Так-то да, совсем непростая ситуация выходит. Старайся, всё будет хорошо.
Сап, двач. Есть один EditText и есть простой текст.
Всё до безумия просто: я пишу в поле едиттекст что-то, потом жамкаю кнопку и то, что я ввёл, появляется в отдельном поле как обычный текст. Просто играюсь и изучаю.
Так вот, с жамканием на кнопку и getText/setText всё оказалось просто. Теперь подскажите, как мне сделать так, чтобы в простом Тексте сразу же отображалось то, что я ввожу в едит тексте? Ну то есть в реальном времени как бы дублируя. Я так понимаю, что нужно либо создавать для этого поток Thread(), либо есть какие-то неизвестные мне методы. Спасибо
>>957344 хз каждый раз когда говорю фразу "х - хуйня, за бутылкой пива проясню все", потом думаю - раз это хуйня чем блядь я 4 последних года занимаюсь. Вся мякотка в том что доступной инфы никто не даст. Помню как ебся 2 дня с тем что не вкуривал что сторио генерит тайпмаппинг на этапе компиляции.
>>957315 (OP) Суп, погромисты. Сам я начинающий, пишу свою прогу типа плеера для интернет-радио. Суть такова, что кнопка плей нажимается, музыка играется. Информация о текущем треке дёргается каждые 10 секунд с сервера, и если трек изменился, то ещё и обложка подсасывается. В данный момент эта процедура отрабатывается в основном активити (он один), музыка же играет в сервисе как положено. Всё работает почти неплохо, несмотря на говнокод. Собственно вопрос, может ли андроид грохнуть моё активити, но не грохнуть сервис, из-за чего информация о треке перестанет обновляться? Стоит ли запихнуть получение данных с сервера в сервис с плеером? Просто по началу делал без задней мысли, а потом на гитхабе посмотрел сурсы похожих приложений и увидел, что там так же реализовано. Благодарю за ответы.
Первый класс - класс с потоком, где я хочу, чтобы цифра a менялась.
Второй - главное активити, где я хочу, чтобы у txt был setText(gg.a). Но когда я это делаю и нажимаю на кнопку в приложении, всё крашится. При этом, как вы видите, я проверяю через лог поток и он работает. Чому не могу передать значение из одного класса в другой без ошибки?
>>957615 > я хочу, чтобы текст в приложении менялся как в потоке. ТО есть 1, 2, 3, 4, 5. Может надо не через Thread делать, а через Handler или что там ещё. Асинк таск?
Анонасы, мне 16, начинать вкатываться в джаву, именно в разработку приложений? Перспективно? Не кидайте в меня говном, адекватные ведь люди Паскаль,с++ чутка учил, вроде не тупой
Получается так, что если я создам аларм до того, как предыдущий появился, то они оба алертнутся по времени последнего, что я делаю не так? Request код у них разный и создаються 2 алерта, но последний переписывает время предыдущего.
>>957727 Да, вполне. Банковский софт сам себя не напишет, так что вкатывайся. Яндекс вон недавно 17летнего пиздюка себе взял на работу, так что давай скорее вкатывайся, а то будешь слишком стар для этой хуйни.
Просто скопировал код себе, создал такие же джава-классы и иксэмельки(менял только порт и айпишник).
Выводит пикрелейтед ошибки. Классы и методы метит как Cannot resolve symbol/method В чем дело? Гуглил такие ошибки, в основном пишут просто удалить там папку idea и iml-файлы и ребилдить/клинить. Мне не помогает. Если не трудно кому - запустите данный пример у себя и скажите что не так.
>>957762 >Если я смогу в джаву , то есть ли шансы к 18 годикам найти себе удалённую работу? Нет. Работу в офисе- да, реально. Удаленно -нет. Во-первых, как тебе ниже анон сказал, фриланса в джаве нет. Во-вторых, фриланс начинается после 5 лет работы в офисе. Те, кто сразу идут во фриланс, выдают код хуже, чем индусы, и оплачивается их работа соответствующе.
>>957771 >>957769 Не дописал. Во что вкатиться что бы удаленно к 18 даже не 30 получать, а хотя бы 20-15к. Ибо меня погонят из дома либо в вуз и общагу, либо надо будет снимать хату.
>>957781 Тут когда-то был, может и сейчас есть, тред по пхп, с аниме на аватарке. Там были гайды и задачки от ОПа, он же их проверял. Рекомендую туда зайти
>>957785 первое это то, что папа сам работал в офисе админом сети, и сейчас яро против офисов. говорит лучше работать дворником, чем постоянно как солдат в 8 утра приходить и в 7 уходить. Постоянные коллективные собрания, прочая хуйня. ну и да, немного сыч, но это лечится армией
>>957788 У меня опыта работы нету, не ко мне это. Просто помню что сидел там и решал задачки.
Мне кажется что лучше сначала немного в коллективе поработать, понять как всё работает а потом уже и пробовать искать удалённую работу. Ну и инглиш надо знать (на ру биржу лучше не лезть, само собой).
>>957787 Ну это все равно, что будучи девственником рассуждать, что секс- это неприятно. Ты сходи, поработай и сделай выводы. Тем паче устроиться на работу ИРЛ намного больше шансов, чем удаленно.
>>957790 сейчас армия вроде стала лучше, а я блядь ебаное комнатное растение, не способное спросить где находится та или иная улица. Хорошо, спасибо за совет
Подскажите эмулятор, чтобы бесплатно и мог эмулировать разные реальные девайсы (ну, то есть не абстрактный андроид студио эмулятор, а чтоб, например, мог сэмулировть xiaomi определённой модели).
>>958069 Нет таких. У самсунга можно взять девайс в аренду и подключиться к нему удаленно. Для максимального охвата есть фаирбейзовый тест лаб с реальными девайсами, но там гоняются только тесты.
Есть gridView, в который динамически добавляются imageView, и у некоторых есть animatorUpdateListener'ы.
Проблема в том, если приложение уходит в бэкграунд или даже путем нажатия "назад" уходят на более раннее activty из стака - эти listenerы продолжают хуярить.
Есть ли лучший подход, чем держать в activity массив, в который добавляются эти listener'ы при создании, и которые при будут выключаться, если активити будет в OnPause и тд, например?
метод в OnBackStackChangedListener , который onBackStackChanged , срабатывает ДВАЖДЫ? Именно дважды, при первом добавлении одного фрагмента. Причем делаю все , как обычно, на глупые ошибки всевозможные 100 раз проверил, но нифига. Помогите плиз, если кто сталкивался.
>>958369 А какая, нахуй, разница? Ты что-то левое компилировать собрался под ведро, типа интерпретатора петона? Да и линуксософт хуета ебаная, даже имеющий огромное комьюнити. Например, QT Creator пиздец, какое глючный сравнительно с виндузоаналогом.
>>958369 Джва года назад градл у меня на винде был очень медленный, раз в десять медленнее, чем на линуксе на том же пека. С чем связано, не знаю. С тех пор кодил только на линуксе.
>>958555 >>958545 Чет мне слабо верится. Да, я верю в проседание процентов на 50, но никак не в 3 раза медленнее на такой же конфигурации. Может ему памяти меньше выделяется по умолчанию, или вы явно указываете? Антивирь-хуивирь там, градл нужно обязательно добавить в исключения виндефендера, а то тот начинает почему то охуевать.
>>958854 А там не как с AutoValue? А именно тебе не compile нужен, а provides, и тогда вся их поебень с гуавой только во время компиляции нужна, было бы логично, так как ты в компайлтайме фабрики генеришь.
>>958545 Сижу на core i3, 8 gb ram и hdd на одном компе и таком же конфиге, но с core i5 4690 на другом. Так вот, на i5 сильно быстрее, прям заебись даже.
Что почитать на русском именно про разработку всякого говна для дебилов на русском? Не джаву, а именно про все эти ебучие xml'ы и прочее дегенератство.
>>957315 (OP) Подумываю перекатиться из питона в джава/андройд (да, я такой ебанутый). Вопрос, нужны ли в андройде навыки аналогичные вебовскому фронтенду? Просто мне надоело что каждый работодатель хочет от меня чтобы я запросы в БД мог оптимизировать, и сделать поиск на эластике и настроить/задеплоить продакшен и чтобы жс и верстка. ЗАЕБАЛО. Я просто не успеваю (и не хочу) изучать это все, хочу сосредоточиться на какой-то отрасли.
>>959568 Нашел тутор где public class WeatherReporter { @Inject WeatherReporter() { } } Предостовляет.Потом тупо вызвал в компоненте WeatherReporter getWeatherReporter(); Я чего то не понимаю.
Поясните за котлин. Он начал вытеснять жабу в новых проектах? Другими словами: при устройстве на работу мне прежде всего нужно будет быть готовым ебошить на котлине?
>>957315 (OP) Почоны. Есть ли смысл использовать Activity вместо AppCompatActivity если планируется поддержка устройств 5 и выше? Заранее извините если савсем платина, я не смог нагуглить преимуществ Activity по сравнению с AppCompat.
>>960035 Спасибо, это я видел, возможно есть еще что-то. >>960031 В догонку к этому. При использовании AppCompat я не могу в стилях указывать, например для api 11 Theme.Halo для api 21 Theme.Material - везде приходится использовать Theme.AppCompat Это не значит, что с AppCompat и Theme.AppCompat мое приложение на андроид с api >21 будет выглядеть хуже, чем с Activity и Theme.Material. Или с AppCompat можно использовать тему Material просто я где-то очень косячу?
>>957315 (OP) Аноны, на вакансию конторки Алеф ван лтд недавнюю не откликался никто? А то вдруг у кого тоже опыт общения с ними есть. А то тут такая ситуация, написал им на hh_ru дня 4 назад, сказали что заинтересованы, дали простейшее и тупейшее тестовое задание, сделал его до вечера с закрытыми глазами, вполне неплохо на мой взгляд, сегодня прислали отказ, ничего не объяснив и не прокомментировав. Вот не мудаки ли?
Может кому-то код отревьюить не лень будет, из спортивного интереса? Может я совсем тупой и не понимаю чем он плох и почему не приняли. Я бы ссылку на архив скинул сюда + переписку с hh. Приложение с одим экраном, кода немонго.
>>960136 > у меня нет резюме А должен был написать, даже если нет. Слишком неформальное описание себя. Ты не на дваче, блядь. >>960207 этот намекает, что код надо выкладывать не архивом, а на github/bitbucket.
Там написано, что полноценного нет, но общее с инфой о том сколько лет, где живу и чем питаюсь пристуствует.
> этот намекает, что код надо выкладывать не архивом, а на github/bitbucket
Меня просили отписать на почту, если бы попросили выложить на github - так бы и сделал. Ссылку на свой профиль с репами я им письме дал.
> return "";
Что ты предлагаешь сделать внутри лоадера при возникновении исключения? Выше его не пробросить, а если вернуть пустую строку, то во фрагменте можно это проверить и показать ошибку. Нет?
> ????
Вот хули ты мне свои закорючки бессмысленные пишешь? Им скажи что навание класса плохое
Что не так с >>>>BaseActivity<<<< я в своих проектах в таком классе CompositeSubscription держу, базовый контекст для calligraphy оборачиваю, репозиторий инжекчу.
>>960242 Я надеялся, что мне нормально пояснят какие проблемы в коде, а ты мне копируешь название класса с вопросительными знаками под ним. Выше я просил уточнить, в чем проблема в коде лоадера. И ты мне отвечаешь, что я твое ревью воспринимать не могу. Что конкретно, копипасту кусков своего кода? Я его и без тебя уже видел, когда писал.
Как лучше организовать такую вещь: 1. Длительный запрос к серверу в intent service (он убьётся при смахивании приложения из recent?) 2. Проброска в UI: результата и состояния (выполняется или провалился)?
>>960230 Зачем здесь лоадер, если достаточно сделать асинхронный запрос при помощи retrofit и отменить его в onDestroy или там, где логически это лучше подходит?
Расскажите про jni, имеет ли смысл использовать частые вызовы маленьких функций или там из-за этого задержки? Дело в том, что я в армии и я написал программу, которая по показаниям акселерометра определяет хлопки по бушлату, и нужной комбинацией можно незаметно включить или выключить музыку (телефоны то тут нельзя). Но оно выжирает батарейку раза в четыре быстрее просто музыки и я подумал что может быть си-функции порезвее будут, если переключение на них не слишком накладно.
>>960239 Мамка гонит, так что отвечу быстро. Код не смотрел.
>но общее с инфой о том сколько лет, где живу и чем питаюсь пристуствует. Город? В ДСах такое не прокатит
>Меня просили отписать на почту, если бы попросили выложить на github - так бы и сделал. Ебаться с архивом им тупо неудобно. С другой стороны, у шизоконтор бывает багор что их тестовое выкладывают на гитхаб. Но архив с кодом - пиздец.
>Что ты предлагаешь сделать внутри лоадера при возникновении исключения? Выше его не пробросить, а если вернуть пустую строку, то во фрагменте можно это проверить и показать ошибку. Нет? Можно такой костыль class LoaderResponse{ private String result; private Exception error; } Но пустая строчка - это пиздец, как и вообще строчка без константы в данном случае.
> int columnCount = getResources().getBoolean(R.bool.isTablet)? 3: 2; Число колонок вроде можно задавать в Xml. Да и вообще, выглядит костыльно.
> нет тестов Хотя бы андроидовские можно запилить
Вот отсосы дегенерата из того сообщения > BaseActivity Не обращай внимания, в ведроиде физически не заменить наследование композицией полностью. Разве что назвать можно по возможности более информативно.
> JSONArray baseArray = new JSONArray(json); Тут тоже нет ничего критичного, если это класс из либы.
Поясните. Насколько реально вот из этого https://github.com/ejgallego/jscoq сделать приложение для андроида? Онлайн-версия в браузере работает, но это несерьезно, хочется локально жи.
>>960432 Анон помоги. Второй день ебусь. Есть FutureTask ждущий и возвращающий лист. Надо с Rx проследить что бы этот таск выполнялся не больше определенного времени, если больше - все ложим и вызываем onComplete. Как это запилить?
>>960546 >>960236 Лоадеры хорошо с жизненным циклом связаны, решают все проблемы AsyncTask и не будут продолжать шуршать фоновыми операциями, если Activity ушла в BackStack
Если данные уже загружены в лоадере и гововы, то при изменении конфигурации лоадер просто вернет их, а не будет грузить снова. Поэтому не придется ебаться с поворотами экранов, они все умеют сами
Ну и AT Лоадер сейчас это основной СДКашный дефолтный способ для любой многопоточки, особенно для загрузки чего-то откуда-то. А не 5 разных колбеков, у 5 разных либ, которые типо умеют в асинхронность
Антоши. Нужен совет, ибо заебался. Гугл нихуя толкового не дал. В общем, у меня есть MainActivity с ViewPager, в котором статически загнаны 2 фрагмента. В MainActivity опреден листнер на FAB, который делегирует выполнение в один из фрагментов. У фрагмента, в его реализации обработки идет вызов DialogFragment.show(), который принимает getFragmentManager. Все бы ничего, но после поворота экрана getFragmentManager начинает возвращать null. Попытался вызвать getActivity().getSupportFragmentManager, но getActivity() тоже null. Какого хуя анон? Пытался всякие setRetainInstance юзать и прочее - нихуя не помогает.
>>961045 Нашел таки решение. В общем юзал я FragmentPagerAdapter не FragmentStatePagerAdapter, в котором хранил коллекцию фрагментов, заполняемых заново каждый раз при повороте экрана. Но фрагменты там по факту создаются один единственный раз через getItem(position), а в ту заполняемую мной коллекцию каждый раз сыпались фиктивные фрагменты, которые не кидались в фрагментманагер. Решение состояло из ручного вытаскивания фрагментов из фрагментманагера по тэгу: "android:switcher:" + pagerId + ":" + getItemId(position). Нахуй так жить посоны?
>>961099 ViewPager вообще один из самых глючных и неудобных в использовании компонентов. У меня тоже постоянные с ним проблемы. Хуже него, пожалуй, только camera api
Как указать студии где искать NDK? Пакет установлен в /opt/android-ndk, переменная прописана ANDROID_NDK=/opt/android-ndk. Но студия все равно не видит.
Програманоны, есть один список, ListView или RecyclerView пока не понятно. И еще есть от 0 до овер 500 item'ов для него, каждому по заинфлейтиной вьюшке соответственно.
Когда пытаюсь натравить адаптер на ListView/RecyclerView и быстро покручиваю список, он начинает ужс как тормозить, очевидно, не хватает вычислительной мощности дабы все отрисовать. Но шаблон ведь, сука, элементарный! Там несколько FrameLayout'ов и LinearLayout'ов! Если же все View'шки создавать предварительно, а не рантаймно, уходит около 100 мс только чтобы создать одну! А это уже вечность, около двух-трёх секунд в результате получается. А RecyclerView ничем, как оказалось, не лучше ListView по скорости отрисовки.
>>961340 1) ты срукожопил 2)ресайклер лучше 3)посмотри видео от школы яндекса на тему лайоутов. >Там несколько FrameLayout'ов и LinearLayout'ов! >уходит около 100 мс
>>961385 Смотри документацию по CompositeSubscription::unsubscribe, в частности там написано что все последующие поступающие подписки будут автоматом отписываться. Так что тебе или новый compositeSubscription надо сделать, либо использовать clear
>>961405 Приду домой - проверю еще раз. Вообще я пробовал его пересоздать перед запросом и это не помогло. Пробовал обычный subscription юзать - тоже не помогло. Я удивлен. До этого юзал rxjava, но не с retrofit.
>>961422 Проверил - clear тоже приводит к тому, что запрос проходит один раз только. Пересоздание CompositeSubscription приводит к тому же.
Мне то нужно всего лишь отписаться, тогда, когда view уничтожается во время переворота экран (чтобы не крашнулось все из-за NPE) и отправить повторный запрос в onResume.
Появилось желание сделать цепочку таких вот асинхронных вызовов: getUsers().getFriends().subscribe() где getUsers и getFriends являются такими вот обертками, описанными выше Но я чет не догоняю, как это лучше реализовать На ум приходит что-то типо такого: Observable.create($get_users_with_listener$).subscribe(res -> Observable.create($get_users_with_litener$))
.cache(); используется для того, чтобы не прерывать запрос и после того, как пересоздастся разметка после переворота экрана - подтянуть результат запроса и показать его в UI:
>>961856 Нифига подобного. Если ты не даун, осваивается за несколько минут, затем со временем просто осваиваешь разные менее тривиальные операторы, а вот их уже довольно много.
Аноны, у меня в листвью три текствью для разных текстов. Все наполнители лежат в трех! Массивах, а не водном. Смогу использовать три массива для наполнения каждого текствью через адаптер? И как?
>>961996 Хуй знает бро. Мне показалось, что стримы - лайтверсия Linq, которая работает онли с коллекциями. RxJava - ебаный эмиттер данных, который легко реализуется средствами IEnumerable. Думаю, что дотнетовая реализация рекса так и сделана.
>>963420 Я тоже автобус заюзал в своем пете, потому как лень было велосипедить через RxJava.
Рейтани мой список: RxJava, Picasso, EventBus, VkSDK. Последние три чисто, чтобы самому не велосипедить.
Даггеры не стал юзать, т.к. чувствую, что еще сперва нужно разобраться с основами разработки, а потом уже лепить туда DI и прочую новомодную хуйню. У меня даже MVP нету. В роли презентера выступает сам фрагмент.
Кому-нибудь приходилось реализовывать ui тест воспроизводящий два клика по одному месту БЕЗ задержек между кликами? Вручную получается, т.е. после первого клика слушатель кнопки запускается, не успевает отработать до конца, т.к. после второго клика запускается конкурентно еще раз и приложение крашится. В эспрессо сделать не получается, наверно он ждет пока событие отработает даже без идлинг ресурсов, событие кстати синхронное. Пока смотрю в сторону monkey runner, но может можно как-то проще в том же эспрессо?
Аноны, за сколько можно сделать это ТЗ? Что помимо Java-core надо знать конкретно для этого ТЗ? Раньше android не интересовал, но решил попробовать.
Создать приложение для Android на языке Java. Оно должно обладать такой минимальной функциональностью:
Поле для ввода текста, который будет переведён на другой язык; переключатель языка и варианты перевода, которые появляются, когда пользователь вводит текст в поле. Возможность добавить переведённое слово или предложение в избранное. Возможность просмотра истории переводов. Возможность просмотра избранного. Перевод с одного языка на другой с помощью API Яндекс.Переводчика.
>>963634 >Я сейчас работаю курьером Ты сейчас уже работеш программистом, да не простым, а делающим тестовые задания. Тебе подобных сносило в канализацiю в 1998, 2003, 2006-2008 и 2014, но вы никуда не исчезаете, просто место Windows'95 заменил Android — и только-то. Ты даже не видишь, насколько упали з/п, насколько «рынок» задемпингован... типичный же случай. Возьми вон с полки учебник Экономики и о спросе да предложении почитай. Ст. 330 УК РФ, ст. 165 УК РФ и ст 163 УК РФ тебе в любой мусарне объяснят. Задания он делает...
В Clean Architecture в каком слое нужно форматировать строку для вывода (к примеру, поступившие с данных "Вася" и "Сычёв" форматировать в "Омежка Вася Сычёв")? В интаракторе (по идее, логика формата - тоже бизнес-логика) - и возвращать Entity с уже отформатированной строкой? Или прямо в вьюхе?
Не знаю, где спросить, спрошу тут. Имеется телеграммовский клиент на Андроиде, под рутом умею доставать сообщения и контакты из cache4.db. Вопрос, можно ли как-то достать аватары пользователей (url или просто jpeg-файл), как из того же вотсаппа?
Поставил я значит такой себе StreamSupport где-то месяц назад. Всё было хорошо, но вчера я запустил код который давно не тестировал и в котором юзаются стримы и получил: Caused by: java.lang.ClassNotFoundException: Didn't find class "java8.util.stream.RefStreams" on path: DexPathList
Что блять? Что нахуй? Я не верю своим ебаным глазам, какой нахуй StorIO, у меня не хватает слов чтоб выразить свое негодование, пошел нахуй отсяда, сраный уебок, и чтоб я тя больше не видел здесь, или я вычислю твой ойпи и ты будешь всю жизнь есть манную кашу через трубочку, ебаный дегенерат.
Доброго времени суток, господа. Заранее прошу прощения за невский вопрос, но не могу его не задать. Скажите, что значит фраза "хороший уровень java"? Как определить момент, когда я достаточно проштудировал обучающие материалы по языку и могу переходить к андроид-разработке?Ещё раз прошу прощения за такой невский вопрос. И заранее спасибо за ответы.
>>965447 Аааааа , блядь, я уже не человек нахуй... Тогда как правильнее всего поступить. Вот допустим у меня цель написать свое приложение (есть пара идей) для андроида. Что мне делать? С чего начать что бы не обосраться? inb4 ты уже обосраться, проснись заранее спасибо за ответы
Через CSS же можно запилить годнейшую разметку, которая будет отлично смотреться на практически всех экранах. Особенно это касается шрифтов. vw и vh дают ТУ САМУЮ возможность задавать размер текста процентно, например.
Какие еще есть альтернативы такому процентному заданию размера текста? sp или dp вообще не гарантируют, что надпись будет занимать не больше 5% от ширины экрана, например.
>>965695 > Какие вообще минусы у WebView перед TextView? То, что вебвью жрет ресурсов дохуя например? > ТУ САМУЮ Ту самую ненужную? Больше экран = больше контент, для остальных случаев есть intuit/sdp
>>965705 >Ту самую ненужную? Ты знаешь текущую задачу, которую нужно реализовать, чтобы говорить, что не нужно? Это мантры сектантов, "нету - значит и не нужно". Небось, еще до появления Percent(Relative\Frame)Layout'ов то же самое бы сказал.
>>965705 Кстати, как вообще такие библиотеки находятся? Через гугл бесполезно искать же. Сарафанное радио? Собственноручные копания в гитхабопомойке? Вот никогда бы не натолкнулся на это сам.
>>965781 И это за три года. Неужели всем так нравится пердолить пиксели в 100500 вариациях, вместо траты времени на что-то более полезное и интересное?
>>965783 Я пробовал это решение, конкретно мне не подошло, я сам зафигарил себе с десяток размеров под мобилку семидюймовый и десятидуймовый. Идеальная ситуация когда дизайнер сразу рисует какое увеличение тебе нужно. А там мне показалось слишком большой мультиплякатор.
Я правильно понимаю, что андроид разработка, это как фронтенд, только без на джаве и без html и css, а на основе xml, а данные берутся с сервера, или можно сделать стэндэлон приложение, которое и данные хранить будет уметь и в сеть ходить и логика и все?
>>965500 Я бы порекомендовал прочесть какую нибудь макулатуру по андроиду, вроде BigNerdranch, где более менее доступно пояснены основные моменты в разработке. Естественно, что ты нихуя толком не запомнишь, но это даст тебе хотя бы начальный кругозор, дабы не обосраться в темном лесу, при написании даже чего либо легкого. Далее просто создаешь проект и начинаешь потихоньку его пилить, гугля все и вся. Хороший уровень владения чем либо, это когда ты можешь в голове прикинуть сразу несколько путей решения той или иной задачи, а не "а с чего бы вообще начать?".
>>965856 Вот только у меня нет дизайнера, я один, и меня уже заебало тратить время на более чем 4 варианта разметки (2 под ориентацию, и их вариации под планшет). С этими десятками размеров пидорасится инкапсуляция - захочешь где-то сделать изменения и придется в каждый xml-файлик залезть, и ничего не забыть (а ведь они еще и на куски могут быть разбиты, пздц). А потом еще и все это говно запустить на десятке тормознутых эмуляторов. СЛИШКОМ много времени уходит на все это. И часто - с костылями в коде, потому что тот же кастомный шрифт ты хуй задашь через xml, например.
>>965968 >с calligraphy Я слышал про нее, но пока не щупал. Но в принципе и сейчас можно через style. Я больше имел в виду возможности "из коробки", наверное.
А насчет О - это вообще не решение в перспективе лет 5, потому что более старым версиям от этого ни холодно, ни жарко будет (min api 14 не даст этим пользоваться же, например). А делать что-то эксклюзивно под 5% обладателей О как-то не очень.
>>966005 И потом в сабклассе Application закешировать, чтобы один шрифт был загружен только один раз на все приложение, и не было утечек памяти не было через Typeface.createFromAsset(context.getAssets(), fontName);
Ребята, посоветуйте, пожалуйста, ресурс, где можно узнать название всех UI елементов андроида я гуглил, найти не могу, типо боковое меню, верхнее меню, там, кнопка, слайдер, но как они называются на самом деле в сообществе, нигде не могу найти
>>957560 >андроид грохнуть моё активити, но не грохнуть сервис может, и не может наоборот. если сервис грохнет - то только после того как грохнёт активити. такие приоритеты уж у него. поэтому пихай в сервис.
>>957787 армию нахуй, постарайся пробиться в какойнибудь яндекс на стажировку на годик-два во время учебки (там какраз порядка 30-50 платят стажирующимся). заодно и социализацию прокачаешь.
потом поднимешь опыт и можешь удаленку искать. иначе без пруфов того что умеешь могёшь на удалёнку тебя работодателю слишком рисково брать.
Как открыть активити в новом окне на устройствах до API Level 21?
Intent.FLAG_ACTIVITY_NEW_DOCUMENT - доступна только с api level 21
Передача данных из xml разметки в конструктор классаАноним03/04/17 Пнд 21:57:53#296№966257
Всем привет! У меня вопрос, как в конструктор определённого класса передать свойства элементов из xml кода. Дело в том, что я пытался делать вот так https://pastebin.com/DK020UJ0 но благополучно получаю NPE. Помогите советом.
Добрый вечер, господа. Изучаю Java и андроид около месяца, до этого другие языки не изучал, разве что только поверхностно. Никак не могу понять, как получить SHA1 и заюзать google api. Уроков по созданию сетевых приложений я не нашел, а в официальной документации от гуглов хуита непонятная. Подскажи, адекватный анон, как же это сделать или какие уроки загуглить, а то я уже неделю в ступоре
>>966389 >>966391 Что за хейт на ровном месте? Эта доска для того и существует, чтобы аноны делились знаниями и опытом друг с другом. Да, изучаю недолго, да. По видео, по учебникам. Все с чего-то начинают/начинали
>>966257 Это так не работает, убери конструктор нахуй. Если тебе надо в активити что-то передать используй Intent, потом в onCreate всю эту хуйню сделаешь, а данные через getIntent() достанешь.
>>966257 >>966509 И запомни, для любых Application, Activity, Service и Fragment'ов всегда должен быть конструктор без параметров, что бы система могла потом сама восстановить компоненту.
Есть один EditText. Я хочу записать данные с EditText в переменную. Но при создании приложения вылетает. Ругается на последнюю строчку. В может быть чем причина??
>>966513 А вообще ты совсем какую-то хуйню делаешь, кроме того что там может быть пустота и не число, а потому и NumberFormatException, ты почему-то смотришь в onCreate, что очевидно не верно, так как в onCreate там еще пусто скорее всего.
По-приколу сделал для тян подобие "3 в ряд" на обычных вьюшках (GridView, да, я мазохист, и вообще это было в целях обучения работы с ведром). Ей зашло, и она хочет еще. Но вот беда - все это говно уже жутко тормозит, стандартные вьюшки не тянут сотни объектов на экране. Ничего нельзя добавить без удара по производительности.
Улучшатся ли мои дела, если я перейду на Canvas? Не хотелось бы брать простой путь в виде готовых движков, хочется попердолить стандартные костыли. Или с Canvas тоже нет пути?
>>966719 Я так понимаю, SurfaceView предпочтительнее, ибо можно вывод вывести в отдельный от mainUI тред? Но в то же время Canvas из этого SurfaceView не может быть hardware acceleration. Насколько это критично?
>>966735 Я так и делаю, но у меня две матрицы, и два представляющих их поля одно над другим.
Вот когда одно при каждом изменении обновлялся лишь адаптер одного поля - все было еще терпимым, но два работающих одновременно уже не тянет. И это при том, что в адаптерах новое View (с ViewHolder'ом, ага) создается лишь при определенных условиях, а не все сразу.
Каждая ячейка поля составная, часто из нескольких 10-20кб картинок. Суммарно картинки не занимают больше пары мегабайт в объеме, казалось бы, но стоит добавить еще и фон на 500 кб - и тормозить начинает даже с одним полем и адаптером. Хотя, можно было бы подумать над кешированием одинаковых картинок - но я хз, поможет ли это.
При срабатывающих одновременно 50-100 анимациях куча кадров пропускается, вплоть до невидимости происходящего. + Эта же проблема с добавлениям очков над уничтоженной клеткой. И бинго пердольности - сделать так, чтобы при уничтоженной бонус-клетке от нее разлетались шарики к клеткам того же типа на поле, например.
Кроме того GridView, в принципе, вообще хуево подходит для матриц, из-за прибитого гвоздями адаптера и отсутствия нормальной работы со столбцами. Слишком пердольно и костыльно уже. Проще самому написать представление с 0, чем возиться с костылями.
>>966751 Как я уже говорил, я выбрал обычные вьюшки, чтобы поучиться стандартной библиотеке (чтобы взяться за более приложение, не связанное с играми, уже набив шишки). Этим я полностью удовлетворен. Ну и соблазнился сеткой, по примеру всяких уже деланных морских боев и саперов на декстопах.
Привет и сразу к делу, нужно вырезать фон с объекта на фото (например шорты лежат на однотонном контрастном полу, нужно оставить шорты, а фон убрать) заебался - нихуя не получается. Может кто-то подскажет, или сам сделает за вознаграждение
>>957315 (OP) Я все больше наблюдаю вакансий по react native и даже на рассейском фрилансе заказчики часто хотят приложение имено на нем, а ведь Андроид он пока умеет дико коряво в глючно и все равно уже востребован. С ректом видится мне реально есть вероятность того, о чем говорили большевики и нативные приложения медленно но верно начнут умирать и я этому препятствий не вижу, честно говоря. Кто захочет платить в 2 раза больше, когда можно так нехило сэкономить, да и еще фронтенд обезьянку, которые и так в каждой первой конторе водятся, припахать можно, а не искать непонятных разработчиков на swift или kotlin. И, в общем, Антоны, у вас от всего этого еще не пригорает? А то у меня по немногу начинает, с учетовм того, что вкатиться пока только во фриланс получилось, а удаленных вакансий на hh по нативному Андроиду на последние 3 недели было 4 с половиной штуки (я мониторю). Куда, они, сука, делись?!
Особенно забавно на фоне всего этого выглядят те, кто только начинает ботать нативный мобайл, когда уже сейчас на фрилансе 80% заказов на гибридное приложение, сразу под обе платформы. А нативная разработка имеет неплохую вроятность перетечь на реакт по названным выше причинам. Поэтому если кто-то здесь только начинает, то я бы очень рекомендовал выбирать ios а не Android. Вакансий существенно больше и востребованность с недостатком кадров выше. Хакинтош настраивает за день и работает весьма плавно, первое время можно пускать хелло ворлды в симуляторе, а б/у Айфон с рук можно купить за очень небольшие деньги и накатить на него актуальную версию ios. Хотя меня Android и java нравятся и устраивают полностью, но ios сейчас востребованне и вкатиться проще.
И так, Антоны, что делать? Продолжать углубляться в чистый натив и надеяться на то, что хотя бы процентов 40 рынка останется за ним или понемному начинаться учить сраный js?
>>967806 У меня приложение использует bluetooth и алгоритмы ЦОС. При этом ключевой момент - низкое потребление аккумулятора. Как ты предлагаешь это на реакте делать?
Сап, котаны, а пробовал ли кто-нибудь загоняться по задержанной синхронизации данных в отдельном процессе при отсутствии интернета ? Вопрос собственно такой. Сейчас у меня есть проект, построенный по чистой архитектуре. Все работает в одном (основном) процессе, все репозитории-usecase-ы инициализируются соответственно в нем. Проблема появляется, когда мы откладываем какое-то действие, и приложение умирает.
Логично в таких случаях использовать компонент типа JobScheduler, ну, или просто самописный сервис, работающий в отдельном процессе. Но тут всплывает проблема номер 2 - необходимость либо дублировать инициализацию всех компонент domain и data слоев в этом(-их) сервисах, либо же инициализировать их только там, и болтать с ними из основного процесса через AIDP/Intent-ы, что, в общем то, далеко от предела мечтаний чуть менее, чем на дохуя.
>>968218 В зависимости от сложности проекта нужно смотреть, да и специфики. На больших - лучше выбрать чистую/VIPER, сделаешь скелет, пропишешь основные компоненты и дальше со скоростью экран/сутки штампуешь.
Если речь идет о мелких приложениях - то банального MVP будет достаточно, да и тот не сильно обязателен. Можно даже попробовать что-нибудь на service + Broadcast receiver/другой шине запилить, чтобы быстро было
Есть вьюха 3 пик, которую я запихиваю через include в другую. Когда ставлю layout_height в match_parent, то все смотрится нормально 1 пик. Когда выставляю более логичное значение wrap_content, то вьюха съезжает вниз 2 пик. Что за хуйня анон?
Есть некий layout, на котором есть единственная view с match_parent размерами, которая не рисуется и всегда возвращает height/width -1. Почему такое может быть?
Джаву знаю, решил вкатиться в андроид, нашел школу мобильной разработки от яндекса (бесплатная), гляньте плиз вступительной задание, реально до 24 апреля такое сделать, если андроид с 0 изучать или даже не пытаться и спокойно учить или может там изи и просто выглядит страшно?
/pr, я просто хочу сделать обычный get на страничку гита. стаковерфло примеры все как один выдают пикрил один. инет на телефоне есть. Что делать? Реально нужна помощь, иначе я тупо забью на всё это
>>969867 У меня знакомый при весьма хуевом знании жабы да и ведра вроде как сделал (смотрел его демку). Приходилось правда разъяснить ему че такое архитектура и с чем ее нужно подавать, но в целом - задание довольно простое. Мой совет - не используй там никаких ORM и юзай поменьше фреймворков. Тогда получится нормально запилить в срок. Начнешь ебаться с сторонними фреймами - хуйцов по срокам соснешь
Вот смотрите. Со стрингами всё нормально, если щелкать на эту штуку, то в логах всё выводится. Проблема в том, что изначально он находится в выключенном состоянии - так надо, но другие методы почему-то не видят стринг language. То есть стринг так-то задан и по-идее должен работать, но он работает только если я включу и переключу обратно Switch. Как поправить?
>>970231 >>970236 Но это бы просто не поменяло текст. а текст меняется будто инета нет. Блин может это из за того что у меня на телефоне api4 а собираю в api25?
>>970238 > а текст меняется будто инета нет Ну у тебя по идеи должна была выпасть ошибка Only the original thread that created a view hierarchy can touch its views. > api4 Где ты это откопал?
>>970483 Обязательно. Я кстати нашел несколько хороших open source подобных ТЗ. Как их грамотно спиздить и выдать за свои чтобы не запалил? Или можно смело пиздить ВСЕ ?
Ребят, что делать, если android эмулятор начинает дико тормозить, пропускать кадры грузиться 10+ минут хотя до этого всё работало и ни одной строчки кода не было написано что бы всё так сломать.
>>957315 (OP) Аноны, как правильно сверстать элемент который на пик? Я пока вроде сделал и кажется получилось то что нужно, но меня гложут сомнения, что вложенность слишком большая и я не умею в верску UI. Аккуратнее и проще сделать как-то можно или и так неплохо?
>>970792 Не самая глубокая вложенность, терпимо на самом деле, можно использовать вместо <l><i><t></l>, один TextView, а можно использовать ConstraintLayout, тогда все вообще в одном перенте будут.
>>970801 >можно использовать вместо <l><i><t></l>, один TextView
drawableLeft/right у TextView не позволяет размер иконки менять, они слишком здоровы были, поэтому пришлось отдельным ImageView сделать. Про ConstraintLayout надо почитать, спасибо
>>970804 >drawableLeft/right у TextView не позволяет размер иконки менять yep, это основная проблема, потом еще и не расположить как надо. Еще можно попробовать RelativeLayout или даже PercentRelativeLayout
Решил сделать круглую картинку. Стал гуглить и обнаружил, что изкаробки решения нет. Везде какие-то вилосипеды. В результате заюзал Fresco. Все правильно сделал?
ГАЙС. Вопрос про организацию базы данных. Пишу программу, которая будет хранить данные о бытовых счетчиках. У СЧЕТЧИКА БУДЕТ: Имя, тариф, показание, id, дата последнего показания.
И счетсчиков можно будет добавлять несколько. КАК организовать БД правильней? Сколько таблиц? разделять не разделять? Что делать?
>>971071 Я бы сделал две таблицы: 1) id-счетчика, имя счетчика, тариф 2) id-показания, показание, дата, id-счетчика + индекс для показаний, и тебе не надо хранить последнее показание отдельно;
Аноны, как от Яндекса взять дополнительную инфу по переводу? Как на скрине.
Пока что у меня получается только моментальный перевод через TextWatcher
update: пока писал нашел инфу сам, дополнительная инфа по переводу запрашивается через API Яндекс словаря. (Это для анона который со мной делает это ТЗ)
Анон, помоги с вопросом. Внутри функции есть исключение try catch. Мне нужно, что функция возвращала return-ом переменную. Но как сделать, чтобы return срабатывал в поле try? Пример кода http://pastecode.ru/0eb518/
>>971593 А ты хорошо знаешь Ведроид? Какой опыт в программировании? Просто интересно. Я другой анон, не тот, которого ты спрашиваешь мой телеграмм - ambientbro
>>971593 У меня наоборот сделан моментальный перевод (через AsyncRequest) , а как подрубить словарь я еще не допер. Активно делаю только с выходных, до этого проходил всякие туториалы по андройду. А какие контакты нужны? У меня сейчас телефон в ремонте, так что могу либо фейкопочту либо скайп там или дискорд.
>>970792 Еще такой вопрос в догонку. Вот такие дырки во вьюхе сделать реально? Важно чтобы тень от cardview правльно отображалась, т.е. додавить drawable цвета фона не выйдет. Пока решение не хочет гуглиться, есть какие-то варианты?
парни, где почитать подробно про архитектуру приложений на андроид?
Сидел, писал приложение и до какого-то этапа всё понимал. После чего стал охуевать от кучи собственных костылей, левых ненужных классов и явно лишних действий. Понял, что нужно было в начале всё на листике где-то расписать "что и как будет", после чгео только браться.
Кто-то объяснит мне наконец, зачем нужны все эти подписи private?
Я знаю, что это такое и почему его делают. Но блять! Если у меня в классе всего ОДИН стринг, то нахуя его делать приватным? Кто его дернет? Что с ним станет? Или это просто пишут ради написания, типа ебать умный дохуя написал ееееее ?
Гайс. Вопрос про структуру БД. из поста >>971071 Я решил сделать такую структуру: ТАБЛИЦА СЧЕТЧИКОВ: 1) id счетчика 2) Название 3) Начальное показание ТАБЛИЦА ПОКАЗАНИЙ: 1) id показания 2) показание 3) дата показания 4) тариф 5) id счетчика
и тут меня осенило: У меня же разные типы счетчиков на разных фрагментах (СВЕТ, ГАЗ, ВОДА). Счетчики это элементы ListView. Мне надо вводить новую колонку для счетчиков? ТИП СЧЕТЧИКА
>>971785 Чуть больше полугода работаю джуном, одно маленькое приложение в сторе.
В принципе сейчас могу что угодно сделать под ведро, вопрос только в качестве, особенно когда проект разрастается. Тестовое моё мне уже не так нравится как в начале работы.
>>971824 >AsyncRequest Это встроенное в ведро что-то? Я за обращения в сеть напрямую через стандартное api вообще не шарю, заюзал ретрофит. >А какие контакты нужны? Ну лучше тоже ТГ, соберем конфу раз тут много желающих
Господа, какие существуют (существуют ли?) способы преобразования аудио аутпута на уровне приложения? Мне бы бинаурально преобразование сделать, или для этого нужно лезть в NDK по самые помидоры?
Ведрач, выручай, в какую сторону копать? Необходимо, чтобы приложение написанное на react-native запускалась при запуске девайса, а так же, чтобы это приложение нельзя было ни свернуть, ни выйти из него. Сам вебразраб, в андроиде не силен
>>972379 Для запуска: https://habrahabr.ru/post/271663/ Дай угадаю, киоск? Насчет не сворачиваемости не скажу, но можно сделать сервис который запускает приложение если оно не запущено и тупо по таймеру чекать, вообще все зависит от условий на устройстве, с рутом ты конечно многое сможешь сделать. Другое дело что все это надо делать вне js'a.
>>972382 >Насчет не сворачиваемости не скаж Цитирую заказчика >при попытке свернуть приложение центральной кнопкой или удержанием других комбинация выскакивает надпись, что "политика безопасности запрещает использование диспетчера задач". Приложение развернуто на весь экран.
>>972843 Посмотри презентацию Григория Ключникова на тытрубе, он рассказывал о том, как он кодировал и декодировал видеопоток. Принцип будет примерно тем же (в NDK с его слов он не лез)
>>971082 Лучше продублировать дату последнего показания в таблицу со счетчиками и поставить триггер на insert в показаниях, который будет автоматически обновлять дату в табице счетчиков при внесении нового показания. да, я, блеать, ненавижу joinить, когда можно избежать этого
>>970808 >или даже PercentRelativeLayout Фу-фу-фу, говномес, трубочист, еретик. Сжечь нахуй. Каким ебланом нужно быть, чтобы не вектор выстанавливать в процентных значениях ?!
>>970218 Умри. Просто, блять, сдохни. Ты из какого потока View обновляешь, пес?! Я тебя сейчас за это за щеку обновлю, сука, накачаю тебе апдейтов полон рот.
>>970078 И что? Само приложение тянет максимум на upper-junа, там нету нихуя сложного. Все решается без каких-либо сложных архитектурных решений. Не требуется работать со сложными компонентами API Android, ну и так далее.
>>972894 даже за это можно ноги-руки поотрывать процентах в 90 случаев. В офф. нотациях про проценты ни слова, так хули ты решил вдруг что нужно мутить что-то, о чем нормальные дяди ничего не говорят?
>>972895 В смысле? Про эти лэйауты есть в статье про саппортные либы, у меня есть ощущение что в некоторых случаях эти лэйауты использовать лучше чет констрейнт. >>972896 Спасибо.
>>972910 Несмотря на то, что они саппортные, в материал дизайн нотации очень четко прописаны 99,9% отступов в dp. Не следует делать адаптивку для мобайла, это плохой тон.
Комрады, хочу написать аппликуху для дроида. Мне нужно что-то с минимальным порогом входа. Я охуел от тормознутости и огромности AndroidStudio и мне перехотелось ее использовать. Есть ли что-то более простое, с точки зрения Unix/VIM юзера? Мне нравится FP, и не нравится Java/XML, поэтому выбираю между Kotlin и Clojure из языков. Приложение достаточно простое, по сути - демон.
>>972916 А как тогда без адаптивки учитывать, то что например, в лендскейпе у некоторых дейвасов есть нав бар, а у некоторых нет, я в процентах в констрейнте/персенте раскидаю и если пользователь сделает размер текста больше фиксированные отступы не пожуют текст и все хорошо. >>972922 Возьми котлин, у кложы будет серьезный оверхед на мой взгляд. Компилировать можешь через консольку и заливать через нее же. Я думаю для вима даже есть плагины.
>>972933 Ну давай отдели экран нексуса 5 от экрана например S5. У одного есть навбар на экране, у другого хардварные кнопки. Или я накачу кастомную прошивку и сделаю себе в довесок к хардварным кнопкам навбар на экране. В результате теряю ~40dp во горизонтали из-за навбара.
>>972940 Что за пушку я прочитал? Как ты отличаешь кастомную от обычной, наркоман? Гапс это кастомная или родная? А если я на хуеми линедж накачу, или я купил хуейзу и хочу туду от васян666 запердолить, или мне надоела самсунговская анальная хуйня.
>>972963 Если человек будет обращаться с проблемой в тп, с него спросят данные о девайсе. Или если в статистике будет крэшлог - сначала будут смотреть на данные о девайсе, и если это официалка - уже фиксить
Аноны, какой самый оптимальный способ реализовать bottom navigation view ? Я запутался что такое activity и что такое fragment, получается делать только через обычное меню (три точки сверху слева) но это не то что нужно. Ссылку или что гуглить хотя бы
Здарова, двачаны. Маза такая, есть битмап фотки его подгружаю в ImageView, потом модифицирую и модификацию записываю в другую переменную, и из другой переменной я закидываю в ImageView, всё меняется всё хорошо, но после смены битман фотки становится recycled и я с ним работать не могу хотя надо, помогайте код выкладываю ссылкой, внизу сообщение из дебага: https://pastebin.com/kZqUEvRc
Есть стринга, в которой набор слов, надо выбрать те, которые начинаються с определенной буквы, а после неё идут цифры. Как это сделать, или хотя бы как гуглить?
>>973655 regex >>973657 Данные у него идти не хотят, пиздос, еще и секретный дохуя, вот ты бы выложил кучок кода на пастабин и тебе бы уже кучу ответов за щеку напихали.
Аноны, я вконец запутался с bottom navigation view. Нашел два примера, в одном все меняется через fragmentы В другом меняется видимость элементов: if(layout.equals("main")){ main.setVisibility(View.VISIBLE); favorite.setVisibility(View.GONE); settings.setVisibility(View.GONE);
В стандартном bottom navigation view можно убрать текст под иконками? чтобы они были выровнены по центру? Если оставить пустой title то иконки как бы ближе к верху стоят.
>>974567 Ну, у тебя есть выбор: писать на активно разрабатываемом языке с удобным сахаром, комфортной работой с данными и минималистичным синтаксисом, или писать на старом, медленно развивающимся языке, на котором ты для элементарных задач будешь фигачить тонны циклов и страдать от синтаксиса. Сам решай. Котлин умирать совсем не собирается.
>>971938 в гугле по тегам, MVP(либы: mosby, moxy), MVVM(не актуально вроже), VIPER (не пугайся, что там про айфон в основном - для ведра тоже актуально), (еще есть даташины и подобные - но вроде уже считается не актуальным, в том смысле что возлагали надежды, которые не оправдались - вместо нагромождения еболы в активити получили колбэкхэлы) + посмотри что такое DI в ютубе, кстати, есть довольно много видосиков на тему + на десерт: луркай гитхабы
>>971939 рассмотрим два ситуейшена: у тебя есть просто паблик стринг и есть прайват стринг с геттером и сетером. Проходят дни, недели и ты понимаешь что этот стринг нужно не просто устанавливать\получать, но еще и как то предварительно проверять на нулл или менять. И в случае с паблик стрингом - тебе придется пройти по всему своему говнокоду и поменять везде на то, что ты хочешь. В случае с геттером\сеттером - ты поменяешь код только в одном месте - в самом геттере\сеттере. На самом деле я бы посоветовал тебе не использовать private, а наступить на эту граблю самому, тогда до тебя дойдет вся магия.
Анон, если в своем приложении буду воспроизводить вэбэмки с музыкой и прочим контентом, то гугл не начнет ругаться на нарушение авторских прав? Приложение будет нечто плеера, в котором конкретно будет указан сервак с тем самым контентом.
Дебажил это говно, массив байтов нормально заходит, но пикча не декодится, в чем проблема? пробовал сохранять в интернал мемори, а потом брать оттуда, та же хуйня
Нужен прогер, для разработки и дальнейшей работы над мобильным приложением. Опыт работы обязателен. Мои контакты [email protected] Зарплата от 500зеленых в месяц. В перспективе рост зп В письме рассказать немного о себе, о своих проектах и т.п., сколько готовы уделять времени работе, возраст.
> Хочу вкатиться в разработку под 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. Есть лямбды, стримы и делегаты. Можно использовать в проекте вместе с кодом на Java.
> Есть что-то кроме нативных приложений на Java/Kotlin?
- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Спрашивать в C++ треде.
- Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде.
- PhoneGap/Ionic/Titanium/ReactNative — имя им javascript, принципы у них разные, первые три попытка в кроссплатформенность одного кода, ReactNative проповедует другой подход, а именно написание разного кода но на одном языке. Популярность у них разная как и размер комьюнити. Вопросы по ним — в js-тред.
- BugVM — кросс-платформенный фреймворк, написанный на Java. Форк невинно убиенного RoboVM.
> Хочу писать игры!
LibGDX или Unity. Спрашивать в /gd/.
> Что нужно, чтобы взяли джуниором? Что учить в первую очередь?
Нужно хорошее знание Java, понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library, shared preferences, SQLite), знание популярных библиотек типа Retrofit + Glide/Picasso. И хотя бы оно готовое приложение.
Предыдущий тред: https://2ch.hk/pr/res/940781.html