Android Development ThreadТред для тех, кто пытается вкатиться в андройд разработку или что-то похожее. По возможности стараемся угощать ньюфагов чаем и поливать друг друга радугой.> Хочу вкатиться в разработку под Android! С чего начать?С видеокурсов от Udacity. Они бесплатны и затрагивают основы разработки даже если не умеешь писать на Java.https://www.udacity.com/course/android-development-for-beginners--ud837Для тех, кто не хочет учиться по юдасити существует скучный кат от гугла: http://developer.android.com/training/index.htmlТак же есть книга, которая затрагивает основы разработки и имеет 2-е издание с 2017 года: https://www.amazon.com/Head-First-Android-Development-Brain-Friendly/dp/1491974052Большинство приложений написано на Java, необходимо понимать что ты пишешь, в уме достаточно знать базовый Core т.к. 90% времени придется тыкаться в Android SDK. Полезные обучалки от анона:https://habr.com/company/golovachcourses/blog/215275/ - смотри Головачаhttps://www.amazon.com/Head-First-Java-Kathy-Sierra/dp/0596009208 - книжка для ньюфагов. Хорошо заходит.https://www.amazon.com/Thinking-Java-4th-Bruce-Eckel/dp/0131872486Неплохим вариантом для изучивших джава будет книга https://www.amazon.com/Effective-Java-3rd-Joshua-Bloch/dp/0134685997Алсо можешь читануть паттерны, рано или поздно все равно базовое знание понадобиться https://www.amazon.com/Head-First-Design-Patterns-Brain-Friendly/dp/0596007124Существует два текстовых ресурса для закрепления андройда на русском. Первый - несмотря на старость описывает базовые вещи, на которых построены мощные либы, второй - продавшийся говноед с котиками http://startandroid.ru/ и http://developer.alexanderklimov.ru/android/https://commonsware.com/Android/ - толстая книга для гиков.Так же можешь смотреть видосики от Mail.Ruhttps://habr.com/company/mailru/blog/345252/https://github.com/ybereza/technotrack-resources - ресурсы к лекциямИли от Яндекса. В некоторых моментах спикеры рассказывают важные детали, которые кроются в мелочах:https://www.youtube.com/watch?v=5EvxWifIgro&list=PLQC2_0cDcSKBNCR8UWeElzCUuFkXASduzВ дальнейшем потребуется базовое знание SQL, понимание XML и JSON.> Я прошел курсы Udasity, а дальше что?После прохождения курсов у тебя должно сложиться базовое представление о создании приложения; жизненные циклы Activity/Fragments, AsynsTask, Http, Json, SQLite.Дальше закрепляешь знания путем просмотра видосов выше + Написание парочку приложений на свой вкус. Так же стоит уделить внимание BroadcastReceiver, IntentService, поиграться с Loader's, хендлерами, Contest providers и прочее.>Не могу разобраться в потоках. Хендлеры, хуендлеры хуйтаски. Как быть?http://codetheory.in/android-handlers-runnables-loopers-messagequeue-handlerthread/ - Хорошая статья, которая экономит время. После нее можно сразу переходить и тыкаться в хендлерах.https://blog.mindorks.com/android-core-looper-handler-and-handlerthread-bd54d69fe91a - еще одна от миндоркса.https://codelabs.developers.google.com/codelabs/kotlin-coroutines/index.html#0 - изучение корутин>Хочу изучать популярные либы и не быть говноедом!Если ты сразу после курсов переползаешь сюда - будь готов, что ты не будешь знать как это делается под капотом.Retrofit - стандарт для взаимодействия с сетью. Вместе с ней можешь изучать либу okhttp3. Так же для справки можешь гуглить volley.RxJava - тяжеловесная либа. Одно из решений для выполнения кода в бекраунде.[YouTube] KotlinConf 2017 - RX Java with Kotlin in Baby Steps by Annyce Davis - rxJava с нуля[YouTube] RxJava доставляет Артём Зиннатуллин - на русском[YouTube] Managing State with RxJava by Jake Wharton - rxJava[YouTube] Making Retrofit Work For You by Jake Wharton - retrofitНеплохо было бы и изучить MVP. Для самообразования можно написать его голыми руками или прогуглить, как это делается.https://github.com/ArturVasilov/AndroidSchool - здесь рассматривается архитектура, и как ее ели с 2011 года.MVP:https://javarush.ru/groups/posts/505-mvp-v-android-dlja-samihkh-malenjhkikh - для пониманияhttps://github.com/Arello-Mobile/Moxy - плюшка для поворотов экранаhttps://github.com/sockeqwe/mosby - англоязычная плюшкаMVVM - костыли от гугла:Для нормального понимания желательно знать AAC.https://startandroid.ru/ru/courses/architecture-components.html - свежие уроки от Димонаhttps://proandroiddev.com/the-missing-google-sample-of-android-architecture-components-guide-c7d6e7306b8f - для продвинутыхПример MVVMhttps://github.com/ericmaxwell2003/MvvmTipCalculatorЭто всего лишь обертки, чтобы вынести логику из views. Для более углубленно изучения можно попробовать почитать this: https://habr.com/company/mobileup/blog/335382/Пример на котлине:https://github.com/hitherejoe/GithubTrending> Хочу анимировать мои говноподелки!https://www.youtube.com/watch?v=dzB-1VlHJW8Онли теория. Первые двадцать минут покрывают больше половины статей, которые можно найти на медиуме и т.д.Здесь побольше практики на любой вкус: https://labs.ribot.co.uk/exploring-meaningful-motion-on-android-1cd95a4bc61dТак же можно подробно почитать про смены сцен: https://blog.prototypr.io/applying-meaningful-motion-on-android-a271a873bd78> Не хочу писать на Java!- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17.05.2017 поддерживается официально.[YouTube] Лекция 1. Kotlin 101[РАСКРЫТЬ] - свежие лекции на русскомhttps://www.amazon.com/Kotlin-Action-Dmitry-Jemerov/dp/1617293296 - библияhttps://kupdf.com/download/kotlin-for-android-developers_59a05e2ddc0d60992a18496b_pdf - Kotlin for Androidhttps://www.udacity.com/course/kotlin-for-android-developers--ud888 - курсы Udacity> Есть что-то кроме нативных приложений на Java/Kotlin?- Flutter - кросс-платформенный фреймворк от Google. Js с аля строгой типизацией. Если совсем поехавший можешь начинать с него.https://flutter.io/docs/ - документацияhttps://www.udacity.com/course/build-native-mobile-apps-with-flutter--ud905 - курсы от UdacityОстальные:ReactNative — мочаскрипт во всей красе.- PhoneGap/Ionic/Titanium — имя им мочаскрипт-младшие, принципы у них разные, первые три попытка в кроссплатформенность одного кода. Популярность у них разная как и размер комьюнити. Вопросы по ним — в js-тред.- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Спрашивать в C++ треде.- Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде.- BugVM — кросс-платформенный фреймворк, написанный на Java. Форк невинно убиенного RoboVM.> Хочу писать игры!LibGDX - слишком медленная параша для больших проектов, но познакомится можешь. Unity - для адекватных, Corona SDK, LOVE, Defold и другие. Спрашивать в /gd/.> Что нужно, чтобы взяли джуниором? Что учить в первую очередь?Нужно хорошее знание Java, понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library и ее версии, shared preferences, SQLite, Handlers, Executors, Content-Providers), знание популярных библиотек типа Retrofit + Glide/Picasso + RxJava2 + Dagger2(по обстоятельствам), понимания СОЛИД и других паттернов проектирования. И хотя бы несколько готовых приложений.Полезные ссылки:https://www.youtube.com/channel/UCSwuCetC3YlO1Y7bqVW5GHg - канадский челик, поясняет за архитектуру и отвечает на разные вопросы на стримах.https://github.com/toddmotto/public-apis - бесплатные API для создания приложений.https://github.com/AlexeyZatsepin/Android-ORM-benchmark - бенчмарки на вопросы о том, какую БД выбирать.last >>1270595 (OP)
>>1290694>Архитектура.Архитектура дошкольного уровня.>И заебало, что в каждом андроид-треде находится "умник"Иди нахуй. Когда легаси код встретишь тогда и поймешь.
>>1290698>Архитектура дошкольного уровня.Ты - даун. Если паттерн подразумевает, что одна часть кода разделяется с другой по разным классам и\или пакетам - это уже архитектура приложения.>Иди нахуй. Аргумент школьника, сьебавшего пораньше с уроков.
>>1290716> Ты - даун. Если паттерн подразумевает, что одна часть кода разделяется с другой по разным классам и\или пакетам - это уже архитектура приложения.Вот только MVwhatever такое разделение только для презентационного слоя подразумевает. И про пакеты там ни слова нет, кстати.А что он про легаси сказать хотел я хз.Мимо
>>1290716> Если паттерн подразумевает, что одна часть кода разделяется с другой по разным классам и\или пакетам - это уже архитектура приложения.С таким определение и адаптер, и обсервер - архитектура.Предлагаю пойти дальше: есть хотя бы один класс, значит это архитектура.
>>1290716>Ты - даунНет ты.> Если паттерн подразумевает, Уже на паттерны сваливаем. Молодой человек, у вас биполярочка.
>>1290732>прекрати уже себя таким дебилом выставлять.Маняоправдания подъехали. С кем я блять в одном треде сижу, пиздец.
>>1290694>Есть, чего ж нет.Кстати, положение списка сохраняется само собой? А то в гугловском примере для этого ничего не предпринимают.
Пишу уже больше года, даже немного вкурил clean arhitecture. Но до сих пор боюсь делать кастомные вьюшки и так не научился писать сервисы, аля ворк менеджер потыкал и все. Как перебороть свой страх?
>>1290987хуетлин бляд, схуяли то ваще?флаттер и дарт жрать будете (и урчать за обе щеки, а не тонны бойлерплейта писать и КОМПИЛИРОВАТЬ МИНУТАМИ РАДИ ОДНОЙ БЛЯД СТРОЧКИ КОДА)
>>1291012Не будет. Дарт даже внутри гугла никому не сдался. Ну а Го просто напросто неподходит для прикладного программирования.
>>1290987>на 95% схожи, разницы никто не заметитС этим я бы поспорил, если ты смотришь на хеллоуворд то на этих двух языках он будет выглядеть похоже. Синтаксис похож, но тоже много отличий(guardы и распаковка в if let тут котлин кстати лучше, именование аргументов, обработка исключений)Система типов в свифте где-то богаче(value types, reference types, enumы c ассоциированными значениями), где-то насасывает у выдумок одерски + в котлине эти выдумки еще немного улучшили(генерик типы в swift инвариантны кривоватая система с assotiated types).+. в свифте есть нормальные экстеншены и protocol экстеншены, в котлине экстеншены попроще.В пятом свифте еще обещают async/await и акторы.
Что-то туплю с Dagger 2.Допустим, я хочу иметь одну и ту же модель/зависимость на все экземпляры активити в бекстаке. И при этом чтобы она не висела постоянно в памяти, как с обычными синглтонами через статический метод, а собиралась сборщиком мусора, когда последний экземпляр активити сдохнет.Или хочу иметь одну модель активити и фрагмент.Как это можно реализовать? И какую помощь в этом дают Scope'ы?Во всех примерах либо все компоненты валяются в полях Apllication (и постоянно висят в памяти, как следствие), либо для каждой активити в поле хранится свой экземпляр компонента, которые, конечно, на хую крутили мои хотелки иметь между ними что-то общее.
>>1291027https://google.github.io/dagger//android.htmlПодскажите, знающие, вот если сделать по гуглопримеру - это даст то что мне нужно?
>>1291027>я хочу иметь одну и ту же модель/зависимость на все экземпляры активити в бекстаке. И при этом чтобы она не висела постоянно в памяти,Ты не хочешь, чтобы она висела в памяти, но хочешь иметь ее в каждом активити? Что? У тебя глобальный объект на весь эппликейшен.Чем это>Или хочу иметь одну модель активити и фрагмент.Отличается от этого:>либо для каждой активити в поле хранится свой экземпляр компонента, которые, конечно, на хую крутили мои хотелки иметь между ними что-то общее.
>>1291059>Ты не хочешь, чтобы она висела в памяти, но хочешь иметь ее в каждом активити? Что? У тебя глобальный объект на весь эппликейшен.Допустим, я хочу, чтобы первая активити дергала некий хелпер, который что-то там обрабатывает. И чтобы изменения в нем отображались во всех открытых одновременно с этим экземплярах этой активити. И как плюшечка - чтобы когда в стопке не будет экземпляров этой активити и ссылок на компонент - чтобы зависимость собиралась сборщиком мусора. То есть, мне нужен один компонент на экземпляры одной активити. И не синглтон при этом, который будет висеть в памяти пока JVM не сдохнет, даже если какой-то элемент зависимости дергается всего один раз на пол шишечки. Грубо говоря, что-то типа пула компонентов, который чистится, если на число ссылок на элемент = 0.>Чем это>Или хочу иметь одну модель НА активити и фрагмент, который прикреплен к ней.>Отличается от этого:>либо для каждой активити в поле хранится свой экземпляр компонента, которые, конечно, на хую крутили мои хотелки иметь между ними что-то общее.Тем что во втором случае это либо глобальный синглтон (и тогда вообще хз нахуя нужна эта ебля с сабкомпонентами, можно все заливать в ApplicationСomponent), либо вообще разные экземпляры компонентов.В первом случае компонент один и он не глобальный синглтон. Ссылки пропадут и они почистится.
>>1291089Он вообще никак на это не влияет, насколько я понял. Два разных экземпляра компонента, у которых один и тот же scope - вроде как выдают разные объекты с @Provides методов. Scope гарантирует, что будет один и тот же экземпляр зависимости лишь в пределах конкретного экземпляра фрагмента.
>>1291248>>1291249Сам по себе scope ничего не гарантирует, это просто метка. Управлять его жизненным циклом ты сам должен.
>>1291020Меня постоянно кринжит два братца урода. Иногда работаю над айосью на свифте, иногда над андроидом на котлине. Синтаксис хуйня, если не скачешь туда-сюда проблем не будет, тут больше в подходах отличия, но это уже отличия андроида/javaOOP от эпловской экосистемы.
>>1291066Хех, заебывался такой проблемой недавно, нихуя номрального не нашел, кроме этого https://proandroiddev.com/lifecycle-aware-dagger-components-8c74d01fa15Мне не понравилось что активити и фрагменты занимаются созданием компонент и пляски при пересоздании активити/фрагмента.Переделал для себя так что активти/фрагменты возвращают ключ п которому (суб)компонента хранится в мапке, и есть фабрики которые используются если для такого-то ключика нет компоненты.При дестрое сразу релизим (суб)компоненут, но еще не удаляем из мапки, а делаем это через 5 секунд, в итоге если активтитя/фрагмент вернулись они получат старый инстанс по своему ключу, плата за это - не сразу мрующие коммпоненты. Впрочем я потом докинул спейифических рычкагов для немедленного убиства компоненты (логаут).Вот еще статья про скоупы http://frogermcs.github.io/dependency-injection-with-dagger-2-custom-scopes/ там этот впорос приподнимается но бзе примеров, а ручное дергание высвобождения компонент как-то meh.А еще в Conductor этой проблемы нет, так как контроллер не мрет от поворота.Возможно в твоем вариант ручное управление жизнью компопнент самое то.
Еще вспомнил что конкретно для активтией это легко запиливается через nonConfigurationInsatnce, а для фрагментов можно по старинке через retain, но мне чет не зашло.Ну и мне кажется что гугловская приблуда с этим тоже справляется как-то, но я хз.
>>1291361>http://frogermcs.github.io/dependency-injection-with-dagger-2-custom-scopes/>>1291364Охуенные статейки, то что нужно, сяп.
Есть URL для ретрофита вида@GET("bla_bla_bla/bla?client=bla&hz=12&pz={insert}q=hui")Вопрос. Как, блядь, вставить параметр pz, если нельзя передавать в метод параметр @Path? А если вставлять как @Query - то как вставить в середину только один параметр, не передавая вообще все параметры?
Пытаюсь собрать приложение с гитхаба.Установил ведроид-студию, поставил NDK.Запускаю gradle.assembleRelease, получаю пикрелейтед: Android NDK: Invalid NDK_TOOLCHAIN_VERSION value: 4.9. GCC is no longer supported..Не пойму что за хуйня. NDK больше не поддерживает компилятор GCC?Если тупо проставить в Application.mk версию clang, то проект не собирается.Я могу поставить старую версию NDK параллельно или взамен последней?Какая последния версия NDK с поддержкой GCC 4.9?
>>1291699Application.mk формат больше не поддерживается. Переписывай всё для cmake и последней версии ndk.
>>1291708Звучит, конечно, прикольно, но это написанный не мной легаси-код и мне как-то не по приколу там все переписывать.
>>1291731Ну на то он и легаси, чтобы быть неподдерживаемым говном.Но может там тривиально всё обновляется, что за проект-то?
Поставил предыдущую версию NDK, где еще есть GCC, теперь блять падает при переименовании каких-то файлов. Причем каждый раз рандомных.Из-под админа запускал, та же хуйня.Че делать с этим?
>>1291844Похоже на то, ты вообще несёшь какую-то хуйню.Свой дашчан блять. Форк блять или хуй его знает что ты под этой фразой имеешь ввиду.Какой-то шизоид.
>>1291871>Похоже на то, ты вообще несёшь какую-то хуйню.Несешь ее ты>Свой дашчан блятьИ что? Сам сижу на нем и норм.>Форк блять Нахуй мне форкать говно? Максимум что там полезно, так это увеличение сужении картинки при клике.>Какой-то шизоид.Шизойд это ты.
>>1290693 (OP)Ведробояре, подскажите какую нибудь толковую книгу по вкатыванию в Андроид для людей с опытом. те не для новичков
>>1291898Поехавший блять.Это называется "Разрабатываю мобильный клиент для двача".Но ты же не можешь связно мысли выражать.Затираешь тут про какой-то "свой дашчан", хотя твоя хуйня не имеет к дашчану вообще никакого отношения.На чем делаешь? Только под ведро? Или у тебя там реакт нейтив какой-нибудь? Кто-нибудь кроме тебя им пользуется?
>>1291913Чет ты не похож на неновичка.Люди с опытом понимают, что в хуйне уровня андроида, где новая версия каждый месяц выходит, в книгах по-дефолту не может быть актуальной информации.И просто идут читать сайт ведра как первоисточник.
>>1291918>Только под ведро? Пока да. На иосе пока аламофаре тыкаю.>На чем делаешь?Конечно же джава; мокси + клин архитектура + многомодульность.>Кто-нибудь кроме тебя им пользуется?Пара друзей тестировщиков. Внутри хуйню не проблема написать, по большей части вожусь с UI, чтобы было комфортно. Например свайп вправо на ответ, как в телеге.
Блин, constraint layout выглядит круто, но мне не нравится, что это все используется в одном классе. А вдруг я захочу bottom navigation с 5 элементами и неебической анимацией? Мне придется создать 5 леяутов, присвоить в он креейте и менять. А у них отдельные свои компоненты.Алсо, сейчас на работе так и сделал, только у меня 3 итема в навигации боттом.Эх, если бы они сделали анимационный переход between фрагментами or активитями то я бы навечно в андройд остался.
>>1291919>И просто идут читать сайт ведра как первоисточник.Отличный совет навернуть несвежего говна, которое даже палкой в виде сторонних библиотек зашквар трогать.
>>1291938>Отличный совет навернуть несвежего говна,Не то, чтобы говно. Но вот старые волки продолжают сидеть на intent service например. Андройд сейчас неебически здоровый становится, растет с каждым месяцем все больше и больше. Уже джуны пошли, которые отродясь handler не видели и даже не знают о нем. Попивают смузи и крутятся в реактивщине.
Почему прокуртка ресайклера лагает? На определенных элементах график использования GPU улетает в небеса (тот что на телефоне), если их (элементы) убрать все тип топ. Используется кастомный SpanSizeLookup, для проблемных элементов возвращает в качестве размера всю строку (на вcю ширину).Проблема не в байнде элемента (проверял с пустым). Похоже что при инфлейте, но блять, там же верстка простейшая https://pastebin.com/581JV8ys!Время инфлейта + пустого конструктора холдера - 55 - 75 ms (высокие занения типа 120 только при первом инфлейте). Overdraw показывает вменяемые зеленые области.
Сука ебаный рот это ведра, ручное создание забирает 1-2 ms, 40 в первый раз. https://pastebin.com/4QCSpSfd
>>1292376Да, кеширование, но там 10 вью тайпов (на самом деле 9, но если влруг не найдется делегаат используется фолбек).В итоге когда я доскраливаю до того места где начинают ити подряд элементы типов которые сразу не создались начинатся лаги.Причем ладно, хуй с ним с аномальным инфлейтом, захуярил кодом >>1292045. Но у следующих элементов нет какого-то долгого создания или байнда, а всеравно лагают.Попробавл systrace - хуй, почему-то кастомные трэйс секции которые я расставил не показывает, хотя запускал вроде норм (python systrace.py -o ~/tmp/newtrace.html -app=<my package>).В итоге захуярил большой максимальный размер пула для некоторых вьютайпов и вьюшки не выкидываются из пула, так что лагает один раз, но все же.
Появилась проблема с Facebook SDK после того, как повышаю версию либы выше 33, интерфейс программы начинает жутко тормозить при любых скроллах, жор оперативки улетает в небеса до 500МБ. Единственно, что не лагает, когда выдвигаю боковое меню. Пройдя по стэктрейсу, обнаружил проблему, что фейсбучный CodelessMatcher грузит систему, когда слушает ивенты на экране. Чтобы избежать зависаний, можно поставить флаг в манифефсте на запрет чтения ивентов, но тогда не получится читать установки и количество запусков для аналитики.Есть другое приложение с этим же SDK, но там работает без проблем. Не знаю куда копать, может есть у кого какие идеи?
>>1292678>Есть другое приложение с этим же SDK, но там работает без проблем.Ну так вот и возьми оттуда.У меня тоже много было проблем с перфомансом, в одном нужно было полностью закрыть фрагмент и уже после этого ижтектить, а я делал наоборот и было подвисание. Второй раз я пытался скрывать\показывать bottom bar во время скрола, но в итоге и он лагал. лол.
>>1292687Что я оттуда должен взять? Говорю что импорт одной и той же библиотеки в разные аппы почему-то влияет по разному. Нужно понять, что вызывает лаги.
>>1292680Это с брейкпоинтом такое видно?Может тебе пока отключить автотрекинг и ручками логать события? Ну и просто пальцем в небо - может у тебя очень большая вложенность лэйаутов, скролы-в-скроле и тд. На крайняк тебе придется вскрыть приложениеи которое не лагает и смотреть разницу в скролящихся лэйаутах.
>>1292729Если у тебя одна из последних студий стоит, то смотри внимательней внизу экрана, где вкладки Build, Terminal и т.д.
>>1292739Не, сам профайлер я нашел, я не выкупил что нужно было нажать на строку где бежит график CPU, потом еще раз нажать и вот тогда уже будет видно стектрейс.
Как правильно работать с загрузкой изображений для recycler view?Использую Glide. Сейчас тупо делаю Glide.Load.Into в onBindViewHolder.Как минимум вижу уже один потенциальный обсер моей схемы:если пользватель начнет скролить и пикча загрузиться и установиться после того как переиспользовался вьюхолдер то пикча установиться не на том айтеме.Но вангую что с такой схемой будут еще какие-нибудь обсеры с lifecyle, утечакми памяти и т.д.Как вообще такое делают?
>>1293171>Лёха, ты?Alexey Kochlast entered in the TG 17:09Вопрос - почему у меня СДК лагает, а у другого примера нет? С умным видом кидает стектрейс и не может уразумить, что проблема блять в его ебанном коде.Привет.>>1293150>если пользватель начнет скролить и пикча загрузиться и установиться после того как переиспользовался вьюхолдер то пикча установиться не на том if (data.get(position).getImage() != null { load this is image suka} else { Glide.with(viewHolder.testImage.getContext()) .clear();}
>>1293186Ок, если ебаный код, то почему тормозит простой экран где скролл вью и несколько текстовых вью? Логики никакой сложной не прикручено по отрисовке и загрузки данных.
>>1293387>Ок, если ебаный код, то почему тормозит простой экран где скролл вью и несколько текстовых вью?Откуда я сука знаю? Если бы блять у меня был бы твой код, и был бы код который не лагает я бы тупо перенес блять отткуда классы ресуклера + активити или фрагмента, на котором твой говнокод тормозит и посмотрел, но для начала я бы почитал доки. Какой же ты тупой.
>>1293397Ты заебал со своим ресуклером, нету там его блеать. Открываю ебаный фрагмент на котором кроме статического текста который можно скролить нет нихуя.
Вопрос следующего характера - есть ли альтернатива виджетам? Гугл молчит. Или может быть кто то может подкинуть хорошую, крепкую реализацию нормального виджета. (Я нашел парочку, имеется в виду, что из вашего личного опыта что то есть)
>>1293409>Ты заебал со своим ресуклером, нету там его блеать. Открываю ебаный фрагмент на котором кроме статического текста который можно скролить нет нихуя.Кидани тогда ссылку на этот сдк, ссылку на пример чувака, у которого не лагает, и ссылку на свйо говнокод.
>>1293444Макет фрагмента https://pastebin.com/wA4Zx4WQМакет активити: https://pastebin.com/qx6qgUcKКод фрагмента и активити: https://pastebin.com/AsgDWeScFacebook SDK начиная с версии 34 начинает фризить аппу: https://developers.facebook.com/docs/app-events/codeless-app-eventsРешение для версии 34 и выше: ставим в манифесте "com.facebook.sdk.CodelessDebugLogEnabled" в фолс, но тогда у нас ивенты идут мимо и маркетинг не работает. Даже если делаем импорт только фейсбук логин, но версия 34 и выше, а в манифесте у нас прописан только апп айди и фейсбук активити, то проблема остается, пока не откатимя на 33 версию или не поставим фолс для ивентов.В другой аппе, тоже есть фейсбук сдк, используется для логина. Там при обновлении на последнюю версию не происходит проблем с производительностью. Если даже пропишем в манифесте com.facebook.sdk.CodelessDebugLogEnabled = true.Версия Android SDK одинаковая для двух платформ и равна 28. Support library 28.0.0. Откаты на более старые версии тоже не решают проблем. Думал так, ибо фейсбук еще не перетащил свои либы на новые support library.
>>1293504У меня есть попдозрение что виновата может быть линейка, меня она тоже недавно удивила долгим инфлейтом.
>>1293504Ты убирал селектабле бекграунд? Почему ты не поменял скролл на нестед скролл? Если у того примера все норм, даже с СДК 34+, то у тебя конечно проблемы.Блять, ты используешь в мейн активити <android.support.design.widget.CoordinatorLayoutИ еще используешь скролл листенер. Боже. Что это такое? Смени координатор на релатив леяут еще. Если хочешь оставить координатор, то тогда тебе придется в фрагменте сделать релатив и поставить в FrameLayout тулзу app:layoutBehavior
>>1293539>Блять, ты используешь в мейн активити <android.support.design.widget.CoordinatorLayoutА в чем проблема?Тулбар же живет в активите, а ему надо быть в координаторе что бы все красиво связать, разве нет?Я что-то не понял о каком скролл листенере ты говоришь, я в его листингах не нашел.
>>1293553>скролл листенереpicТам еще поставь в него fillView..... trueЯ же сказал, для начала убери selectable в каждом текст вью и посмотри.
>>1293539Coordinator студия автоматом создала, когда добавлял эти классы чтобы потестить багу. В других местах обычно юзаю Constraint или LinearLayout, но что-то мне подсказывает что это не причем. Перебирать все лайауты в проекте то еще веселье будет (овер 50 макетов).На одном из экранов есть слайдер с картинками. Картинки он листает автоматически каждые 5 секунд. Проблема зависания так же затрагивает работу этого слайдера при переходе с одной картинки на другую. Он помещен в android.support.design.widget.CollapsingToolbarLayout, и вот таки когда делаю свайпы в промежутке высоты, который занимает слайдер, скролл не тормозит и работает как полагается. Проблема не затронула выдвижное меню и его анимация работает без тормозов.
>>1293563Во-первых я мимокрок. Во-вторых я может быть немного не в контексте, но насколько я вижу поп остам спрашивающего нигде ни о каком скролл листенере речи не идет, может быть ты имеешь в виду ScrollView?
>>1293563Убрал все что можно, добавил NestedScrollView, результаты остаются теми же.Я все дальше сторонюсь идеи копать лейауты и код. Ибо проблема наблюдается на уровне всего проекта. Избавление от общих зависимостей в коде от базовых классов не дала результатов. Думаю нужно просмотреть все зависимости в грэдл. Там дохуя всякого говна связанного с аналитикой. То есть и фейсбук и гугловский Fabric там на фоне работают. Возможен конфликт какой-то из библиотек.
Пилю аудиоплеер, хочу сделать оверлейку в шторке (пик)Что юзать? Как заставить её жить если убью апку из рисентов?
Как в gradle при сборке приложения сделать так, чтобы он копировал несколько файлов в ассеты собираемого проекта, т.е. чтобы эти ассеты были в билде, но не были в папке проекта app/src/main/assets ?
>>1293785sourceSets.main.assets.srcDirs += file('path/to/your/shit')Ну или как вариант градл таска, которая копирнет перед билдом файл в app/src/main/assets.
>>1293790Так мне наоборот не нужно чтобы эти файлы копировались в app/src/main/assets т.к. от билда к билду могут меняться. Мне нужно чтобы во время билда их как-то инжектировало в собираемый проект.Типа как например someBuildType {resValue "string" someSecretString "${someValue}"}Может инжектировать нужную строку, но в репозитории проекта этой строки не будет.
>>1293815Ты типа хочешь ассеты из гита куда-то выкинуть или что? Чего ты добиваешься? Почему тебе sourceSets.main.assets.srcDirs += file('path/to/your/shit') не понравилось?
>>1293724Кстати на счет убийства приложения. Если я убиваю телеграм или вк из процессов, то почему уведомления мне могут приходить? Это что за чертовщина?
>>1293835Да, я не хочу чтобы файлы хранились в проекте, а подхватывались из нужной мне папки во время билда и копировались в ассеты билда.
>>1293835Хотя твой метод в принципе подходит, я сначала затупил и подумал что они просто скопируются в ассеты из тех папок что я укажу.Но тогда возникает другой вопрос, у меня в ассетах еще есть папка и мне нужно чтобы файлы имеено туда копировались, можно ли так сделать?
Через какую прогу (не android studio, слишком сильна для моего пк) можно запилить приложуху, которая будет делать интернет запрос по нажатию кнопки?
>>1293864Так ты рутовую папку ассетов задаешь этой командой. Можешь дальше там плодить папки как хочешь.
>DialogFragment is depricated>Нет версии PreferenceFragment под v4>А кастануть один в другой низя азазаЕбаный в рот. Какой пиздец. Вот как можно так обсираться нахуй?Как теперь вызывать в настройках кастомные v4 диалоги, если getChildFragmentManager в их модной v14 ссанине фрагмента настроек выдает дефолтный фрагмент менеджерб а не под support library?
>>1294056А можешь показать пример или слова-маячки написать, чтобы я загуглил? Так-то я пытался через Kivy от питона, но не смог, ему нужна виртуалка убунту, а у меня для виртуалки слишком мало ресурсов.
>>1294182Какой в пизду kiwy? Что ты гуглить собрался? Как собирать апк из консоли: https://habr.com/post/335074/
Пытаюсь сделать "живые" обои. На эмуляторе -все ок . На ксиаоми, после установки,тупо не появляются там, где выбирать обои. В чем может быть проблема?
>>1293585Проебал еще пару дней на поиск причины зависаний. Что нарыл на данный момент: перестает тормозить если в манифесте запретить слушать ивенты (но тогда не будут считаться установки и запуски приложения). Создавал новый проект с нуля, импортировал в проект только FB SDK и APP ID, после чего начинало снова баговать и никакие флаги в манифесте и в грэдле не спасали, кроме выше сказанных.Далее я нашел на странице аналитики оповещение пик(только для другой аппы, которая не лагает) почитал подробнее, мне предложили потрясти телефон с запущенной аппой. Нихуя не произошло, но это не сработало потому что версия которая лежит на апп сторе имеет очень старую версию, хотя уже прошел месяц с момента, как заказчик получил билд с обновленной версией. Затем проделал те же манипуляции с багованной аппой. После того как потряс телефон, началась трансляция экрана запущенной сессии, вплоть до каждого скролла и свайпа. В итоге, это может быть той самой причиной, по которой происходит зависание и подтормаживание интерфейса программы. Возможно заказчик понакручивал ивенты на каждый пук в приложении не предупредив. Но это еще нужно проверить на примере других программ.
>>1295010> перестает тормозить если в манифесте запретить слушать ивенты (но тогда не будут считаться установки и запуски приложения).Ты это уже писал.>Возможно заказчик понакручивал ивенты на каждый пук в приложении не предупредивБывает.
Помохайте! Отправляю файл с клиента на сервер. На клиенте использую RxJava + Retrofit + OkHttp. Есть функция отмены загрузки файла на клиенте, работает через Disposable, то есть просто вызываю dispose() в нужный момент. Казалось бы все ок, Rx цепочка прекращает выполняться (то есть onNext, onComplete не выполняются после отмены). Но если вызвать dispose() когда прогресс аплоуда почти заканчивается (допустим 99% загрузилось), то локально загрузка также отменяется успешно, а на сервер файл все равно успешно полностью загружается. То есть у клиента отображается, что загрузка была отменена, а на сервере то файл появился. В чем может быть проблема? Как правильно отменить аплоуд файлов (а именно мультипарт реквестов) чтоб работало?
>>1295038Тебе блять такую годную шапку залили, а ты еще спрашиваешь, даун.>>1295039Не знаю, если в рх оператора нет который килит еще, то и нет. На моей памяти только 2 килят эти.
>>1295038Устаревшее говно в кривом переводе. Учи английский.>>1295042> такую годную шапку залилиГовноед, плиз.
>>1295044>Говноед, плиз.Что блять? Я на этом говне вырос и когда я сука пришел сюда год назад, здесь полтора анона сидели с ебанутой шапкой, которая ничего блять не давала. А еще я помню анона, который ебался с видеоплеером, но он уже пропал куда-то.
>>1295042>Не знаю, если в рх оператора нет который килит еще, то и нет. На моей памяти только 2 килят эти.Так в том то и проблема, что вроде как и должен останавливать https://github.com/square/retrofit/blob/master/retrofit-adapters/rxjava2/src/main/java/retrofit2/adapter/rxjava2/CallEnqueueObservable.java#L93Но как будто файл по инерции докачивается на сервак.
>>1295028Потому что именно так работает HTTP.Сервер получил полностью файл, сохранил его, пытается тебе отдать ответ об успешном сохранении файла, но ты именно в этот момент отменяешь запрос и разрываешь соединение.
Дорогие антоши, как плавно закрыть приложение, через систем экзит некрасиво получается, ощущение вылета, хочется что-нибудь помягче
Загрузил приложение в плеймаркет. Через несколько часов его апрувнили и оно там появилось. А сегодня загрузил его обновление, и в маркете не появилась новая версия в течении часа. Это норма?
>>1295394Да, когда это стало моей работой. Другого и быть не может, когда работаешь фуллтайм с другими и делаешь коммерческие проекты. Проекты хоть и говно, но выше моего уровня знаний, поэтому есть база для прокачки. Уже могу спокойно сделать поворот экрана с активным плеером и не проебать состояние. Ну и вместо жабы Котлин юзать пришлось, но на него было не очень трудно переходить.
Имеет ли смысл вкатываться в Андроид, если Гугл планирует Фуксию? Футурологи в треде, поясните, сколько лет ещё будут выходить новые андроиды?
>>1295779Да, по следующим причинам:1) Приложения с Андроида будут поддерживаться в Фуксии и уметь их писать будет не лишним.2) Если вкатываешься под Андроид сейчас, то 100% столкнешься с Котлином. А Котлин с большой вероятностью будет языком разработки под Фуксию ОС.3) Фуксию выкатят хуй знает когда, может через 2 года, может через 5. Ты будешь сидеть и ждать непонятно сколько?
>>1295028Ты со своей стороны сделал все верно. Дальше уже проблемы сервака (бекенда), которые не должны нести головной боли для мобайл девелоперов. С твоей стороны отменилось? Да. Колбек соответствующий есть? Да. Все остальные вопросы тогда не к тебе.
есть смысл изучить CoordinatorLayout ? ато по старинке все через linear и relative ебошу. кроме (типо) увеличения производительности, есть плюсы?
>>1295850Во-первых, ConstaintLayout.А во-вторых, нет плюсов. На собеседовании сможешь ответить, если про него спросят - единственный твой профит. По факту роста производительности не дает, но головной боли при верстке добавляет.
>>1295855Такой, что сложнее и муторнее, чем релейтив и линеар.>>1295878с вложеными релейтив и линеар изи
>>1295888> с вложеными релейтив и линеар изиА потом удивляются, хули у них при прокрутке списка всё тормозит.
>>1295888> Такой, что сложнее и муторнееВ чем сложность? Там констреинты все легкие, просто прокачанный релейтив.>>1295892Никто кстати так и не замерял перформанс констреинта против вложенных кроме самого гугла с их уебанским примером.
>>1295915>В чем сложность? Там констреинты все легкие, просто прокачанный релейтив.Та хуй его, я не осилил, мне он показался какой-то хуйней юзлесс и без смысла, я релейтивом и линеаром обхожусь вполне нормально
>>1295854>Во-первых, ConstaintLayout.Во-первых, релатив уже объявлен как легаси и депрекейтед. Если хочешь делать анимацию - то можно и контсрейнт, а там и другое изучить. Да и гугол уже вовсю стремится к нечитабельности хмл, как в иосе. Но до этого еще долго.
дерьмо блядьЧтобы понять, что клавиатура появилась нужно высчитывать изменения размеров во вьюхе. Если ты отключил хуйню при которой вьюха съезжает сама при появлении клавы, то вообще не задетектить. Ебитесь как хотите говноеды со своими андройдами называется. В ios просто подписался на уведомление о появлении/исчезании клавы и там же получил ее высоту.Как же заебало разбираться во всей этой параше вместо того чтобы писать код это делал для айфонов
>>1296160>>кокококо-кокококок-кокококоЗачем вообще лезть в андройд, после иос? Ладно я понимаю таких людей как я, которые начинали с андройда, а потом еще и иос изучили, но вот ты - типичная омежка-ошибка, даже не сумевшая осилить клаву.Что тебе мешает просто прикрутить обсервер к рутовому леяуту и все? И это только начало, маня.
>>1296161"а андроид версию смогешь?""да изи, в ios быстро разобрался, там наверно все по аналогии">обсервер к рутовому леяутуобсервер на изменение высоты? а если я отключил автоматическое уродование вьюхи
Сап, анонНе знаешь способ как в Kotlin'е сделать Parcelable abstract class, чтобы его наследники были data классами?С использованием @Parcelize и Parceler всё равно выходить дохуя писанины, т.к. классы большие
>>1296163Ты просто тупой как бревно, что тебе еще сказать. Если после ебанутой во всей своей сущности иос-разработки (с конченым и отсталым импортом библиотек, откровенно уебской верской, откровенно ебанутой работой со списками, которые у вас названы таблицами, дебильным и багнутыми хкодом и т.д.) ты не в состоянии вкатить в андроид-девелопмент, в котором ты практически все делаешь в АС, не выходя из нее и где все лампово и понятно, то ты - дно в программировании.
>>1296171Формально далвик и арт не являются жвм. А твой жвм байткод транслируется в декс байткод на этапе сборки апк.
>>1296176>С использованием @Parcelize и Parceler всё равно выходить дохуя писанины, т.к. классы большиеСтавишь расширение на котлин парселабле и все.
>>1296183>А твой жвм байткод транслируется в декс байткод на этапе сборки апк.Ловите дауна ебаного. С каждым твоим сообщением, все больше стекается подливы, возле твоего очка.
>>1296227Только последние аутисты, либо те, кто были студентами в середине нулевых и привыкли к уебскому делфи, где все программирование и верства делались мышкой.
Пытаюсь настроить автоматический запуск тестов перед запуском приложения в эмуляторе. И вот если юниттесты проваливаются - все идет хорошо, приложение не запускается.Но вот провал инстурментальных тестов нихуя не меняет, приложение все равно запускается, а студия еще и переключает вкладочку на лог приложения, а не тестов. В итоге легко можно прозевать, если там что-то провалится.Как пофиксить и запретить этому говну запускаться, если проваливаются инструментальные тесты?
>>1296347> Пытаюсь настроить автоматический запуск тестов перед запуском приложения в эмуляторе.Зачем?
>>1296371большинство так и пишут на джаве? для ios в каждом вопросе swift версия ответа>>1296372Чтобы копипастить, стаковерфло ведь для этого и нужен
А эта ебала может сама переводиться, только почему-то это автоматом не делается, нужно создавать отдельный файл на джаве, пастить туда и конвертить
>>1296374>большинство так и пишут на джаве?Ну да. Котлин же сахар просто. Что тут сложного, на джаве писать? На котлине пишут те, кому уже надоела жаба.
>>1296383Кроме того, что ты описал (Ctrl+Alt+Shift+K) есть ещё и другой вариант. Копипастишь джава-код в файл .kt и он тебя спросит конвертить вставленный кусок в Kotlin или нет. Алло, блять!
>>1296365Потому что запускаю в эмуляторе, чтобы потестировать ручками.А там:1) Что-то может отвалиться где-то там, где я даже не предполагаю после изменений.2) Если что-то нащупаю ручками не то - легче будет локализировать проблему.3) Да и разве я зря писал их чтоле?
>>1296551Ну это все интересно конечно, но нахрена их запускать при каждом запуске приложения на эмуляторе? Ты можешь делать как нормальные люди? Сначала наговнякать свой код, прогнать его на эмуляторе, а тесты гонять только перед мержем своего говна?
>>1296557Перед мержем говна будет уже поздно, попробуй упомни, где ты там навертел хуйни. Придется возвращаться и лопатить. А тут прям сразу, стоит только тронуть.Не, я понимаю еще, если комп слабоват и тесты будут запускаться долго. Но я вот запускаю эмулятор относительно редко, а сами тесты проходят весьма быстро.
>>1296559> попробуй упомни, где ты там навертел хуйниУ тебя в пулл реквесте внезапно показывается, где именно ты навертел хуйни.
Как в Rx в цепочке всяких .flatMap, .filter и тд и тп можно в середине что-то опубликовать во view?Только выделять некоторые элементы .observeOn(AndroidSchedulers.mainThread()).makeHui(...).observeOn(Schedulers.io())?
>>1296635Это кардинально неправильны подход, посреди цепочки что-то публиковать во вью, всему этому место в subcribe(onNext)Например по нажатию на кнопку нужно сделать запрос и показать лоадер:button.clicks().flatMap { makeRequest() .map { Result(it) } .onErrorReturn { Error(it) } .startWith { Working }}.observeOn(AndroidSchedulers.mainThread()).subscribe { when (it) { Working -> { loader.show(); button.disable(); } is Result -> { loader.hide(); button.enable(); setData(it.value); } is Error -> { loader.hide(); button.enable(); showError(it.value); } }}
>>1296665И как же опубликовать в одном onNext во вью, если нужно, допустим, в одной цепочке пройти три шага1) Проверить условие 1. И если провалено - отобразить уведомление.2) Если условие 1 выполнено - проверить условие два, и если оно провалено - отобразить уведомление.3) И только если все два условия выше выполнены - отобразить контент в onNext
>>1296669check1().flatMap { result1 ->__if (!result1.isSuccesfull()) {____Observable.just(ShowNotification(result1))__} else {____check2().map { result2 ->______if (!result2.isSuccesfull()) {________ShowNotification(result2)______} else {________ShowData(result1, result2)______}____}__}}
Бля, не понимаю. Хочу через volley послать в теле пост запроса {"id" : 1} и получить в респонсе jsonArray. Но он мне предлагает на выбор два метода где либо и посылаешь jsonObject и в респонсе получаешь jsonObject, либо и там и там jsonArray
Есть ли какой-нибудь туториал, на 6 или больше уроков, в которых разбирают как делать кастомные вьюшки?
>>1296715>VolleyЗемля тебе пухом братишка.Глянул, а там реально такое дно. Ну тогда придется сделать свой реквест JSONObject -> JSONArray, наследуйся от JsonRequest, там не сложно.
>>1296818>Байтоебы сэр.Но ведь даже мочаскрипт это байтоебы. Все состоит из байт. Так что, хочешь не хочешь, все равно зашкваришься. Да и GC, верно, что и ARC, что GC, что другая приблуда, челик оподливился как только написал свой первый хело ворд.
>>1296818>>1296806Не могу спать когда понимаю, что сраный чатик отжирает пол гигабайта драгоценной RAM, попутно трахая аккум в процессе регенерации ячеек. Это ненормально.
>>1296846>Не могу спать когда понимаю, что сраный чатик отжирает пол гигабайта драгоценной RAMГде? А где? Я не вижу. Кидай пруфы.
>>1296870Но это возможно же, если у тебя 8 гигов оперативы в мобилке с 2к+ экран. Там наверное и хип выделяется 500 метров, который сразу забивается кешом картинок и прочего говна.
>>1296897>Но это возможно же, если у тебя 8 гигов оперативы в мобилке с 2к+ экран. Там наверное и хип выделяется 500 метров, который сразу забивается кешом картинок и прочего говна.Так это, никто твои бомжатские, хрюша, мобилки, не покупает. Минимум владельцы 16гб используют. Иди нахуй, мань.
>>1296919Тогда у тебя на чатик не может столько выделяться. С 3 гигами метров 200 выделяется максимум. Если только там не нативщина или лард хип флаг.
Анон, как сделать провайдер в SAF(FileChooser)? Создаю свой тэговый файловый менеджер, который делает умный поиск("и","или","не") по файлам.Работаю в DroidScript, поэтому вообще хуй знает как это делать.Либо посоветуйте теговых фм с доступом к файлчузеру/обычных фм которые имеют доступ к файлчузеру и там же имеют нормальный поиск
>>1296959И в чем твоя проблема?https://developer.android.com/guide/topics/providers/create-document-provider
>>1297551Любой язык у которого: интерпретатор/компилятор весит меньше 200МБ, с динамической типизацией, без нагромождённости.
>>1297556>Любой язык у которого: интерпретатор/компилятор весит меньше 200МБ, с динамической типизацией, без нагромождённости.Хм, руби что ли?Я тоже люблю руби. Пишу бек на нем)
>>1297556> с динамической типизациейАХАХАХАИди нахуй со своим джаваскриптом и прочим говном, мань. Динамическая типизация для умственно отсталых же, которые не могут вкатиться в нормальный ЯП, где есть свои пусть и жесткие, но правила, на которых строится базис для построения нормального кода.
>>1298255Тру в "тру" то не забыл перевести?Алсо, на пике - синтаксический мусор, никто этими "+-+-+---+" не пользуется, и не один нормальный человек не станет от строки отнимать строку.
>>1298257>Тру в "тру" то не забыл перевести?Зачем? Я такой хуйней не страдаю. А если подобная хуйня приходит от сервера (например) - то это проблемы кривых рук бекендщиков и эта проблема решается не переводом тру в тру.> и не один нормальный человек не станет от строки отнимать строкуМань, любой джсник этим охереть как гордится и говорит, что мол остальные так не могут. Ты прав, нормальный так делать не будет. А в динамически типизированных языках так делают.
>>1298257>и не один нормальный человек не станет от строки отнимать строкуКак будто получив в функцию Sub(a,b) два параметра, джаваскриптер может быть уверен, что они не строки/undefined/NaN/[]/Object/неведомая хуйня
>>1298262> Я такой хуйней не страдаю. Вывод на экран некоторого сообщения с целью дебага требует string в аргументах, или ты не знал?> А в динамически типизированных языках так делают.Что-то не в одной библиотеке не видел. Может это твои маняфантазии? Быдлокодеры, хуй с ними, они и в Африке Java быдлокодеры.
>>1298274> Что-то ни в однойФикс>>1298272Никогда с этим проблем(почти) не было. Лишь один раз у меня хуйня была, когда я в индекс массива подавал сумму строки и числа:1+"5"=15, а я блядь, думал, хули у меня постоянно массив андефинед выводит. Но это единственный раз был, который я быстро исправил.
>>1298274>Вывод на экран некоторого сообщения с целью дебага требует string в аргументах, или ты не знал?Неявное приведение типов, слыхал о таком?Log.d("zalupa", "value = " + booleanValue);
>>1298289>динамичность типов.> неявное приведение> одно и то жеТы даун совсем что ли? Тогда для тебя любой язык, в котором 2.5 + 2 в ответе будет 4.5 становится динамически типизированным, так как даже в этом примере неявное приведение типов.
>>1298292> неявное приведение типовПочему ребята из северной столицы не запилили неявное приведение для int -> float -> double? Хули я везде должен как аутист проставлять этот ебучий toFloat(), toDouble() везде?Да, я знаю про потерю разрядов.
>>1298906Это действительно странно, хотя бы в большую сторону могли бы и сделать.Чисто любопытно, откуда к тебе приходят в перемешку данные int, float и double?
>>1298906Потому что оно может приводить тип лишь к более широкому по спектру значений типу. float к double сведется без проблем, так как double более широкий. Наоборот же не прокатит, тут да , придется самому дописывать танцы, но тут ты сам понимаешь, что это логично.
>>1298920> хотя бы в большую сторону могли бы и сделатьтак оно и делается, лол. Я постом выше написал про это >>1298923Тут (5 + 2.5f + 4.83) все сведется к double
>>1298928При сложении -- да, за счёт переопределения. А вот скажем:fun inc(x:Double) = x+1val y = inc(1f)Не прокатит, сказали дабл, значит дабл.
>>1298920int и float в перемешку в onDraw(canvas) же. Размеры канвы, вьюхи в целых, позиционирование и рисовка уже и в целых (rect) и в дробных (rectf, x, y и прочие).
Вопрос по Kotlin. Обновил студию и теперь в некоторых местах подчеркнута такая конструкция в методе подписки: viewState.showMessage(it). Студия предлагает вынести аргумент it, но получается такая некрасивая конструкция: {it -> errorHandler.proceed(it)(it, viewState.showMessage(it))} В итоге получилось преобразовать лямбду в такой вид: { errorHandler.proceed( viewState::showMessage ) } Выглядит уже лучше и хотелось бы оставить такую конструкцию. Влияет ли использование такой конструкции на производительность или это все фигня?
Все-таки умиляет мнение, что андроид нигавно, потому что изначальный проект был корявенький, и в процессе разработки еще были допущены ошибки.Серьезно, блядь? А как тогда объяснить, что appcompat - это просто кусок ссаной глючащей хуеты? Серьезно, я уже заебался пердолиться с этим говном, где то важный метод ВНЕЗАПНО становится приватным, то не открываются подэкраны настроек без портянки на сотни строк.Полный пиздец. В хауе, как можно высираться столь сырым говном, да еще делать его обязательным для пожирания.
>>1299231хуян, скажешь ахуенное сдк, где бляд для православного-каноничного способа отобразить пункт меню, нужно:onCreateOptionsMenuonOptionsMenuItemClickedonPrepareOptionsMenuinvalidateOptionsMenu+xmlда, да, можно без последних двух методов, но иди нахуй, отображать нужно не сразумимокрок
>>1299301Это все деприкейтед параша, единственное предназначение которой, узнать, что какой то фрагмент сейчас является текущим во вьюпейджере. setActionBar уже никто не использует. В разы удобней напрямую с Toolbar в лейауте работать.Да и к конкретно аппкомпату это никак не относится.
>>1299303> деприкейтеда вот и нихуяну т.е. тебе никто не мешает так думать и нахуй слать это говнотолько вот @deprecated там как не было так и нет> к конкретно аппкомпату это никак не относитсямикокрок же, я в целом про ведро, а не аппкомпаточень удобно (нет)
>>1299301>>1299200>>1299307Как же люто проиграл с этого дауна, не могущего в простейшие и примитивнейшие вещи, такие как меню или функционал аппкомпата. Этот даун привык, что в универе на делфи он мог программировать мышкой, перетаскивая кнопочки на форму и примо в коде кнопки писал функционал и искренне удивляется, почему в реальных востребованых проектах\языках\сферах не так.Самое смешное то, что плюнешь ты на андроид, перекатившся в любую другую айти-сферу (десктоп или мобайл-иос, например) и там тебя будет ожидать тупо тоже самое, какие-то свои приколы, своя логика и идеология.
Бляяя ну и дерьмо блядь, ебучие темы оказывается меняются в маняфесте. А что я тогда менял в стулес/апптхеме парент? эта хуйня ничего не меняла и я в ручную менял цвета у всех пикеров и едиттекстов
>>1299515>Ебать ты поехавшийЭто ты поехавший, смурфик ебаный.>>1299529Поиграться с темами и стилями и наконец, разобраться уже с ними.>>1299537>я в ручную менял цвета у всех пикеров и едиттекстовЗемля пухом.
>>1299570Не мог бы ты посоветовать нормального гайда по стилям/темам? Документация мне что-т не поомгла, там этих тем просто пиздец как доху, а теперь еще не только апкомпат, а гугловские материаловские есть.
>>1299537На стайлинг кстати доков вообще нет. Прям совсем нет. Нельзя открыть доку по Button и посмотреть, когда там colorControlNormal, а когда colorControlHighlight и прочее используется. А самый кайф мне был, когда я через стили у toolbar'a кнопки менюхи двигал, пробираясь через дебри исходников.Ну хоть на материал компоненты завезли доку.
>>1299631>Ну хоть на материал компоненты завезли доку.Еще бы там были расписаны эти десятки цветов, что где когда.
>>1299628>Не мог бы ты посоветовать нормального гайда по стилям/темам?В шапке все расписано. Ищешь яндекс и прыгаешь туда, там 40 минут рассказывается про клаву, про стили и т.д.
>>1299650Уже есть инфа, скороТМ ее дополнят.Палитра:https://github.com/material-components/material-components-android/blob/master/docs/theming/Color.mdНапример кнопка:https://github.com/material-components/material-components-android/blob/master/docs/components/MaterialButton.md
Блядь как бесит эта хуйня. Андроид апи в ролинг релизе или как понимать что постоянно ответы из стака уже нихуя не работают. Почему в ios не надо никак изъебываться, а просто в одну строчку узнаешь конекшен, а тут целые гайды https://stackoverflow.com/questions/1560788/how-to-check-internet-access-on-android-inetaddress-never-times-outgetActiveNetworkInfo() во всех ответах без параметра, а я должен туда что-то высрать,
Надо сделать такую хуйню: юзер делает фотку и отправляет на сервересли нету сети - сохраняем фотку и ждем пока появится сетьсеть появилась - отсылаем фотку на серверкак все правильно организовать, где держать фотки не отосланные?
>>1299876Охохох, тут столько подводных, разниц в апи и тд что ты охуеешь.Вначале ты должен правильно составить интент и показать его пользователю. Галерея, камера разные интенты, разные пермишены (+ камере нужно дать uri с пермишеном на запись (привет FIleProvider my old friend), иначе она по тихому завалится и не отдаст фотку). Когда ты разгребешь все создания интентов и файл провадйер разгребай пермишен если вдруг где-то в приложение камера используется напрямую, а не через интент то придется этот пермишен запросить, плюс read external storage скорее всего потребуется.Дальше неплохо бы провалидровать что там реально image/*, а не какой-нибудь говно пдф, ведь можно же пикнуть с гугл драйва или еше откуда, никаких гарантий бро. В случае с камерой надо еще и сохранять в бандл ури, который давал камере в интенте, назад он не придет :)Что ж, ты создал правильные интенты, разобрался с пермишенами и результатами, теперь тебе надо в случае галереи сохранить картинку в свои файлы, в случае камеры раз ты даешь камере пермишен записать в свои файлы он уже будет там (не забудь кстати забрать пермишен, ага).Теперь у тебя есть uri файла в твоей супер секретной памяти (нет). Самое время зашедулить WorkManager'у отгрузку данного uri на сервер, по успешной отправке удалить и идти чилить.
>>1299919У меня это все говно уже есть, сохранять в интернал мемори это вообще не охуевшее решение? Юзеру нахуй не нужна фотка, я её только отсылаю, возможности с драйва загрузить нету, только через мою камеру(кидаю интент на камеру суто). Я думал в базу писать и когда ловлю бродкаст на смену стейта сети отправлять все с базы лоадером, но база это оч костыль как по мне, нет? LRU подойдет?
>>1299921Зачем база и lru, просто выбираешь все файлы из папки и аплоадишь их, потом сразу удаляешь. В базе разве что можно хранить относительный путь и статус (загружается/не загружается). Но я думаю WorkManager все таки лучший варик, иначе пиди форграундный сервис с нескучной нотифкацией показывающей количество оставшихся файликов.
>>1299876>где держать фотки не отосланные?Я сохраняю фотку в папке кеша, там, допустим юзер 10 сделал - все в кеше. После отправки фоточек, я чистю кеш и все.
>>1299474бляд ну хуле еще ожидать от быдла на двачеты долбаеб или да?речь не про делфи, а на то что на простое бляд действие нужно 4 сука разных методапосмотри на тот же флаттер для примера шоле, клоун диванный > привык, что в универе на делфи он мог программировать мышкойА ТО БЛЯД В ДИЗАЙНЕ АС ТЫ МЫШКОЙ КОМПОНЕНТЫ НЕ ПЕРЕТЯГИВАЕШЬ УМНИК ХУЕВ> примо в коде кнопки писал функционалмимо, чини детектор> мобайл-иостулинг никакой, так что нахуй, хотя почему-то даунов там поменьше чем в ведре будет> какие-то свои приколы, своя логика и идеология.давно филфак окончил?
Дарово анонозавары. Год программировал на С++ один проект, он наконец закончился и подумал я о том, что пора перекатываться на, что-то более перспективненькое - мобильная разработка. Составил план изучения состоящий из чтения двух книг:1. Cay S. Horstmann - Core Java Volume I--Fundamentals (10th Edition)2. Dawn Griffiths, David Griffiths - Head First Android Development (2nd)После чего напишу одно приложение и выложу его на Гугл плей (естественно оно будет супер успешное и тд). Данный план изучения андроид разработки адекватен?И достаточно ли этого для того, чтобы меня взяли в какую-нибудь компани в Москве за зп в 60-80 к?
>>1300475Если писал на плюсах, можешь прыгнуть на java for the impatient вместо core java. Сэкономишь чутка времени.
>>1300475Алсо, можешь прыгнуть на Qt, коль писал на плюсах. А там уже и ведро и яблоко и небо с аллахом.
>>1300438О, саженька. Иди нахуй, пидрила обоссаная.>>1300475>После чего напишу одно приложение и выложу его на Гугл плей (естественно оно будет супер успешное и тд). Данный план изучения андроид разработки адекватен?Сам процесс изучения андройда не адекватен. Книжками и статьями ты не отделаешься. Если напишешь приложение - то потом будешь его переписывать. И так, пока все не изучишь. А что нужно изучить - это в шапке написано.
Я тут составил зависимость упоминания термина в описании вакансий для Android Developer на hh.ru. Оцените насколько соответствует вашему опыту работы. Действительно ли так часто требуются указанные технологии? Может чего забыл добавить?>>1300479>>1300501>>1300481Оки, спасибо за ответы.
>>1300539Ты даун что ли? Таким как ты в шапке расписали блять.> Что нужно, чтобы взяли джуниором? Что учить в первую очередь?Нужно хорошее знание Java, понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library и ее версии, shared preferences, SQLite, Handlers, Executors, Content-Providers), знание популярных библиотек типа Retrofit + Glide/Picasso + RxJava2 + Dagger2(по обстоятельствам), понимания СОЛИД и других паттернов проектирования. И хотя бы несколько готовых приложений.
Кто-нибудь работал с React Native? Хочу написать свой нативный компонент, но пока не разобрался, как его потом интегрировать непосредственно в react-native код. В официальной доке как-то все завуалировано.
>>1300374Ебаное тупорылое дно.>на то что на простое бляд действие нужно 4 сука разных методаДобавление аппкомпата в гредл, гредл синк, юзание классов из аппкомпата в коде. Ну да, для тебя такая последовательность дейсвий видимо черезчур сложная.>посмотри на тот же флаттер для примера шоле, клоун диванный Нахуя, делбик? Мне и в нативной андроид разработке нравится вариться. То что во флаттере что-то одно лично для тебя понятнее, чем в АС или джаве, то не значит, что так будет во всем и всегда.>А ТО БЛЯД В ДИЗАЙНЕ АС ТЫ МЫШКОЙ КОМПОНЕНТЫ НЕ ПЕРЕТЯГИВАЕШЬ УМНИК ХУЕВЕсли релейтив и линеар лаяуты, то, представь себе, да. Мне действительно быстрее прописать руками свойства. Если констреинт, то наоборот. В отличие от тебя, у меня хватает памяти в мозге выучить более одного способа для совершения чего-либо.>примо в коде кнопки писал функционал>мимо, чини детекторЧто мимо, дебил? Я был студентом тоже и тоже писал лабы на делфи даун. Двойной клик по мышке и в СГЕНЕРИРОВАННОМ ЗА ТЕБЯ МЕТОДЕ прописывание примитивных действий могли осилить даже дауны, поступившие из сел.>тулинг никакой, так что нахуй, хотя почему-то даунов там поменьше чем в ведре будетНу так пиздуй в иос, там ведь все легко, удобно и элементарно, так ведь? И там не аппкомпата, чего ты тут ноешь, как сучка?>давно филфак окончил?С этого проиграл больше всего. Ты даже не понял, что я указывал на свои тонкости и отличия в разработках под мобайл, десктоп и т.д., а вместо этого кинул быдло-прикол про филфак, причем даже кинул его не к месту. Все ясно, пиздуй работать разнорабочим, с таким подходом к обучению и стремлением понимать новую информацию ты не то что в айти не вкатишься, ты никуда из умственных работ не вкатишься, лел.
>>1300544>Таким как ты в шапке расписали блять.Ага, а время у нас остановилось и ничего не меняется, поэтому глинянные таблички Шумеров до сих пор актуальны. Ты даун, что ли? Требования к специалисту поятоянно меняются и поэтому нужно периодически обновлять свои знания том, чего хочет работодатель получить от соискателя.
>>1300780>Ты даун, что ли? Требования к специалисту поятоянно меняются и поэтому нужно периодически обновлять свои знания том, чего хочет работодатель получить от соискателя.Нет, это ты даун? Кинут тебя на легаси проект, где рх нет, а есть хендлеры, а ты только реактивщину знаешь. Ну мам, это же глинянные таблички ШУМЕРОВ, МАААМ,Даун, даже писать дальше не хочу.
>>1300808>Даун, даже писать дальше не хочу.Ну, что ты. Твоя лишняя хромосома не должна помешать высказать мнение в грубой форме. Наоборот, она тебе пока только помогала это делать.
>>1300731> Ну да, для тебя такая последовательность дейсвий видимо черезчур сложная.долбаеб или да? Как ты вообще градл приплел то, если тебе говорят про архитектуру сдк, что на сраное простое действие нужно много возни (в курсе что там пару строк, но тут, то там). Ты же бляд ОЙ СЛИШКОМ СЛОЖНОДля такой хуйни? Да, _избыточно_ сложно> в нативной андроид разработке нравится варитьсяеще и на Java скажи пишешьебаться с простой задачкой и ждать компиляцию не, ну если тебе везет, проект маленький, кэш работает и тыды может и 5-15 сек быть, но один хуй для того чтобы првоерить ЗАРАБОТАЛА ЕБАНАЯ КУЧКА ФЛАГОВ ИЛИ НЕТ тоже нравится небось?> Если релейтив и линеар лаяуты, то, представь себе, да. бляд долбаеб привел в пример перетягивание компонентов в делфиему говорят - ты точно также перетягиваешь, хуле выебуешься?долбаеб в ответ - НУ ВОТ ДЛЯ РЕЛАТИВА Я РУКАМИ, А ДЛЯ КОНСТРЕЙТА ТАКИ ТЯГАЮформан.пнг>В отличие от тебя, у меня хватает памяти в мозге выучить более одного способа для совершения чего-либо.Типичный двач, хуле. Откуда тебе знать то бляд? К слову в констрейте тоже быстрее руками (автокомплит то нахуя)> Что мимоДелфи и обработчике в кнопке мимо, долбаеб>Я был студентом тоже и тоже писал лабы на делфиЕсли ты писал код в сгенерированном за тебя методе, нууу... Все понятно хуле> Ну так пиздуй в иосты читаешь или в глаза ебешься? тулинг никакой - нахуй надо> пиздуй в айоси откуда вы лезете такие бляд>Ты даже не понял, что я указывал на свои тонкости и отличия в разработках под мобайл, десктоп Именно бляд поэтому и спросил, философ хуев, пиздец колумб бляд, УКАЗАЛ НА ТОНКОСТИ> понимать новую информациюНОВАЯ ИНФОРМАЦИЯ - МОБИЛКИ И ДЕКСТОП И ТЫДЫ ИМЕЮТ СВОИ ОТЛИЧИЯ> ты не то что в айти не вкатишьсядавно вкатился, но откуда тебе знатоку составлять портрет по отрывкам инфы, знать то
>>1300998>давно вкатилсяНе верю. Вываливать сюда говно из своего рта нормальный бы человек не стал. Ты университетская мартышка, разве не так? Если нет - то у меня плохие новости, дядя.
Андрононы, поясните за орагнизационный момент. Для аккаунта разработчика Google Play использовать свой дефолтный аккаунт, или новый заводить и к нему и AdMob и AdSense уже привязывать?
>>1300998>давно вкатилсяДа кому ты пиздишь, никуда ты не вкатился, ты либо студент, либо работник собсем другой сферы. Будь ты кодером - ты бы не ныл в тредах на дваче о сложностях аппкомпата или андроид сдк, потому что любой андроид-девелопер тебе скажет, что их там особо и нет.>что на сраное простое действие нужно много возни (в курсе что там пару строк, но тут, то там)давай сука конкретно с примером, на какое это простое действие в андроиде у тебя пошло столько много возни, что ты захотел тут поплакаться об этом?>еще и на Java скажи пишешьНа ней и плюс на котлине. Как и другой уважающий себя андроид девелопер. Если ты начнешь размазывать сопли про флаттеры, реакты и прочую поебень, то опережу тебя и скажу сразу, что эта хуйня не котируется, по крайней мере, сейчас. Ни какой большой проект тебе не дадут вести на этом говне, во всех конторах с тебя будут требовать знание джавы с котлином вместе с андроид сдк и т.д. Любители флатера и реакта довольствуются проектами-визитками разве что.Остальной твой онанизм тут особо и комментировать нет желания, ты обосрался по полной и последним постом еще и подтвердил какое ты дно.
Есть MVP точеный. И андроид дроченный.И есть runtime permission.Как в контексте MVP адекватнее проверять, есть ли разрешение на тот или иной пук (а если нету - запрашивать, и только потом делать)? Презентеру же должно быть поебать, умеет view в какие-то там разрешения или не умеет, это чисто ведропроблемы, которых может и не быть на иной платформе.Корректно ли вообще делать так, чтобы эта логика не выходила за пределы view?
Я галерный раб, инженер на скала. Есть идея для мини-бизнеса, так сказать. Хочу для себя вкатиться в котлин (после скалы будет просто, тем более бывший джавист) и писать свои аппликухи, дизайнеров нанимать на фрилансе. Идеи есть, время есть, даже если ничего не получиться, опыт всё равно не помешает. Возможно ли это всё в одно рыло потянуть? Писать код, ебаться с дизайнером на фрилансе, тестить руками, рекламировать, фиксить, обновлять? По-быстрому высырать по приложения раз в месяц -два, мб что-то взлетит. Реализировать планирую самые простые и нужные идеи,юДаже пассивный доход в пару сотен баксов в месяц уже будет успехом. Конечно сначала будут обосрамсы, так как в бизнесе я 0, но с опытом всё будет.
>>1301460>Возможно ли это всё в одно рыло потянуть? Да, я вот же тяну и ни че.>Писать код, ебаться с дизайнером на фрилансе, тестить руками, рекламировать, фиксить, обновлять? Я бы уволился с работы и занимался такими делами.>По-быстрому высырать по приложения раз в месяц -два,Ненененене. Через полгода как минимум.>Даже пассивный доход в пару сотен баксов в месяц уже будет успехом.АхАХАХАХАХАХАХААХ. Ты дурачек? Иди в иос, там тебе будет доход.Кароче, таких как ты иногда сюда заглядывают, только вот заглатывают хуйцов по самые щеки и ничего не делают. Смирись.
>>1301490>>1301613Спасибо, свифт мне тоже симпатичен. То есть, лучше иди на ИОС?Для меня важно:1. Получить опыт бизнеса2, Заниматься не говном3. Получить хоть какой-то пассивный доход.
>>1301828> Заниматься не говном> мобильная разработкаТы бы еще в вебе попробовал говном не заниматься.
>>1301460>По-быстрому высырать по приложения раз в месяц -два>пассивный доход в пару сотен баксов в месяцнедавно мои апп вслетел могу впринципе вообще не работать пока бабки капают, и на это у меня ушло: 4 года офисного рабства под ведроид после веб галеры, 1 год разработки проекта по вечерам + 1 год разработки фултайм параллельно с фрилансом, ебля с налоговыми\бухгалтерами\банками\проч., немного ебли с фрилансерами (под итогу все делаю сам). В плане технологий деградировал за 2 года так, что сейчас только на джуниора в офис пройду хотя в офис пойду, только если жрать нечего будетвот и думай
>>1301959>ебля с налоговыми\бухгалтерами\банками\проч.Поясни за этот момент. Юрлицо регал? Или как физик доход получаешь?
>>1301959Блять. Таже хуйня.>>1302226Околопрограммистская суета забирает время которое раньше уходило на обучение. Плюс начинаешь мыслить как бизнес: "Главное чтобы как можно скорее заработало и начало капать." А вот это вот "Главное все красиво и правильно спроектировать, с использованием новейших технологий, чтобы потом в будущем легко доделывать и вообще нестыдно в git выложить" уходит на третий план.
Пытаюсь изучить OpenGL ES. Не могу разобраться, как вращать 3D объект вокруг любой точки. Написал следующий код, но вместо вращения сферы вокруг вектора а, она вращается вокруг вектора b (т.е. вокруг своей оси). Что я не так делаю?
>>1302994Спасибо, работает. К центру координат надо двигать всегда любой объект, и не важно, вокруг центра координат он будет вращаться или вокруг любой другой точки?
Анон, вернись. Ты padding в recycler view ставил? Наткнулся на туториал от гугла https://github.com/mikescamell/shared-element-transitions - но здесь эта бага присутствует как на видосике с мельканием. Как фиксить?
>>1303234Поставил в recyclerView paddingStart 1dp, все ок. Но иногда, когда потыкаешь раз 5-6 и поскролишь ресуклер, то какой-то рандомное фото все равно мелькнет, а потом уже откроется.
>>1290693 (OP)>IonicЧубаки, объясните насколько можно приблизиться к приложухе на жабе используя какой-нибудь ионик и реакт нейтив:???7777
>>1303309>Чубаки, объясните насколько можно приблизиться к приложухе на жабе используя какой-нибудь ионик и реакт нейтив:???7777И ты тоже иди нахуй
>>1303314Ты даун? Дальше туду листа не продвинешься. Читай шапку куда стоит обращаться с такими вопросами.
val cs = ConstraintSet() cs.clone(contentLayout) cs.connect(view1.id, ConstraintSet.TOP, view2.id, ConstraintSet.BOTTOM) cs.applyTo(contentLayout)почему не работает?
>>1296669От onNext(), onComplete() и других сайд эффектов лучше отказаться, так как это некорректное использование реактивщины. Ты должен передавать события в onSubscribe(). Сайд эффекты применимы для обновления кешей, отлавливания условных success/error/loading стейтов(можешь посмотреть статью о MVI от Badoo, которая недавно вышла или Resource в firebase, ещё видел на сайте android'а аналогичную реализацию Resource) и других специфичных вещей.Для того, чтобы отображать уведомления можно использовать SingleLiveEvent в LiveData, OneExecutionStateStrategy в Moxy или другие аналогичные вещи. их так же прокидывать в onSubscribe. В твоем случае будет три цепочки с onSubscribe, в которых ты отслеживаешь финальные стейты/события вью(2 - OneExecutionStateStrategy, 1 - AddToEndSingleStrategy, например) и несколько цепочек, которые делают проверки, реквесты в сеть/бд, вычисления и т.д.Если у тебя сложный финальный стейт с контентом, то можешь обмазаться MVI с Moxy(хотя она и для MVP, но отлично реализуется и для MVI) или c Android Architecture Components.
Блин, может расскажите фишечки нормальные?Сейчас узнал, что большинство манипуляций с активити или с фрагментами легче всего сделать через frame layout. Например можно обесцветить активити, повесить туда frame layout и делать все что захочется.
>>1304443> может расскажите фишечки нормальные?Если у тебя single activity, то удобно использовать android.R.id.content как контейнер для фрагментов.
>>1304457>Если у тебя single activity, то удобно использовать android.R.id.content как контейнер для фрагментов.Это я тоже знаю.Мне бы фич по взаимодействию с UI.
Очень мало материалов по custom view, штук 6 за все. Я понял надо еще и знать графику, чтобы что-то прям заебись рисовать. Даже секундомер пока не осилил и не смогу написать, пиздец. Даже даггер или анимация будет полегче этого говна.
Почему приложение открывается несколько сек ??? Хотя на андройде я посмотрел даже приложение "настройки" открывается с делеем, но телега как-то шустрее. У меня такой алгоритм при запуске: начальное активити сплешАктивити, которое чекает преференсы - я там храню залогинен юзер или нет, ну и дальше открывается мэйнАктивити/логинАктивити
>>1305280> начальное активити сплешАктивитиСкорее всего с этим обосрался. Гугли, как его сделать правильно, чтобы время на построение ненужного view не тратилось.
>>1305284Опять работать? пидорасы как они заебали, нахуй они мне в каждой хуйне пытаются жизнь усложнить. В ios тебе как человеку дается LaunchScreen и AppDelegate, где можно выбрать рут экран
>>1305290В android тебе как человеку дается Single Acvtivity и дальше пишешь любую хуйню, где можно выбрать рут фрагмент.А вообще, напомню, что у "правильных" лаунчерев есть довольно лютые ограничения связанные с возможностями drawabl'ов в windowBackground.
>>1305342>тебе как человеку дается Single AcvtivityАхахахахахахахахахахахаКак же я проигрываю с таких ответов. Сделай-ка мне анимацию перехода картинки из recycler view to view pager с фрагментами. Че? Соснул блять? Если умный, то да, ты можешь ебнуть вот это https://github.com/google/android-transition-examples и показать, какой ты крутой. Но здесь я опять тебя обосру, и скажу, что даже ОФ пример от гугла ЛАГАЕТ.Соси сука, андройд для пидарасов. Я не рекомендую никому вкатываться. Но сам не жалею, что вкатился.
Господа. Вбрасываюсь со своей проблемой. Первый раз кодить собираюсь. Моя задача - считывание с камеры и передача по bluetooth. Аноны, есть ли у вас хорошие уроки на эту тему?
>>1305399>Моя задача - считывание с камеры и передача по bluetooth. Аноны, есть ли у вас хорошие уроки на эту тему?А что ты хочешь с камеры считывать? Поток? Передача потока по блутузу, хз, сможет ли он, попробуй.> Первый раз кодить собираюсь.У тебя не получится.
>>1305400> хз, сможет ли онТам самое быстро 2 мбита можно напердолить в пятой версии, а по сути меньше мегабита. 480п хуйню может и получится отправить.Но он не осилит, это верно.
>>1305400Я нашел такую вещь, как app inventor. Выглядит непотребно, но подойдет. Моя задача - считать код. Таки, кто-нибудь знает хорошо app inventor?
>>1305430>Моя задача - считать кодА, код через камеру. Ну ок. app inventor хуй знает что это такое. Он же не нужен.
Сап, андроиды!Подскажите плез, по поводу работы удалённо с андроидом, реально ли устроиться джуном не залезая в офис? Я сейчас вкатываюсь в андроид по-фану, леплю лапшичку, разукрашиваю вьюшки, всё нравится. Но вот мой кореш - он же сенсей, говорит что лучше всего в офисе поработать годик - другой, а я последние 3 года на удалёнке работал(в около торговле), уже и отвык от офисной педарасни и привыкать назад совсем не хочется.Может быть есть истории успеха, полностью без личных контактов?
>>1305284Сделал как правильно энивей дэлей остался, и телега быстрей грузится - там через сингл активити? ну и парашники этим андроидом заведуют
>>1305623>и телега быстрей грузится - там через сингл активити?Там через то, что пока рано знать даже через 3 года вкатывания.>>1305612Вопросом, очевидно же. Перечитай треды прошлые, чем гороздить хуйню, которую много раз обсуждали.
>>1305642>вопросомЧо ты злишься? Ну да я нуб - тебе не интересно со мной общаться, листай дальше. >Перечитай треды прошлыеЯ просёрчил в этом треде - никто не пояснял за удалённую работку, в прошлом треде было одно упоминание вскользь, когда какой-то анон задал платиновый вопрос про фриланс, кто-то ответил что - не для андроида, но можно работать на удалёнке. Всё.
>>1305678> кто-то ответил что - не для андроида, но можно работать на удалёнке. Всё.Ну и вот ебать. А теперь съебись или оставайся.>>1305706Посмотри и узнаешь.
>>1306310Ого. Настолько серьезно все? Получается, что джава и котлин не нужны уже?Так а зная Дарт можно будет писать сразу и для иоса и для андроида приложухи и по сути были фулстек девелопером на изи?
Я хочу вкатиться в андроид, этот тип говорит что жаба уже нинужна? так андроид хотел переходить и на свифт, а теперь что, не перешел же, Так в какой язык вкатывать то? во флаттершай что ли?
>>1306395>так андроид хотел переходить и на свифтВерить людям, которые пишут новости, конечно. Вон я на руби пишу андройд приложения.>Я хочу вкатиться в андроид,Вкатывайся>этот тип говорит что жаба уже нинужна?Да, учишь пхп и пишешь на андройде. Сейчас это популярно в узких кругах.>а теперь что, не перешел жеПерешел>Так в какой язык вкатывать то?В перл. Сейчас 6 выйдет и даст пососать.>во флаттершай что ли?Нет, лучше в cordova SDK.
>>1306441>Не, давай без шуток,Ну давай>Яву лучше жеНу, жаба лучше пхп, это факт. Но не лучше руби, мне вон нравится руби для развертывания стартапчиков. >или что?Та учи питон. Щас говорят все на питоне пишут.
>>1306422>Да, учишь пхп и пишешь на андройде. Сейчас это популярно в узких кругах.В начале я думал уже тебя обсирать, но потом понял всю тонкость этого поста, харош. Реально найс, всякие мимокрокодилы даже поведутся)
Ребят ай нид хелп. Короче нихуя не знаю почти. Вот есть у меня две кнопки в активити с констреинт лейаутом. Одна из прикрепляет фрейм. Так вот фрейм оказывается под кнопками. Вообще делать, чтобы один элемент был над другим?
>>1306849Зависит от уровня апи. На старых где нет номрального translationZ если хочешь что бы что-то было снизу нужно что бы оно в списке сабвьюх было раньше, то есть тебе надо вызывать не addView(subview), а addView(-1, subview) - это поставит позади всех. Если речь идет о верстке в xml, то элемент просто должен быть раньше объявлен. А если есть translationZ то можешь сним играться как надо.
>>1306849>Вообще делать, чтобы один элемент был над другим?Делать это нормально.>Короче нихуя не знаю почти.Ничего страшного.>от есть у меня две кнопки в активити с констреинт лейаутом. Одна из прикрепляет фрейм. Так вот фрейм оказывается под кнопкамиТак кидай разметку, скрин экрана, я не могу понять на словах.
>>1306966>>1306877 Вот короче. В этот фреймплейс я вставляю фрагмент. Хочу сделать типа диалогового окна. По сути его и делаю(знаю что есть специальный класс, но пока не надо). Так вот когда нажимаю на Новая игра появляется фрагмент, но он под кнопками. Даже цвет кнопки поменял, чтоб видно было. На заднем фоне фрагмента есть imageview белого цвета(если очень присмотреться, то видно разницу). У фреймплейс моего я попробовал поставить транслейшенZ на 1 и у кнопок на 0 и не помогло
>>1307024Тебе надо что бы он стал перед кнопками? Он всегда есть или ты рукми его добавляешь?Виесто первой лучше скинь как оно в тексте.
>>1307024Оберни frame container и две кнопки в один frame layout.Если не знаешь что и как - гуглить - view over another view. Вопрос закрыт.
>>1307112Я гуглил. Иначе бы не спрашивал. Я позиционирую в констрейнт лейауте. Если я кнопки в фрейм лейаут как мне потом их размещать????
>>1307381>Если я кнопки в фрейм лейаут как мне потом их размещать???А внутри RelativeLayout сложно создать? Ты сидишь уже с проблемой 2 дня, земля пухом. Хотя я как-то раз неделю потратил на говно одно.
>>1290693 (OP)Что-то я не могу понять, гугл выпустил андройд 9, а я до сих пор ее блять не вижу. Она вообще где? Я че, просто так к 27 прибавил единичку в градле и все?
>>1307636> Я че, просто так к 27 прибавил единичку в градле и все?На андроидх мигрировал? Нет. Вот и занимайся теперь.
>>1307773>На андроидх мигрировал? Нет. Вот и занимайся теперь.Нажал на кнопку миграйт - поставил 28. Либы 28.Но пакеты все равно без androidx.Что за пиздец)
>>1308484>В ней не написано что нужно знать явуКак это не написано? >Большинство приложений написано на Java, необходимо понимать что ты пишешь, в уме достаточно знать базовый Core т.к. 90% времени придется тыкаться в Android SDK. Полезные обучалки от анона...>>1308505>Ладно эта ебала тормозит и лагает на макпукеНикогда, за 5 месяцев, никогда не лагала на маке. На работе сидел за компом на котором майнили биткоины - вон он лагал время от времени.
>>1308515Из самого простого: нажимаю кнопку/комментирование - дэлей 1сек, чтобы такая непростое действие свершилось. Или это говно надо было на ссд ставить?
>>1308515Спс, тогда у меня еще такой вопрос, я по нему парюсь, я сейчас на линукс, тут стоит опен ява, стоит ли переходить на оракл яву? я слышал оракл откроет код, и вроде выпилит блобы от сун, дело в том, что от оракл ява вроде как работает лучше, а ты не знаешь, либы там у них разные?
>>1308527У андройда собсвтвенная хуйня в плане работы с этим. Эта ебанина, тобою описанная, больше затрагивает бекенд, чем мобилку.>>1308522Ничего не знаю. У тебя аир 8-ого года? У меня прошка 17 и все норм работает.
>>1308543https://developer.android.com/studio/intro/studio-config#jdkСоветую почитать пару строчек здесь, няша.
>>1308515> Никогда, за 5 месяцев, никогда не лагала на макеНу ничего, через годик может будешь работать над большим проектом, 16 гб оперативы перестанет хватать.
В спиннере макс значение почему-то 128, можно как-то поменять его? Или это в адаптере дело? У самой вьюшки нету ничего типа setMaxValue
Котаны, я пишу приложение на Apache Cordova. Есть один сайт, который открывает нужное приложение на телефоне. Сайт открывает что-то типа: intent://com.example.app1 . Но когда сайт дергает мой bundle id, телефон открывает Google Play с моим приложением. У соседа Ерохина коллег по цеху приложение написано на нативном Java. Сайт, перенаправляя на intent://com.example.app2 , открывает именно приложение на телефоне. Теперь вопрос: почему в случае с ними открывается приложение, а у меня — страница в Google Play?Мне не хватает каких-то разрешений у приложения? Приложение должно где-то у себя пометить себя как доступное к запуску через intent? Приложение должно единоразово сдёрнуть какой-то системный метод, где выставить обработчик коллбэка от Системы при доступе через intent?В чём проблема? Заранее спасибо. С меня как обычно
Аноны-вкатывальщики, просветите реально ли найти работу джуном? Я сейчас смотри и циферки на hh не радуют. Везде требуются только с опытом коммерческой разработки.
>>1308817Кажется, я нашёлhttps://developer.android.com/training/basics/intents/filters?hl=ru <intent-filter android:label="@string/launcher_name"> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
>>1308821>реально ли найти работу джуном? Реально.>>1308821>Я сейчас смотри и циферки на hh не радуютциферки одни из нормальных.>>1308821>Везде требуются только с опытом коммерческой разработки.Для этого у тебя есть время научиться хуярить свои приложения уровня впараши.
Скопировал проект с мака на винду и тут в едиторе подсвечивает ошибки например типа не видит ConstraintLayout и ConstraintSetimport android.support.constraint.ConstraintLayoutimport android.support.constraint.ConstraintSetНесмотря на это проект собирается и запускается, версии ждк и грядла одни и те же. Чистил, ребутал, рот ебал
>>1308966Android Studio? Тебе нужно сделать File->Invalidate Cache. Тогда Студия заново просканирует все aar/jar и проиндексирует их содержимое
>>1309181Теперь заебисьЧтобы такого больше не было надо обмазаться гитом для работы с разных пк и приказать ему игнорить либы?
>>1309185У меня нет либ, но такое все равно случалось, причем вечером например все было ок, а через 10 часов уже говно.
>>1290693 (OP)У меня тупой вопрос. Не про разработку, а про Андроид Студио. А может про интеллижидею, на его базе, вроде АС.Каждый пук, сопровождаемый новыми окошками в среде, поднимет АС из бекграунда наверх.Например - запустил, пока он инициализируется, переключился двач почитать, так эта сука десять раз всплывет наверх.ВОПРОС: где это отключить, у меня идеи кончились.
>>1308781>>1308752Вопросы к дизайнеру, я предлагал челику сделать отдельную активити с листвью и поиском, но он хочет чтобы было дешево и быстро
Что скажете про эти курсы?https://www.udemy.com/topic/java/Например эти:>Java Programming Masterclass for Software Developers >The Complete Android & Java Developer Course - Build 21 Apps>Android O & Java - The Complete Android Development Bootcamp
>>1309368Нет.Сейчас заканчиваю Java Programming Basics(https://www.udacity.com/course/java-programming-basics--ud282)потом хочу Object Oriented Programming in Java (https://www.udacity.com/course/object-oriented-programming-in-java--ud283)после уже Android Basics: User Interface(https://www.udacity.com/course/android-basics-user-interface--ud834)и далее по списку:Android Basics: User InputAndroid Basics: Multiple App ScreensAndroid Basics: NetworkingAndroid Basics: Data Storage
>>1309371Хочу попробовать купить (всего за 10 даларов или купить на торренте, если найду) The Complete Android & Java Developer Course - Build 21 Apps, т.к там хотя бы практика в создании 21 шт каких-то аппов. И Java Programming Masterclass for Software Developers. Интересует мнение анонов, в общем.
>>1309372Купил на торренте, в общем:https://rutracker.org/forum/viewtopic.php?t=5549431Java Programming Masterclass for Software Developers https://www.udemy.com/java-the-complete-java-developer-course/https://rutracker.org/forum/viewtopic.php?t=5549680The Complete Android Oreo Developer Course - Build 23 Apps! https://www.udemy.com/the-complete-android-oreo-developer-course/Вроде не индусы ёбаные с хуевым произношением.Буду смотреть по порядку. Потом опять к вам приду за советами. С наступающим.
>>1309418Ты совершил ошибку.Вот здесь все есть. https://coursehunters.net/mobile-developmentВ шапке тоже ВСЕ ЕСТЬ. Офк если хочешь побыть на альтруистичах, можешь выложить уроки сюда. Бтв на сайте есть oreo и т.д. вроде.
>>1309573Действительно все есть. Я думал тебе написать в 8 часов, но чет подумал до работы доеду и скину, а ты уже купил. Лучше бы мне перечислил 20 долларов. И че ты шапку не смотришь пидр? Для кого я ебать ее составлял? По ней сам вкатывался.
>>1290693 (OP)Анон, оцени моё резюме.Опыт работы у меня 10 месяцев. Из них 7 я по знакомству, считай на фрилансе, делал в одиночку довольно большой проект который не вытянул и бросил, и 3 месяца допиливал приложение для работы с BLE устройствами в небольшом стартапе, в который меня взяли тоже по знакомству. Знаю Dagger2, Retrofit2, ButterKnife, Picasso, EventBus могу написать несложные юнит-тесты с Mockito и JUnit4. Пишу на джаве, Kotlin не знаю, как и RxJava.Я переживаю из-за того, что за почти месяц поиска работы у меня всего 4 приглашения на собеседования. На мидла брать пока не хотят, а для джунов на hh вакансий почти нихуя. В чем проблема и что делать?
>>1309608Вот эти 10 месяцев и есть весь мой опыт. Учебный опыт никому не интересен, но жабу я знаю уже лет пять, а под андроид в целом пишу уже два года.
>>1309609> но жабу я знаю уже лет пять, а под андроид в целом пишу уже два года.Попробуй на мидла? Ебать, 5 лет жабы, из них 2 года андройда. Почему ты хочешь на джуна, а не на мидла? Вытянешь.
>>1309612Я откликался на мидла - ни одного приглашения (уже больше 50 откликов). Да и опыт работы в команде, а не в соло, только последние три месяца
>>1309612Да и последний проект, тот единственный который был на настоящей работе, я не успел самую малость доделать - получилось так, что я неудачно организовал свою работу и закончил приложуху только на 95%, оставшиеся 5% багов я не успел доделать и меня попросили на выход.
Двач, как организовать прямое соединение двух устройств через этиваши интернеты между собой?С меня нихуя.
>>1309636У меня траблы с сокетами связанные с тем, что айпишник внутренний отличается от внешнего. Поэтому не могу приконнектиться к устройству. Алсо, мб нужно какое то предварительное шаманство произвести по типу открытия портов?
>>1308821В нашей фирме уже несколько месяцев ищем андроидщика, так никто и не пришел. Хотя требования минимальные, берет даже без опыта.
>>1309638Если тебе через интернет, то нужен сигнальный сервер, чтобы обойти нат. Короче, все не так уж и просто.
>>1309778Зайди на ххсру возьми любую вакансию тыщ за 40-60 там все будет написано. Но имей в виду, что эти знания скорее всего тебе понадобятся на собеседовании. Нужно уметь решать задачи в принципе. Раз у тебя не получается решить такую элементарную задачу по поиску требований для разраба, то тебе будет трудно работать на такой должности как программист.
Что-то я расстроился ребяты. Постоянное клепание чего-то однообразного - становится очень скучно, нудно и не интересно. Все больше думаю о машин ленингe. Вот у гугла есть ML Kit, кто-нибудь копался в нем? Или какие альтернативы есть?В одном приложении видел, что когда юзер наводил камеру на свою руку, его ногти красились в выбранный цвет. Меня это вдохновило и я хочу такое же делать.
>>1310512OpenCV наверни.Я мл кит для OCR юзал, оч пиздатая штука, пробовал до этого тессеракт трейнить, но он нихуя вообще не такой ахуенный как гугловский, хотя гугл вроде его и юзает под капотом
>>1309371>>1309372Не мучайте жопу, аноныначните отсюдаhttps://google-developer-training.github.io/android-developer-fundamentals-course-concepts-v2/
>>1310880Хуйня какая-то. Да, это круто, когда текст все дела. Но когда вкатываешься тебе нужно смотреть глазами как делают другие, а потом еще поиграться самому.
Анончики, есть ли какое-нибудь RSS API у андроида?Тут вот в чём дело - понадобилось следить за новостями в некоторых ресурсах. Задача - чтобы раз в 1-5 минут обновлялись все источники RSS (и просто некоторые сайты, если в них нет RSS) и если есть что-то новое, то мне на телефон приходило уведомление.Вот беда только в том, что ни одно приложение из существующих не удовлетворяет моих запросов. Feedly не имеет уведомлений (в почти 2019 году! Бляяяя!), Inoreader некорректно парсит RSS с некоторых источников, IFTTT - вообще параша, которая под красивой оболочкой прячет 0 фукционала.Короче, решил я свой велосипед написать. Который будет мне присылать уведомления и тогда мне не придётся каждые 5 минут чекать, не появилось ли чего нового.Даже функция читалки мне, в общем-то, и не нужна. Достаточно лишь приходящих уведомлений, а дальше через PendingIntent пусть в браузере открывает нужную страницу.Собственно, как реализовывается обновление RSS данных? Через обычный HTTP-запрос? Или там всё хитрее? Правилен ли такой подход?- Через HttpURLConnection загрузить RSS;- Распарсить его;- Если есть что-то новое, через NotificationCompat создать уведомление, в котором через PendingIntent будет переход на сайт.Ну и через IntentService всё в фоне делать, чтобы при сворачивании/закрытии приложения оно продолжало раз в минуту обновлять все источники.Всё ведь верно?
>>1311002Не совсем, используй WorkManager и шедуль PeriodicWorkRequest а там уже грузи как хочешь и парсь как хочешь.
>>1310933Ясно-понятно.Если текст, анон не осиливает. Ему надо, чтобы репчиком с ютуба пацанчики рассказали.Ты мудак, что ли? Текст объясняет конепции, в конце ссылка на codelab, где тебя за руку водят, как что сделать.Ну, хер с тобой.>Поцаны, хочу стать программистом на яве и андроиде, только я читать ни хуя не умею, очень сложно понимать. Где найти такую работу, чтобы ТЗ в виде видеоклипов давали, а не на 125-ти страницах 12-м шрифтом?
>>1311102Я вкатывался как мог. Даже сейчас мне никто не ответит на мои дебильные вопросы, которые в гугле нет. Так что иди нахуй.
>>1311200Похуй. Быть в курсе дел важнее.Альтернатива в виде поднятия домашнего сервера, чтобы он делал все запросы, а телефон бы обращался к нему через Long Polling - слишком дорого. Что по комплектующим, что по электричеству.
Нужно каждую минуту обновлять записи. Я так понял через бекраунд сервисы это не делается, а лучше через обычный хендлер с таймером?
>>1311592Тогда мне просто ебнуть IntentService, поместить туды эрыкс с таймером на минуту и вызывать?
>>1311108АхахахаКонечно, если не читать доки и курсы от гугла по прогаммированию говна от гугла, то даже гугл не поможет найти ответы.Найди себе другое занятие. Это - явно не для тебя.
>>1311787>Найди себе другое занятие. Это - явно не для тебя.Ты дурачек? Я уже как 6 месяцев работаю и чувствую себя норм.
>>1311509Точно, не знаю как там амазон, можно хероку бомжовский попробовать, но эта залупа будет в слип уходить.
Идс хебениг https://android.googlesource.com/platform/prebuilts/fuchsia_sdk/ - сорцы сдк фуксии в репозитории посвященном ведру. Я надеюсь там будут какие-то варианты кроме C++ и дарт, господи зашо.
>>1312012И кто сказал, что дарт будет выступать в качестве фуси? Где источники официальные? Бтв, уже давно на редите это выкладывали. Если ты склонил и копаешься, лучше бы рассказал как там живется внутри.
>>1312063Ну я на реддите не сижу, сегодня вот в новостях увидел. Flutter никогда не скрывал что он уже готов к фуксии, уже сейчас можно делать приложения для фуксии не только с помошью ее родного сдк, но и с помошью флаттера.https://9to5google.com/2018/03/02/fuchsia-friday-first-fuchsia-app/https://9to5google.com/2018/12/14/fuchsia-friday-sdk-download/
>>1312098>, уже сейчас можно делать приложения для фуксии не только с помошью ее родного сдк,Хм, правильно ли я сейчас понимаю, что я могу заинсталить сдк в андройд студио и написать приложение на флаттер? Хотя, нет, заголовки бы пестрили об этом. Жду туториалов от работяг на медиуме тогда. Посмотрим как развиваться будет.Больше кажется, что туда въебут котлин для нативщины. А флаттер так и останется что-то вроде обоссаныша.
Господа, я знаю, что я не совсем по теме, но не знаете ли вы где можно найти аналог ворд-стата (как у Яндекса) для Google Play. Я думаю, что тамошняя статистика может отличаться от оной в Google AdWords.
>>1312119>Господа, я знаю, что я не совсем по теме,А зачем лезешь тогда? Какой нахуй ворд стат? Попытаюсь перевести. Мировая статистика как у яндекса для гугл плей? У яндекса чего? Приложения? Тамошняя? Российская что ли? Отличается от гугл adWords? Гуглим - находимAds (ранее известный как AdWords) — сервис контекстной, в основном, поисковой рекламы от компании Google, предоставляющий удобный интерфейс множество инструментов для создания эффективных рекламных сообщений.Посмотрел видосик, почитал Делаю вывод это что-то вроде встраиваемой рекламы в гугл поисковик? Т.е. хочешь ебнуть рекламу в гугл плей? Что блять?Иди нахуй.
>>1312134Аналог вордстата в плане показа популярности (в идеале с конкретными числами) поисковых запросов в гугл плее
>>1312387В каком смысле? Денег? Ну смотри, в джаве нету фронта + скорее всего это почти всегда банковский сектор, а он не оч интересный. Но если тебе нравится оптимизация, базы, апишки писать и вот это все то тогда джава.(цена вопроса +- 300 бачей в среднем на синиор + позициях)
>>1312479>Как отображать вьюшку поверх всех других? через диалог?Есть по крайне мере два способа. Можешь найти еще. Если тебе нужно будет делать анимацию, например как в телегеХ или как в обычной телеге, то это достигается через активити + frame layout + видимая часть - Это все будет как простой диалог фрагмент, только активити будет прозрачной. За счет этого можно достичь анимации перехода картинки, например.Я был бы любезен, если бы шарящий один из анонов написал и альтернативные варианты, так бы процесс постижения таких сложных вещей в упрощенной форме был бы легок, а не как копаться в сорцах ебанутой телеге, например.
Нахуя нужен "context" для создания кнопки, текставью и тд? В ios такой хуйни не было. Нормально, что я просто передаю этот конспект по всей иерархии вьюшек?
>>1312943В iOS и тем нормальных нет. Через Context передается очень много хуйни, ресурсы, конфигурация все взаимодействие с фрейморком ведра через него. Вообще он конечно говно и по хорошему его бы распилить на несколько вещей по-меньше.
>>1312981>В iOS и тем нормальных нетНу так сравнил хуй с пальцем) В иосе нормального импорта библиотек и сборки проекта даже нет, лол. Сама по себе андроид разработка опережает иос лет эдак на 5 не шучу, я когда пробовал пилить чисто для себя приложухи для яблок, то ощутил, будто я снова в 2к11м в эклипсе под андроид пишу.
Смотрел кто-нибудь курс на udemy: https://www.udemy.com/android-kak-po-notam-a/, есть ли смысл смотреть новичкам? А курс от Гугла, на udacty?
>>1313009> Создай 25 приложений, в том числе клоны Telegram, Uber, SnapChat, игры Flappy Bird и Super Mario!> заканчивается на ListView
>>1312943>Нахуя нужен "context"Ну вообще тут аноны все расписали уже все. От себя добавлю что это god - object, которого в принципе быть не должно.
Есть ли какой-то способ узнать, по какому url произошло обращение на устройстве? Нужно иметь некую службу. которая будет отслеживание к конкретному адресу.
>>1313475Причем, желательно отлавливать url, к которым обращается любое приложение.Вижу вроде в логах нечто подобное, но хз, как сделать самому.
>>1313698Бтв как то просили поднимать впн автоматически, когда юзер входит в приложение, но кроме огромных либ с С кодом я не осилил. Кто-нибудь знает, это вообще возможно?
>>1313928А тебе точно нужен впн? Может простой прокси достаточно?Полностью автоматически не получится, юзеру все равно выскочит алерт, мол такое то приложение хочет включить впн, включить? Но это если использовать системное апи. Никто не мешает затащить полностью реализацию любого впн протокола в виде огромной либы на чистых сокетах на си.
>>1313942>Никто не мешает затащить полностью реализацию любого впн протокола в виде огромной либы на чистых сокетах на сиМне опыт мешает, я не углублялся на столько глубоко.>Может простой прокси достаточно?Примеров с прокси или с впн на раз два. Некоторое взаимодействие с хттп запросами приходится на внутреннюю частную сеть.
У меня есть таб бар для навигации по фрагментам, он же BottomNavigationView и при смене фрагментов появился делей, походу из-за построения лаяута. Для смены активного фрагмента юзаю fragmentTransaction = supportFragmentManager.beginTransaction(). У него есть метод replace, при котором старый фрагмент стирается и при повторном тапе опять будет делей на верстку. Еще есть метод add, который просто отрисовывает выбранный поверх старого. Мне самому допиливать функционал, чтобы старый фрагмент не стирался, а новый не рисовался поверх или я че-то не понял?
>>1314055Реплейс это правильно. Лучше бы оптимизировал лэйаут, но если нет возможности, то попробуй с ViewPagerом. Тогда просто будешь переключать страницы.
>>1312479В constrationlayout попробуй вьюшку, которую ты хочешь видеть на переднем плане, прикрепить к той, что будет на заднем плане. У меня так работает с текстом на изображении. а ещё можно будет сделать красивые анимации появления/исчезания а у тебя на пике типичный диалог
>>1314024> с проксиУ okhttp из коробки.А вот с внп все хуево.Лучше чтобы юзеры сами добавили впн конфиг и подключались вручную, если им это так нужно. А ты дергал бы сервер как обычно. Есть свзяи нет, можно алертик ебнуть типа: дядя, ты впн включил хоть?
>>1314198Интересно, почитаю, спасибо.Т.к. это внутри компании приложение, они да, настраивают. Только не понимаю, но по идее должно работать, если смотреть на модель OSI то разница лишь в прикладном и сетевом. Тогда все запросы с прокси предположительно можно провернуть. Я попытаюсь завтра.
>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)>>1314926 (OP)
Сап, уважаемые. Попал в аварию 2 года назад, собственно с того момента не работал, до этого был опыт работы 3 года в мелкой конторе. Был там единственным адроид-быдлокодером, уровня джун-мидл хз. Ну и так как я быдлокодер интересует по большей части как обстоят дела с библиотеками на данный момент.Слышал в марте гугл запилил кучу своих либ, но на сколько хороши они на практике инфы не нашел...В частности интересует актуальность Moxy, Cicerone и всего что около самого скелета приложения используется.А так же использовал либу BRVAH для изи создания RecyclerAdapter аналоги посильнее не появились(или были но не знал)?Ну и вообще что сейчас мастхев юзать начиная с андроида версии 6+. Без Котлина еще можно жить?Можно просто тегами либы\технологии через запятую там разберусь что куда