Тред для тех, кто пытается вкатиться в андройд разработку или что-то похожее. По возможности стараемся вести себя прилично и угощать зашедших мармеладкой.> Хочу вкатиться в разработку под Android! С чего начать?С видеокурсов от Udacity. Они бесплатны и затрагивают основы разработки даже если не умеешь писать на Java.https://www.udacity.com/course/android-development-for-beginners--ud837Для тех, кто не хочет учиться по юдасити существует скучный кат от гугла: http://developer.android.com/training/index.htmlЕсли имел опыт в програмаче, можешь посмотреть видосики отсюда https://web.stanford.edu/class/cs193a/videos.shtmlОчень доходчиво и интересноТак же есть книга, которая затрагивает основы разработки и имеет 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Или от еврея, который приезжает иногда в Москву и проводит свою школуhttps://www.youtube.com/playlist?list=PLjLCGE4bVpHChlptwNJW3is1lvO5wxFBuВ дальнейшем потребуется базовое знание SQL, понимание XML и JSON.> Я прошел курсы Udasity, а дальше что?После прохождения курсов у тебя должно сложиться базовое представление о создании приложения; жизненные циклы Activity/Fragments, AsynsTask, Http, Json, SQLite.Дальше закрепляешь знания путем просмотра видосов выше + Написание парочку приложений на свой вкус. Так же стоит уделить внимание BroadcastReceiver, IntentService, поиграться с Loader's, хендлерами, Contest providers и прочее, построить очередной Weather or ToDo must have list.>Не могу разобраться в потоках. Хендлеры, хуендлеры хуйтаски. Как быть?http://codetheory.in/android-handlers-runnables-loopers-messagequeue-handlerthread/ - Хорошая статья, которая экономит время. После нее можно сразу переходить и тыкаться в хендлерах.https://blog.mindorks.com/android-core-looper-handler-and-handlerthread-bd54d69fe91a - еще одна от миндоркса.https://blog.nikitaog.me/2014/10/11/android-looper-handler-handlerthread-i/ - еще одна интересная.>Хочу изучать популярные либы и не быть говноедом!Если ты сразу после курсов переползаешь сюда - будь готов, что ты не будешь знать как это делается под капотом, и в конце концов соснешь когда-нибудь.Retrofit - стандарт для взаимодействия с сетью. Она идет в комплекте с okhttp3, начинаешь с последней, а потом переползаешь на сам ретрофит. Так же для справки можешь гуглить volley.RxJava - одно из решений для выполнения кода в бекраунде. Ниже ссылочки, смотри и поглощай.https://www.youtube.com/watch?v=YPf6AYDaYf8- rxJava идея с нуляhttps://www.youtube.com/watch?v=3jdvLrYZfB4&t=https://www.youtube.com/watch?v=0IKHxjkgop4 https://coursehunters.net/course/master-klass-po-rxjava-s-mvvm-dlya-razrabotki-pod-android https://www.youtube.com/watch?v=t34AQlblSeE - retrofitНеплохо было бы и изучить MVP. Вообще его следует изучать сразу. Видишь 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> Хочу хуярить красивые свистоперделкиЗдесь главное тыкаться и набираться опыта. Самое полезное что есть в тыкнете:https://www.youtube.com/watch?v=H05mF0qrBVA - для начала можешь смотреть это - поясняет базуhttps://proandroiddev.com/how-to-draw-a-custom-view-9da8016fe94 - ну или этоhttps://vimeo.com/127799187 - челик при тебе строит кастомную вьюшку.https://academy.realm.io/posts/360andev-huyen-tue-dao-measure-layout-draw-repeat-custom-views-and-viewgroups-android/ - буряточка обобщает всех остальных. Лучшее что есть. Тут уже главное вчитываться и понимать ее.Все, остальное - набивание руки и практика. Берешь интерфейс и строишь.> Я заебался. Почему мои приложения постоянно падают в проде и как эту хуйню фиксить?Для этого придумали тесты. Для общего понимания смотришь видосик от импозантного мужчины:https://habr.com/ru/company/yandex/blog/346186/https://habr.com/ru/post/352334/ потом пробегаешься по статье, и дальше сам пишешь.> Не хочу писать на Java!- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17.05.2017 поддерживается официально.https://www.youtube.com/watch?v=-H98SWHayL4 - свежие лекции на русском, объяснение корутин прост бжствно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 и ее версии (уже androidx), shared preferences, SQLite, Handlers, Executors, Content-Providers), знание популярных библиотек типа Retrofit + Glide/Picasso + RxJava2 + Dagger2(по обстоятельствам) + гугловские поделки jetpack, понимания СОЛИД и других паттернов проектирования. Базовое понимание что вообще такое Gradle. И хотя бы несколько готовых приложений.Полезные ссылки:https://coursehunters.net/mobile-development - очень много уроков и не только по ведройду. Почекай и посмотри, вдруг зайдет.https://www.youtube.com/channel/UCSwuCetC3YlO1Y7bqVW5GHg - канадский челик, поясняет за архитектуру и отвечает на разные вопросы на стримах.https://github.com/toddmotto/public-apis - бесплатные API для создания приложений.https://github.com/AlexeyZatsepin/Android-ORM-benchmark - бенчмарки на вопросы о том, какую БД выбирать.https://androiddev.apptractor.ru/category/podcast/page/0/ - подкасты ведройд разрабов которые шарят про все и вся
Взяли джуном на галеру среднего пошиба где-то месяц назад, но сразу дали задачи на мидла, которые я тащил. За два последних спринта сделал большой вклад в проект (в основном пилил новый функционал, чуть-чуть багофиксил за мидлом), и вот теперь вопрос: что и насколько глубоко надо знать, чтобы начали считать мидлом?Сейчас, помимо жабы и котлина, знаю Retrofit, Dagger, умею писать UI- и юнит-тесты с JUnit и Espresso ебись он в сраку
Поясните быдлокодеру, как осуществляется взаимодействие между сервером и клиентом в этих наших инстограмах и прочих соцсетях? Че они там используют, вебсокеты, тцп, хттп или какого рода ваще запросы? Я правильно понимаю, что у каждого сервиса свое апи, и все вот это вот возвращает тот же джсон?
>>1362302>Я правильно понимаю, что у каждого сервиса свое апи, и все вот это вот возвращает тот же джсон? Да. Поэтому если у сервиса есть приложение, но нет официального апи всегда можно расковырять приложение (или поснифать запросы) и воспользоваться апи неофициальным.
>>1361955 (OP)Здравствуйте, уважаемая редакция. Я не умею и не хочу писать под андроид, но мне надо сделать простенький мобильный фронтенд. Я потыкал React Native и остался доволен всем, кроме того факта, что он нихуя не работает. Километры ворнингов, ошибки сборки, которые не гуглятся, сложная структура проекта, которую я не понимаю, и т. д. В связи с чем вопрос: а как избавиться от всей этой дряни (Android Studio и вообще любые блядские IDE, ненавижу их, а так же gradle, вот это всё) без необходимости писать все компоненты с нуля? Мне по барабану, на каком языке писать.
Парни, собственно такой вопрос: где можно хранить музыкальные данные (сервер какой-нибудь), чтобы потом через приложение их слушать. И как мне их оттуда загрузить через java?
>>1362487Там слишком много лишней херни, может не оказаться того, что мне нужно, а ещё навигация не нативная, т. е. всё будет дико тормозить. Ну, по крайней мере, пока пейсбуки не починят эту свою библиотеку, что вообще вряд ли случится.
>>1362452Какие преимущества она дает? От гугловского приятный только рум и воркер. Все остальное говно.>>1362466>Я хочу что-то делать, но не хочу как ВСЕ, а я хочу через ЖОПУ. Причем свою.>>1362486Пишешь сервак, пишешь мобилку? профит. А если ты очередной залетный маня то используй гугл диск или телегу.
>>1362500Подожди, у меня есть домен на хостинге. Можно как-то туда файлы залить и через приложение скачать. Не особо разбираюсь, но крайне нужно сейчас. Помоги хотя бы чуть-чуть
>>1362403Знать и использовать это разные вещи. Все равно что писать в резюме знание градла, когда ты от него знаешь только андроид градл плагин да и тот наполовину.
Почему еще никто не поблагодарил опа за говняную шапку с >поиграться с Loader's> курсы от Яндекса из палеолита
Бля, анон, я тупой. Накидал 2 фрагмента, на активити в нужное место поставил viewpager. Что дальше? Как их туда подключить?И вообще, посоветуй нормальную литературу/курсы по созданию интерфейса. Предпочтительно на русском, но на инглише тоже могу
Господа, может подскажет кто. Есть много библиотек для андроида в разных репозиториях гитлаба (в разных проектах). Надо сделать возможность подключать эти библиотеки к проекту приложения через Gradle. То есть надо организовать какой нибудь аналог JitPack, например, чтобы по url/названию либы подключать библиотеку к проекту, но в закрытой сети. Или надо поднимать свой локальный maven repository и руками туда складывать билды либ или есть какие-то другие решения для этого дела?
>>1363139Ну да, только такие бесплатные решение в гугле я и нашел. Видимо, самый нормальный вариант это поднимать свой мавен репо с jfrog artifactory.
Анон, подскажи, как загрузить апк новой версии приложения если в гугл консоли зарегистрированы старые ключи sha-1? Как зарегистировать новые или что-то ещё надо сделать?
>>1363319да, я уже облепил юнит тестами презентеры и тестирую последовательность вызовов методов, по кайфу
>>1363331Что за вариант у меня 24 sdk минимальные?Новое делать, это значит - голая статистика скачиваний и всё остальное, как-то совсем не вариант
>>1363351Да его до меня парень делал, я уже на его наследие пришёл, а ключей нет.Вот такое пишет:Your Android App Bundle is signed with the wrong key. Ensure that your app bundle is signed with the correct signing key and try again: SHA1:
dp нихуя не одинаково выглядят на разных экранах. привязываюсь к размерам экрана, например, кнопка.ширина = экран.ширина * 0.1подводные?
>>1363353посмотри на его рабочем компе. На будущее, есть механизм, где гугл плей генерит ключ и сохраняет у себя, как раз чтобы не было таких ситуаций.
>>1363515>>1363442Спасибо, парни, за советы - разобрался. Я не правильно понимал как работает подпись апкшки. Релизнулся наконец-то.
Опять что-то сломалось. Работала нормально, после перезагрузки компа собирается, но запускаться не хочет
>>1363555Либо сделай clean и rebuild.Либо смотри что у тебя с JSONом, он должен быть Array, а приходит String.
>>1363559Либо смотри что у тебя с JSONом, он должен быть Array, а приходит String.приложение не запускалосьуже сделал, теперь бесконечно "waiting for target device to come online" и ничего со стака не помогает это пофиксить
>>1363563установил новый симулятор и при первом запуске приложения пишет что-то типа "ошибка, наверно приложение было установлено", нажимаю удалить старое и вижу DELETE_FAILED_INTERNAL_ERRORError while Installing APKs
Здарова. Я у вас проездом, сейчас сосать хуй а мобильной команде месяц, поясните, мануалки с developer.android.com вообще есть смысл читать при уверенном знании джавы, или можно пару видосов типа android разработка за час глянуть и хватит?
>>1363445а с хуяли они должно выглядить одинаково на разных экранах? почитай для начала что такое dp и не задавай больше глупых вопросов
Аноны, битард долбоеб на связи. Думаю вкатиться в эти ваши программирования и пока что смотрю в сторону мобильных устройств и само собой Андройда в частности. В общем подскажите, сколько времени мне понадобиться, что бы с полного 0, дойти хотя бы до Хелло Ворлд и более сложных хуевин? Схватываю я быстро, но с математикой у меня пизда. Стоит ли начинать с такими вводными или ну его нахуй?
>>1363928Хорошо, учту. >>1363930>минут пять - десятьЭто мне подходит>от годаА вот это пиздос. Я уже 9 лет потратил на свою ЙОБА специальность которая мне в итоге нахуй не упала и из-за которой мне теперь приходится идти работать продавцом-консультантом за 20к в ДС. Рот ебал. А еще тяночку хочется. Лучше бы в программеры вкатился бы за это время и тоже бы 300к в секунду бы имел. Но все равно спасибо за точный ответ анон! >>1364032Все так плохо? Я просто хочу для себя делать всякие програмки, а потом в плей маркет их выкладывать и получать с этого копеечку на рекламе и платных функциях, ну как все долбоебы делают в плей маркете. Ну хотя бы что бы на еду хватало. Я так понял, это так все таки не работает да?
>>1363579Если бы до начала андроид разработки занимался программированием, писал например бэкенд, то мне отлично бы зашли видосики от мейлсру или яндекса. Ребята доходчиво объясняют все аспекты андроид разработки, причем некоторые моменты и в книгах не встретишь, т.к. это все-таки разработчики, которые, в первую очередь, делятся своим опытом, а не пересказывают андроидком.
>>1363915Работаю уже более полугода андроид разработчиком и жалею что не пошел в иос. Когда дело доходит до запиливания чего-то своего, кастомного, получаешь удар под дых. В стандартных сдк кучи багов, которые спустя 10 лет не починили, о которых холивары только на стековерфлоу, тормознутый интерфейст, практически невозможно сделать красивый нелагающий блур, как в иос. Непонятные баги, которые возникают на некоторых устройствах, но исправлять их все равно нужно, дыры в безопасности (привет ацессабилити сервис) и еще кууча всего. Ко всему прочему добавляется более низкая окупаемость приложений, чем на иос, и соответсвенно оплата труда у иос выше на 20-30к, чем у андроид. Пока еще не решился убегать в иос, т.к. на это нужно время тратить, когда ты итак сидишь на работе и кодишь. Со временем начинает заебыать, хотя в целом нравится копаться во всем этом дерьме.
>>1363915Это твоя жизнь. просто съеби. если хочешь - в шапке все есть, дурачек.>>1364211а теперь я понял что ты троль. удачи.>>1364232повесить листенер.>>1364266двачую этого товарища. На иосе писать приятно, все концепции можно перевести с ведра. Имхо VIPER у них говно. А так просто класс. Скоро буду искать на нем вакансию.
>>1364310>На иосе писать приятномного написал? я вот пописал пол года и не увидел ниче такого, везде говна хлебнуть можно
У меня есть RecyclerView+GridLayoutManager (выставленный ему как layout manager). У меня есть задача возврата пользователя на конкретный offset. Как мне сохранять текущую позицию скролла и потом скроллить RecyclerView? Всё, что связано со скроллом, отдаёт 0. На ScrollTo не реагирует. Обычно у RecyclerView ставится другой layout manager, но мне нужен именно Grid.
>>1364361Так я вижу manager.scrollToPosition, спасибо. А каким образом получить текущую позицию скроллинга? У менеджера есть метод getPosition, но он требует своим аргументом View. Причём я пока не нашёл какую — одного из своих детей?
>>1364505Всё, я понял. position это index ребёнка, а не размер в пикселях. Разбираюсь сейчас в какой момент сдёрнуть scrollToPosition, чтобы скролл прошёл
Подскажите как понять mvc на андройдеПользователь тыкает -> передается контроллеру -> контроллер получает данные от модели -> а чё дальше?
у нас в шараге проходят занятия по андроиду и первую сессию я кое-как сдал, попутно крав код с гитхаба, но теперь препод сказал, что нужно ебашить проект под выкладку на гугл плей. Возможно ли сделать эту простецкую программу с https://coursehunters.net/course/real-andoid и залить его в магазин? Голову ебет тот момент, что этот reminder скорее всего уже сто раз заливали и он не пройдет из-за плагиата
>>1365400>Подскажите как понять mvc на андройдеЭто когда все говно у тебя в активити. >>1365490Да че там вообще делать в этом ремайндере? зашел на uplabs вбил todo android -> посмотрел на дизайн -> и нарисовал у себя такой же. все. Ебать, в шараге преподают ведройд и они еще хуйней страдают.
Господа, я хочу собирать некоторую поведенческую информацию пользователей и отправлять их поведенческие event'ы в Firebase, но я не знаю что можно, а что нет. Я хочу с каждым поведенческим event'ом отправлять модель телефона, install id, id просматриваемой "статьи" (для сбора популярности), время пребывания на конкретной странице без скролла (тупо когда пользователь пялится в экран), время "активного" скроллинга, просто время пребывания на странице.Что собирать можно, а что нет? Какую цель сбора данных мне указать в privacy policy? На самом деле мне нужно это для получения данных о популярности контента и для оптимизации показа рекламы, а также оптимизации интерфейса приложения.Какие данные можно собирать об эффективности рекламы? Например, могу ли я отправлять reward type/amount от Admob Rewarded Video? Могу ли я указывать при каких обстоятельствах произошёл показ рекламы (например, человек перешёл с конкретного Activity на другой Activity и там кликнул на что-то)?----------------------------------------------------------------------------------------Ещё один вопрос, я изучаю игры из Google Play. Наткнулся на игру https://play.google.com/store/apps/details?id=com.azurinteractive.humanevolution , там есть прямое поощрение пользователя за просмотр Rewarded Video. Причём, там нет ограничений на это. Пользователь час подряд может смотреть rewarded видео и получать за это некоторые бонусные баллы. Так вообще можно или они нарушают правила AdMob? Там используются несколько разных рекламных сетей для видео Unity Ads & Admob.Заранее спасибо
Нужна помощь в реализации данной анимации. Что уже получилось сделать с помощью AnimatorSet и ValueAnimator уменьшение дуги с 360 до 90 и кручение этой дуги по кругу. Но как реализовать завершение анимации не могу вкурить. Пока сделал так, что отменяю анимацию кручения, дуга останавливается в произвольном месте, и в методе onAnimationCancel запускаю еще один ValueAnimator который должен запустить завершение анимации, т.е. уменьшение дуги с 90 до 0 и смещение стартовой позиции до верхней части круга. Но вот тут я въебался и затупил. В итоге нужно каким-то образом рассчитать разницу между текущим положением и положением в которое нужно сместить дугу и параллельно ее уменьшить до 90.https://pastebin.com/Lhc5iwqf
>>1365903я бы сделал через SVG. Просто несколько разных SVG. 1. Стрелочка "играть"2. две палочки и крутящаяся по окружности палочка3. две палочки и заполнение по окружности
>>1365905Ну логика работы этих элементов уже описана, то есть можешь не обращать внимание на состояние "играть" и "пауза".
>>1365930Просто если ты сделаешь одну svg и две её копии, то у тебя будет pixel perfect схождение всех трёх вариантов. В обратном случае у тебя могут бегать пиксели влево-вправо, так как хинтинга нет. А если везде один вариант, то рендер будет одним вариантом рендерить все элементы. Логика проста
>>1365933Я же сказал, что меня интересует только что происходит с кругом по периметру. Треугольник и две палочки - фиг с ними, т.к. они простые SVG и я играю их видимостью в зависимости от состояния вне моего кастомного круглого прогресс бара.
Сап. Подскажите с макетом. 3 кнопки слева это обычные imageView, а справа fab? На правых должен быть текст
Сап, нужно приложение которое показывало бы GPS в статус баре постоянно + его точность в метрах. Типа 41.491920, 52.590921 - 5m, с возможностью нажать скопировать в буфер обмена только координаты. Я так понимаю мне нужно копать в сторону foreground service, нагуглил вот такой говнокод:https://codinginflow.com/tutorials/android/foreground-serviceВ какую часть кода прикручивать гпс? Сюда? startForeground(1, notification); //do heavy work on a background thread //stopSelf(); return START_NOT_STICKY;
>>1366948Имеет конечно. Как ты думаешь сколько времени пройдёт до замены платформы? И скорее всего Гугл извернётся и заставит андроидовские приложения работать на новой операционке
Три дня пердолился с этой астудией, и вот, пикрелейтедИ это вывод одной строчки на экран занимает пол часа минимум, встроенные эмули вообще не дождался когда они чет мне покажут. Собственно вопрос - а существует что нибудь менее тормозное, VS и intelliJ те же тормоза, в юнити есть андроид ? Просто ну не реально с такими тормозищами собирать большой проект, если хеловорлд полдня собирает
>>1367005>в юнити есть андроид ?В юнити билд - пара минут на небольшой проект. Но там весь гуй тебе придется самому кодить. Готовых виджетов минимум, и они на системные не похожи.
>>1366771Fab тут неуместно, т.к. у него другое предназначение. Можно использовать imageButton. Можно нарисовать круг в drawable и добавить как атрибут background к элементу button.
>>1367005Видимо у тебя пека древний. Проект с использованием плюсов собирается минуты 3-5 на мак мини стареньком с 8 гигобутами. Хелловорлды на эмуляторе из андроид студии собирается достаточно быстро, даже вместе с запуском того самого эмулятора. Правдо замечено, что новые версии андроид на эмуляторах заметно тормозят, нежели до 23 апи. А вообще не советую использовать эмуляторы, только в крайнем случае.
Котаны, хочу написать код, который будет определять, установлено ли определённое приложение на девайсе. Проблема в том, что приложение задаёт себе рандомное, поэтому по имени/id его не найдёшь.Решил детектить его по иконке. Проходим по списку приложений на девайсе, получаем байты иконки, формируем хеш и по нему проверяем. Вот только getApplicationIcon возвращает иконку разных размеров в зависимости от девайса.Как можно получить оригинальную иконку? Через PackageManager реально это сделать?
Кажется понял. Можно через dpi получать одинаковый результат на разных девайсах. И так задетектить приложение.BitmapFactory.Options options = new BitmapFactory.Options();options.inTargetDensity = 100;Bitmap appIconBitmap = BitmapFactory.decodeResource(resources, appIconResId, options);
>>1367383>что приложение задаёт себе рандомноепакет рандомный? А на каком этапе своего существования приложение само себе задаёт пакет?
println(array)> System.out: array : [1,2]val json = JSONObject()json.put("array", array)println(json)> {"array":"[1,2]"}нахуй туда ковычки высираются?
>>1367400>пакет рандомный? А на каком этапе своего существования приложение само себе задаёт пакет?После первой установки оно себя ещё раз устанавливает, а после удаляет первую установку.
>>1367449Смотри сигнатуру метода, оно использует put(String, Object), вот наверное и конвертит массив в его строчное представление.Нужно сделать предварительно JSONArray и его уже пихать.
>>1367541Спасибо. Что посоветуешь почитать? Хочу сделать себе ежедневник. На плеймаркете ничего не понравилось. Раньше пользовался евернотом, а сейчас телефон его не поддерживает.
>>1367554Конструкторы всякие говняные искать надо, видел какую-то поеботу в которой ты набивал jsные скрипты и оно как-то потом конструировалось в приложение. Но я ничего конкретного посоветовать не могу, ну и зависит от твоих знаний и требований, если тебе нужно еще и сервер то какой то лучше забей. В любом случае с телефона ты вряд ли что-то хорошее сделаешь.
Что там по GDPR? Как его лучше запрашивать? Мне для показа рекламы через разные рекламные сети надо отдать галочку "пользователь согласен". Но я не хочу жульничать иначе это сразу "до свидания, приложения и аккаунты"
Сап. Как называется это view? Или если нету встроенного, как его гуглить? Хочу сделать таблицу и чтобы сверху было подобное. И при свайпе влево либо вправо в этом view в таблицу загружались новые данные. Спасибо
>>1367834две стрелки по бокам, на них лысенеры, картинка, текст. Контент холдер это у тебя вьюпейджер, лучше использовать viewpager 2
>>1367872> лучше использовать viewpager 2> viewpager2>smart technology>просто перевернули ресуклер. Коих либ полно на гитхабе.
>>1367923Еще и на реддите восторженные голоса. А если вспомнить что все поголовно уже на вью модели перешли, так сразу же можно заключить что дауны сидят там. Благо всегда есть исключения.
Знающие, подскажите. Я скачиваю по нажатию на клавишу файл из сервера (это я реализовал), но куда мне его сохранять, чтобы он был скрыт от глаз пользователя. Если что, я вызываю request.setDestinationInExternalFilesDir и загружаю в DIRECTORY_DOWNLOADS. Подскажите хоть как-то
>>1368011Может можно как-то установить скрытую видимость файла для пользователя, но через программу иметь возможность обратиться?
PagingLibrary для пагинации кто-нибудь юзает?Хотел вот пагинашку замутить и первое что нашел, гугля, не использовать старое решение с переписыванием LayoutManager, чтобы получить ивент, когда доскролится, а использовать вот эту PagingLibrary, на первый взгляд по любой статье, можно просто охуеть от количества бройлерплэйт кода, а вот то старое решение, не выглядит так монструозно. Это я еще к чему, что я просто учусь и вот появилась такая задача реализовать это, а мне первой статьей сразу пишут, что юзать, а что нет. А еще она там за собой LiveData с MVVM тянет, я только к MVP привык, пока ради пагинации не хочу все блять переписывать.
Почему на эмуляторе запрос апи выполняется в 10 раз медленней, чем с постмана? тестирую на 3g, либа valley
У меня есть модель жсона с кучей вложенных классов, используя конвертор - moshi, он требует для каждого класса указать статик, а если юзать gson, то этого делать не нужно. Не подскажите почему или я где-то накосячил?
>>1368085А при чем здесь это? Модель уже готова вопрос относительно конверторов, один требует для вложенных классов static, а другой нет.
>>1368083хочешь сказать из-за либы делей в 10 раз больше? я вообще не понимаю че за хуйня, там запрос хуйня и он выходит за 3сек при 780kbps и делее 100
>>1368090Ничего он не требует, в том то и дело. Скачай плагин RoboPOJOGenerator(можно выбрать gson или moshi), сгенерируй и сравни со своей моделью.
>>1368098Заюзал плагин, он мне 6 классов создал, зачем мне столько? Я использую один и все остальные в него сохраняю.Вопрос, наверное, не так задал) Для конвертора moshi, если не использовать static для вложенных классов, то будет Caused by: java.lang.IllegalArgumentException: Cannot serialize non-static nested class... А gson и без этого работает на этой же модели, в чем и собственно и странность?
>>1368037>LiveDataМожешь использовать рикс >android.arch.paging:rxjava2> pagedListObservable = new RxPagedListBuilder
>>1368072Ну епт, вот как ты сохраняешь презентеры (или что там у тебя) от изменений конфига? И чем хранение стейта в androidxовском viemodelе хуже.
>>1368112В джаве нет вложенных классов, и если он не статик, то на деле будет содержать ссылку на внешний класс, если не объявлен как static. GSON рефлексией все хуярит на похуях, moshi чуть строже в этом и штука.
>>1368205Как твоя стратегия хранит мелочи которые должны ресторится из бандла? Ты же не хранишь все UI пуки-среньки в БД?
>>1368415Чего? Сохранить презентер после переворота сложная задача? >>1368232Чего? Дауненок вылез. У меня в проектах не юзается мввм.
>>1361955 (OP)>http://developer.alexanderklimov.ru/android/У этого кто нибудь купил подписку, что он там прячет ? Его хеллокити нихуя не правильно, сначала идет норм, но когда доходит до кода все пизда, кнопка не кнопка, вместо картинки хуй, может у него и там говно типа того же, чего он там спрятал ? Я просто нашел все что есть на русском. Здесь https://skillberg.com/?utm_source=androidschool&utm_medium=banner&utm_campaign=popupтоже хотят денег за то что есть и без денег, если поискать
Сап, какой мне контейнер использовать для отображения? То есть у меня есть List полученный из jsona, в нем 10 объектов нужно отобразить один, следующий отображать если человек свайпнул, когда все 10 проходят я получаю новые, как это лучше реализовать?
>>1368529Недавно делал тестовую json хуиту на Мокси. Специально написал, что нет проверок на null и всё такое (нахуя они нужны в тесте?)Ответ был вроде: СУК ХУЛИ ВСЁ КРАШИТСЯЯ ебал.
>>1368482Когда твое приложение грохается, у активитей, фрагментов, сервисов, а теперь и гугловских вьюмоделей есть шанс сохранить свое говно в бандл. А потом соответственно из него восстановится, что если заморочиться даст лучший экспириенс, как ты решаешь это с презентерами? Из памяти он убьется, остается только бандл.
>>1368595о ебать кейс на 1 процент пользователей, а то что вьюмодел говно аффектит всех твоих пользователей.Можешь сохранить вручную свое говно в бандл. Это же надо быть каким аутистом, чтобы думать, что вызывать два метода для бандла дохуя сложно
>>1368598Так блин, я пытаюсь тебя развести на список минусов viewmodel. А ты постоянно уходишь от ответа, ну кроме того что у тебя есть проверенный способ который тебя всем устраивает, если это все то ок.
>>1361955 (OP)Насколько разработка под полноценный андроид отличается от разработки под веар ос? Вывод инфы на экран, чтение сенсоров, сеть, фоновые приложения? АПИ одинаковое или учить заново? Можно найти андроид-девелопера и посадить кодить под часы, например?Насколько сложно (как?) сделать висящее постоянно на экране приложение, даже если пытаться его свернуть (как на автоматах в макдональдсе, метро или банке)? Но при этом не делать постоянно включенный экран, сохранить остальное поведение устройства (ждущий режим выключает экран и др.).
>>1368655Не ты ли это вбрасывал с какого то треда кодить под мидбанд или что-то в этом роде? Съеби.И вообще конечно разные, но принципы одинаковы. Под иос лучше.
>>1368667Чем лучше? Там до сих пор, ни нормальной IDE, ни системы сборки. Ладно хоть приличный язык завезли. Да и тот - сккопирован с Котлина.
>>1368667Нет, не я. МиБэнд, насколько я знаю, вообще не на веар ос, а на какой-то прошивке сяомишной.
>>1368675Если выбирать между иде и сдк(кит), то я выбираю кит.>Да и тот - сккопирован с КотлинаНравятся люди, которые сравниваюсь свифт и кокотлин.
У меня есть проблема с отображением моего RecyclerView на Сяоми. У меня через GridLayout выводятся элементы в один столбец (GridLayout там для другого отображения — в два столбца). Изначально на моём телефоне Samsung Galaxy S9 иногда RecyclerView отображался на половину экрана (на скриншоте). Причём, это происходило редко. Я поправил вёрстку: поставил Constraint, width=0dp (стояло match_parent), starttostart & endtoend. На моём телефоне этот баг полностью прошёл.Вот мои элементы:RecyclerViewhttps://pastebin.com/j53C4jVZCard Viewhttps://pastebin.com/F0Vi28LQОднако у коллеги на Samsung A7 этот баг всё равно появлялся. Я сделал work around и во фрагменте при отображении RecyclerView выставлял ему setLayoutParams & setPadding (паддинг сбрасывается при setLayoutParams, поэтому приходится выставить ещё раз).https://pastebin.com/BB8uxXfFНа этом телефоне у него баг прошёл. При этом на другом его телефоне, Xiaomi redmi note 4, баг всё ещё есть и появляется также часто как появлялся до моего work around с setLayoutParams. Как мне это исправлять?Скриншоты с разных телефонов, поэтому отличаются по размеру
>>1369043match_parent в констрейнтах лучше не юзать, вместо это используй match_constraints (то есть 0dp). Попробуй в ресайклере поставить 0dp по ширине (ты правда, написал, что поставил 0dp где-то, но я не понял где). Если это не активити, а фрагмент (а учитывая, что тулбар не описан, это так и есть), то проверь, чтобы ширина контейнера фрагмента была на весь экран, а не wrap_contentАлсо, констрейнты в твоей cardView не работает, потому что у неё parent не constraintlayout, а recyclerview.
Сап двач.Сейчас понавыходило девайсов с нотчем и дырками в экране. А как это все тестить? инб4 купить девайс Есть ли эмуляторы с таким функционалом?
>>1369746https://stackoverflow.com/questions/49652453/is-it-possible-to-emulate-the-notch-from-the-huawei-p20-with-android-studio
Сап, че за трабл, я просто хочу вывести в текствью жанные из тайпа, он приходит все ок, но вьюшка выдает нулпоинтерШо делать?
После всего, что я видел в ведройде, я так и не осилил кастомные вьюшки. Пересмотрел видосы, потыкал onMeasure, onDraw, нарисовал квадрат. Окей, переместил его, задал аттрибуты, чтобы потом дергать можно было в кастомной вьюшке-классе. Попытался нарисовать безье - соснул. Попытался построить какой-то график - нихуя не понял как и что делать. Даже пикрил не смогу сделать, ничего просто не могу, пиздец. Никогда не думал, что это станет камнем преткновения.мимо1.5годаопытакопаниявведре
>>1369774ты совсем дурак? у нас тут что, тред телепатов? как мы блять должны понять че ты там делаешь в своей параше что у тебя нихуя не работает?
>>1369972Да я охуею все это перечитывать. Ответь пожалуйста хотя бы коротко или дай линки на почитать.
Всем привет.У меня есть хобби: очень скромный магазин хэнд-мейнд товаров.Я сам сделал к нему сайт на вордпресе.Потыкал в js, php, SQL, соответственно, где требовалось, код учу по мере необходимости, на практических задачах в этом магазине.Хочу сделать к нему приложение - каталог, корзина, оформление заказа, без оплаты.С чего начать? Возможно ли сделать все бесплатно, в том числе выгрузить на Гугл плей?Аудитория - не более 500 клиентов, цель, повторюсь: хобби.
>>1370146и при чем тут андроид деввсе тобою перечисленное можно сделать на вордпрессе плагинамивообще тебе лучше в /web/
>>1369929https://pastebin.com/YnuHzXMF activity,https://pastebin.com/0KAzwQ4M activity_start.xml,https://pastebin.com/NUV6u1sb item_card.xml
>>1370202>service = RetrofitBuilder.createService(ApiService.class);Знаешь чем хорош ведройд? Тем, что тебе сначала нужно выучить дохулион подходов, чтобы делать нормальные приложения, это я еще не говорю про еботню с УИ.>tv_location = findViewById(R.id.tv_location);>tv_name = findViewById(R.id.tv_name);>tv_text = findViewById(R.id.tv_text);здесь нужно itemView.finbyId
>>1370218Благодарю вас, решило проблему)>Знаешь чем хорош ведройд? Тем, что тебе сначала нужно выучить дохулион подходов, чтобы делать нормальные приложения, это я еще не говорю про еботню с УИ.А где почитать, как сделать правильно? Я так реализовал https://pastebin.com/z88FxD0uУ рецуклера есть возможность, вывода в ui одно элемента из lista? То есть хотелось, чтобы остальные загружались только после свайпа юзера или это как-то по-другому реализуется?
>>1370146Так что хочешь в итоге? Цель хобби - звучит глупо. Как хобби может быть целью? Все-таки хочешь сделать приложение или научиться программировать под ведро?
>>1370243>А где почитать, как сделать правильно? C опытом говна придет. Я бы советовал купить мак и в иос перекатываться.>У рецуклера есть возможность, вывода в ui одно элемента из lista? То есть хотелось, чтобы остальные загружались только после свайпа юзера или это как-то по-другому реализуется?Просто ретурнишь 1, когда свайп - подгружаешь дальше.
Допустим, есть ViewModel из новых андроидокомпонентов.В ней одна приватная булевая LiveData result, которая меняет свое значения на то или иное событие. По-умолчанию false.И есть некоторая вьюшка, в которой в несколько мест нужно прибиндить некоторые значения на основе result.Вопрос. Как это сделать, не прописывая во вьюшке выражения, которые что-то там высчитывают с result?Хочется иметь это прямо во вьюмодели, но когда пытаюсь биндить Transformations.map(result, { какая-то лямбда }, то по умолчанию ничего не высчитывается, пока не поменяется result. В отличии от как если приписывать ту же самую функции в выражении прямо во вьюшке.
https://www.udemy.com/master-android-7-nougat-java-app-development-step-by-step/learn/v4/Этот курс норм?
о спасибо напомнил купить по скидке реакт нэйтив курс, он вроде более подробный чем на курсере + сертификат на курсере я бы аудировал...
>>1371337> он по скидке сейчас 1000р стоитЛох не мамонт. Там 365 дней в году "скидки 90%" на курсы от всяких индийских васянов. > можно сертификатТаким сертификатом можно только жопу подтереть, реальной пользы от него никакой. > в линкедин добавитьХули ты на забоокировнные сайты ходишь, ууу, вражина!
>>1368655Да ёбаный, ну поясните уже кто-нибудь, прошу, дайте ссылки хоть, где почитать, если самим писать лень. Это ж не гайд "как сменить кодировку на убунте", такую хуйню, не зная, не нагуглишь.
>>1371394ты заебал, одна секунда в гугле https://stackoverflow.com/questions/18276355/how-to-keep-a-foreground-app-running-24-7
>>1371442Спасибо, бро. Мне даже главное было не конкретную реализацию, а простоту оценить (или сложность), ну и саму возможность, есть ли она (вдруг гугля ебанулась и не разрешает), благодарю.А с остальными вопросами подскажешь? Вот я нагуглил на сайте ведра: "Wearable apps run directly on a watch, giving you access to hardware such as sensors and the GPU. Wearable apps are similar to other apps that use the Android SDK, but differ in design and functionality.", но это нихуя не дает ответа на вопрос, в чем отличие АПИ.Или вот например нагуглил, что с веар ос нельзя напрямую юзать http-запросы, только через подключенный смарт. Хотя в другом месте пишут, что до тех пор, пока смарт не подключен - можно. Где правда?
Дежурный вопрос. Как выкатится из Андроида? Не в web front end и не в java backend. У кого есть истории успеха?
>>1371614>Попробуй и узнаешь.Привет, /out, расскажи, как оно на Эвересте?>Сходи и узнаешь.Привет, /me, всегда хотел узнать, что чувствую ампутанты, что такое фантомная боль?>Отпили и узнаешь.Привет, /spc, правда ли, что гравитационные силы в затухающей звезде могут преодолеть возникающее в силу принципа запрета Паули отталкивание, и тогда звезда сколлапсирует в точку?>Слетай и узнаешь.
>>1371613ты не пони, посмотреть кончится скидка или нетскидка кончается через десять часов интересно как быстро будет новая
При установке выбило HAXM ошибку, а затем в настройках показало мол haxm instelled, все норм же выходит
>>1371698У этих даунов вообще премиум пакет на пиратский софт, также заебешься скачивать по одному видео.Самое лучшее:https://freecoursesite.com/https://ttorial.com/
Привет прогач, кинули допиливать приложение под ведро, нужно сделать пуш нотификейшины, посмотрел официальную доку, окей, я понял как их билдить, а как отправить какой-то текст с сервака, чтобы этот самый текст отобразился в уведомлении? Нашёл какую-то статью с Firebase, но мы его не используем, поэтому не знаю куда двигаться. Я так понял можно создать какой-то коннект к АПИ на сервере и потом распарсивать прилетающий от сервака JSON или же можно как-то напрямую отправлять что-то?
>>1371703А серверщика на проекте нет? Все пуши будут так или иначе будут работать через файрбейз, нахуй вам какая-то прокладка?
>>1371708дауненок тут только ты. я тебя не просил совать мне пиратопомойку, просто сказал что мне интересно как меняются скидки на юдемии да, она платная https://coursehunters.net/pricing
>>1371575А где ты сейчас работаешь нету возможности перейти в другие отделы? Обычно есть возможность переквалифицироваться и пройти соответствующую стажировку, и если будет свободная вакансия, то могут взять на должность. Еще должны продумать курс как будешь постигать новый профиль.
>>1371735Да обычная аутстаф галера. Вот кстати да, прошлая контора была продуктовая и чувак с моей коменды перешел с андроид разработки на Скалу(!), лол>>1371614Мобильная разработка заебла
>>1372022Нет, читай документацию как это работает.Ваш сервер отправляет запрос серверу гугла (файрбейзу), файрбейз валидирует и отправляет на телефоны, вам отправляет ответ.
Кто нибудь пробовал дополненную реальность на Андроиде,масочки хуясочки,как либа из бесплатных норм opencv,artoolkit и.т.д
>>1372036могу сказать, что чел из моей команды впиливал доп реальность в камеру через юнити .Говно пздц, но ему нравилось. Есть еще ArCode, там намного легче, но поддерживают только последние пиксели и еще несколько телефонов. Если хочешь в это вкатываться, то норм тема, но забудь про андроид, потому что норм разрабом ar и android одновременно не стать.
>>1372081>>1372025Спасибо, буду с PM общаться на тему Firebase и gRPC. Ох блять, любит же моя галера подкинуть говна, еще и дедлайн первого числа, обосраться со смеху блять.
>>1371724Даун, этот тарифный план нужен если ты хочешь взять курс который был добавлен недавно. Идиот.
>>1372081Ты с дубу рухнул? Чем тебе gRPC поможет делать нотификации? Пушей это не сделает, ты хочешь ему предложить сервис постоянно держать что ли?
Мудрые анончики, разбираюсь в типовом проекте SDL2 на AndroId Studio. Возник вопрос, возможно ли обращаться и работать с каталогами вне jni или даже вообще вне папки проекта? Допустим вынести саму папку SDL.
Какую мобилку выбрать чтобы вкатится в андроид разработку? Нексус 5 норм будет? Или чего поновее посоветуете?
>>1371703Если без firebase то нужно чтобы телефон постоянно держал активным соединение с сервером (с помощью сервиса наример), а это ненадежный способ. Некоторые производители (ксаоми со своей муйней скажем) очень агрессивно обрывают соединения у неактивных приложений (для экономии батареи). Даже если у вас будет получаться уговаривать пользователей вручную добавлять приложение в исключения, все равно со временем сервис по пизде пойдет, если пользователь не будет постоянно открывать приложение. Пробивай поключение к firebase, все остальное хуита. Там надо ебстись чтобы нотификации нормально с firebase приходили (на всех моделях). А городить что-то свое это вообще пиздец будет.
>>1361955 (OP)Аноны а кто нибудь пробовал сделать речь в текст ? Я собрал две приложухи, но на моем ведре обе выдают ошибки, в эмуле тоже, но эмуль то это понятно. Вопрос - это может мой ведроид не поддерживает эти функции как узнать ?
>>1372684разве доз мод не ебашит в фоне эти все ваши соединения по умолчанию? эти пуши работать не будут
А как работает этот ваш Firebase то, гайды я почитал, запилить то я всё могу, но есть ли у кого инфа, каким образом он обходит всё те же блокировки говно прошивок на китай-фонах, типа сяоми?
>>1372933То есть гугл окончательно анально окупировали ведро, что приходится использовать их облачный сервис для создания каких-то уведомлений?
Репост, хуле.Насколько разработка под полноценный андроид отличается от разработки под веар ос? Вывод инфы на экран, чтение сенсоров, сеть, фоновые приложения? АПИ одинаковое или учить заново? Можно найти андроид-девелопера и посадить кодить под часы, например?Вот я нагуглил на сайте ведра: "Wearable apps run directly on a watch, giving you access to hardware such as sensors and the GPU. Wearable apps are similar to other apps that use the Android SDK, but differ in design and functionality.", но это нихуя не дает ответа на вопрос, в чем отличие АПИ.Или вот например нагуглил, что с веар ос нельзя напрямую юзать http-запросы, только через подключенный смарт. Хотя в другом месте пишут, что до тех пор, пока смарт не подключен - можно. Где правда?
>>1372959Как же ты заебал, разработка под часы более специфичная, считай расширение разработки под ведро с новыми ограничениями/костылями.
Нормально ли что кол-во занятой памяти приложением при поворотах увеличивается на ~0.7мб? Фиксил сейчас утечки через leakcanary и вроде убрал все. Оно показывает только специально созданную мной утечку.
В проекте с NDK код на плюсах может быть только в папке jni или его можно подгружать из любого места на диске?
>>1373242Попробуй отключить все исключения LeakCanary (там есть списки), не уверен кого канарейка автоматом отслеживает, добавь во все фрагменты, активити и сервисы ручное трекание в onDestroy. А дальше только хип дампы смотреть.
>>1373264Т.е. я могу сделать структуру итогового проекта как на пике, чтобы нативный код лежал отдельно? Это нужно переназначить путь к для ndkBuild и в src перекинуть Application.mk или где-то в Andriod.mk можно указать путь к внешним каталогам?Просто есть проект, который уже настроен и компилится под винду и линь, но заказчику надо, чтобы теперь еще андроид был, но исходные коды надо оставить там в папке src. И это нельзя засовывать в jni.
>>1373265В коде. При инифиализации рефвотчера можно задавать исключения, надо поиграться и не выставлять стандартные.https://github.com/square/leakcanary/wiki/Customizing-LeakCanary#ignoring-specific-referenceshttps://github.com/square/leakcanary/wiki/FAQ#can-a-leak-be-caused-by-the-android-sdk
>>1373269Мне кажется лучше в mk не лезть если не шаришь, но думаю там тоже можно на внешний переназначить, другое дело как вы собрались это между разными машинами и погромистами синхронизировать.
>>1373273Так я и хочу разобраться как так сделать. Программисты работают с основным проектом, код которого лежит в src, внутрь этого каталога я могу закинуть еще файлы android.mk или что-то еще. Но я не могу обернуть весь этот каталог src проектом на андроид, чтобы src оказался внутри jni. Может есть такой способ сделать какой-то $include(call внешний_мэйкфайл) ?
>>1372969Я бля на спринге вообще хуярил всякие говно сервисы и прочие рест апи, а тут хуяк и на ведро кинули, говорят мол, вот раз ты джун на жабе, а у нас вот челик ща заболел, будешь за него работать.
>>1373391Та ну их нахуй эти галеры, единственная причина по которой я остаюсь еще там, так это то, что даже джуну платят неплохо, ну по меркам хохлостана, $750 на меня одного збс.
Что то не пойму как сделать иконку. Image Asset в студии создает какие то ебаные квадраты и лепит к ним бекграунд, который нельзя убрать. Те же гугловские приложения вообще произвольной формы и без фона, почему мне не дает фон убрать?
Джентльмены, осваиваю андроид разработку и вот возник вопрос. С гуглом не справляюсь, а очень нужно реализовать. Каким способом сделать так, чтобы при нажатии на слово из текста на английском языке сверху предлагался его перевод (без взятия перевода с интернета)? В общем нечто похожее на soft prompt (пикрил) или top reader. Хотя бы натолкните, что читать и где искать?
>>1372970>более специфичная, считай расширение разработки под ведро с новыми ограничениями/костылямиМожешь пожалуйста несколько подробнее?
Аноны, поясните за то, что за хуйня произошла. Рассказываю стори. Я андроид девелопер, по знаниям минимум миддл, возможно до синьора дотягиваю. Опыт 4 годика. Люблю частенько ходить на собеседования (иногда проходить их по скайпу онлайн даже с иностранными работодателями), хотя нынешним местом и зп очень доволен. Делаю это скорее чисто из интереса и для расширения кругозора. Так вот, на одном из таких дали мне тестовый проект на 2 дня, ну мне там было все элементарно, сделал за 5 часов. Сказали, что проверят проект и будут по всем используемым технологиям люто спрашивать. Ну я-то про себя кекнул, я знаю и юзаю спокойно ДИ, mvvm, RX, и т.д., хуй чем меня всякие другие синьоры могут напугать и удивить. По факту так все и вышло - мурыжили меня минут 30, никакой заковыристый вопрос меня не взял, я понял, что общаюсь с ебаными ламерами (там было двое ТИПА СИНЬОРОВ), короче, ничего интересного. Но тут в конце один из них заявляет, что у меня в проекте устаревшая версия глайда и почему так? Я по началу не понял, подахуел, помнил, что брал точно последнюю (4.9.0), но допустил, что вдруг могла буквально за прошлый вечер выйти новая. На что мне говорят, что не просто устаревшая библиотека, а еще и устаревший подход. Тут я совсем не понял че происходит, сказал, что как бы подход не меняется в глайде уже хуй пойми сколько - создается наследник GlideModule, с настройками величины кеша, качества и т.д., ну а для загрузки картинки уже по стандарту GlideApp(...).load(...).into(...) и даже если вышла в последние часы версия 4.9.1, то она бы не поменяла нихуя картины. На что мне просто сказали, что подход устаревший и попрощались. Вытянуть из них, в чем именно устаревший я так и не смог. Дома еще раз перепроверил версию - последняя. Короче, аноны, какие версии - что это могло быть?Два недосиньора, которые просто осознали свою ущербность и слились максимально убого, обиженки, решившие зацепиться за соломинку и отомстить или реально какой-то неведомый мега-крутой подход к глайду?п.с. у себя уже на работе рассказывал всем эту историю, с нее все ржали, а на паре ресурсов, где та фирма светилась, ее тупо заминусовали и суть этой истории донесли, имхо, к таким ущербам никто не должен идти и брать у таких заказы.
>>1373449Формфактор часов, слабая батарейка, надо стремится все синкать через мобилку, что бы не бегать в интернет, а это ебаный блютуз. Подробней не скажу, под часы не разрабатывал.
>>1373497Хуесосы зассавшие там были, надо было сразу чекнуть последнюю версию и нассать на них.Я бы спросил почему глайд, а не божественный пикассо (сам знаю, устарел)
>>1373500Ноутом и телефоном нельзя было пользоваться, я б так сразу не проверил. Но нассать на них банальным вопросом, в чем именно устаревший подрод, смог)
Собсна, объясните, нахуя плодить велосипеды и прочие архитектурные изъёбы, если можно пользоваться простым и гениальным MVC? Вот сейчас без толстоты, но я так и не понял нахуя нам MVVM. Я просто не могу понять, какие траблы решает MVVM, которые решить MVC не может?
>>1373497А зачем кстати говоря этот обоссаный GlideModule с GlideApp'ом нужон? Работает же спокойно и без их аннотейшн процессинга
>>1373523Настроить, ну там okhttp расшареный на всю аппу, какие-нибудь свои кастомные шняги допихнуть
>>1373517Всё просто, анон. В MVC у тебя контроллер должен вручную цепляться к кишкам вьюхи и самостоятельно катать состояние от них к модели. Всего лишь убрал кнопку с вьюхи? Не ебёт, переписывай контроллер целиком. Разбил страницу на две? Контроллера у тебя тоже будет два.В MVVM эту обезьянью работу выполняет биндер, чаще всего на основе тегов и атрибутов в шаблоне, а от тебя требуется предоставить ему вью-модель, то есть обертку над моделью, совместимую с биндером, и тогда вьюха сама будет брать то, что ей нужно от вьюмодели в данный момент. Если реализуешь бизнес-логику сразу во вью-модели, у тебя будет вырожденный случай - MVC, в котором не нужно писать контроллер. Збс?
>>1373517>Собсна, объясните, нахуя плодить велосипеды и прочие архитектурные изъёбы, если можно пользоваться простым и гениальным MVC? Когда будет не хеловорд а проект на 60к строк тогда и поговорим.
>>1373326Git-то тут причем. Вызвать внешний мэйкфайл, как я понял, можно что-то типа такого include $(abspath ../../src)/Android.mkТолько так он модуль этот не видит, на что и ругается " Module main depends on undefined modules: my_module"Как я понял мне нужно что-то такогоhttps://stackoverflow.com/questions/6942730/android-ndk-how-to-include-android-mk-into-another-android-mk-hierarchical-proтолько обратиться нужно вне каталога jni
>>1373666Да, ну в общем я решил это через добавление картинки с 0 альфой в качестве фона. Еще прочитал что гулаг хочет стандартизировать внешний вид иконок, поэтому с какой то там версии все будет квадратным и стильным.
>>1373669Тем, что я не могу на своем заводе использовать git. А проблема решалась через внешние пути, но уже сам разобрался.
>>1373498>надо стремится все синкать через мобилку, что бы не бегать в интернетТолько и-за батарейки?>>1372959Бамп
>>1372959Нахуй иди. Давно бы мог уже попробовать и сам понять, нет, сидит бампает свои тупые абстрактные вопросы.
При сборке ругается, что undefined reference to 'localeconv'Это ему в Application.mk какой-то флаг прописать нужно еще?
>>1373523Лол. Как я понял, глайдом ты не пользовался. Если ты хочешь задать CacheStategy, величину кеша, качество фото, то ті єто все делаешь именно в глайдмодуле.
>>1373547Звучит конечно хорошо, но это не имеет ничего общего с МВВМ. Тебе стоит разобраться в вопросе, а затем уверенно тут о чем-то писать. Ты описал датабиндинг, а не мввм. И хоть эти вещи часто юзаются вместе, но это далеко не всегда и не обязательно. А главная суть мввм - это полная независимость viewmodel от view. Именно view подписывается на события viewmodel и действует от них. Этого нет в мвс и мвп. В первом по сути у тебя вся залупа и макароны кода пихаются в активити и создается беспорядок, во втором уже получше, но презентер зависим от вью и общение между ними двумя возможно в обе стороны, что не есть гуд. Кстати, в этой же причине мввм для андроида идеальный вариант при поворотах экрана - вью пересоздается, а все нужные вещи спокойно себе живут во вьюмодел.
>>1373991Задается и без модуля CacheStrategy, и чистится без него. Он просто видимо позволяет в одном месте все это засетать. Но это все в большинстве случаев нахер не всралось, если не делаешь прилагу, где все крутится вокруг картинок. Еще и annotationProcessor тянуть
>>1374003Хз, как по мне, то лучше один раз написать DiskCacheStrategy(ALL) И не ебать мозги, чем при каждой загрузке картинок это же дописывать
>>1374236Можно, есть ndk для этих целей. Просто делать кнопки и другие штуки простые смысла нет, сам гугл позиционирует это так:The Android NDK is a toolset that lets you implement parts of your app in native code, using languages such as C and C++. For certain types of apps, this can help you reuse code libraries written in those languages.
Сап.Только начал заниматься ведром. Охуел с времени билда+установки приложения в студии(10 минут вникуда). А так как ошЫбки из-за непонимания инструментов которые я использую у меня возникают довольно часто, то весь день у меня проходит за ожиданием компиляции. Пытался перекатиться в эклипс, но как я понял из-за устаревшего ADT плагина наткнулся на всякую хуиту типа отсутствия appcompat библиотеки в формате jarесть только arr, отказ среды создавать R-файл при компиляции и другое.Пикрелейтед хочу создать для тестировки разного-всякого в отдельных активностях. Сейчас ебусь над навигационной панелью по соседних активностях в одной категории. Только что полчаса тупил пытаясь не статическим методом фрагмента моей панели навигации вызвать транзакцию самого этого фрагмента в главную активность, но лососнул тунца так как не имел доступа к этому методу без экземпляра класса. А если сделать метод статическим, то не буду иметь доступ к getActivity().getSupportFragmentManager() соответственно не смогу начать транзакцию. Только у меня ебанутые идеи бывают, чтобы фрагмент вызывал сам себя своим методом? Просто добавлять отдельный метод вызова этой транзакции в каждую активность которая использует фрагмент панели это слишком затруднительно. ЧЯДНТ?
>>1374473Да, еще как. В целом тяжело найти таких специалистов, обычно перетягивают простого сишника, например с десктопа, который начинает разбираться и в андроид разработке. У нас на проекте примерно так и есть, сишник работает над нативным кодом и стыкует его с джавой. Андроидщики уже работают дальше сами, но если задач особо нету, тогда уже и сишник копается в джаве. И да, платят ему думаю косарей 170.
>>1374380Забудь про эклипс, используй для разработки андроид студию. Для избежания возможных проблем ставь не самую свежую версию, нормальная студия 321.Если ты сам понимаешь, что делаешь хуйню для такой тривиальной хуйни, тогда почему-бы тебе не остановиться ковырять палкой в дерьме и не обратиться к литературе или примерам кода други проектов? Ты только начал и смотреть чужой код полезно, как для развития, так и для скорости разработки. Не говорю, чтобы ты делал копировать и вставить, но хотя бы осмысленно перепечатывай руками. Если у тебя будет получаться хоть что-то, то не потеряешь мотивацию и будешь дальше делать говноподелки. И советую на начальном этапе прочитать книгу "Чистый код". Просто пробежись глазами по главам, уясни основную суть, потрать на это хотябы недельку по 30 минут. Тогда начнешь замечать свои корявые попытки что-то сделать не так.То что ты просишь помочь звучит не очень ясно, и разбираться в этом нету никакого смысла. Лучшим способом будет переписать все заного, после прочтнеия какой-нибудь статьи по этой теме. Половину вопросов как рукой снимет. Реально, вопросы такие, что ты вообще ничего не читал, не смотрел, не пробежался быстрым взглядом по шапке треда. Хотя бы основы посмотри.
Ни у кого нет готового Andriod.mk для создания модуля luajit? Чтобы типа скачал https://github.com/LuaJIT/LuaJIT и кинул в этот же каталог.
>>1374551>А у нас ява вообще не используется, только как прослойка с SDL2. Все остальное - плюсыКак то слабо. У нас даже плюсы не используются. Пишем ассемблерскими инструкциями. Иногда скучаю по жабе, но асм куда быстрее и мощнее офк.
Антонидасы, надо ватермарку приебенить к видео, подскажите плз, можно ли, не прибегая к ffmpeg и т.п.?
Эмулятор внезапно (ну как внезапно, скорее постепенно) начал жутко тормозить. Раньше летал вполне норм. В чем может быть проблема?
Сап, нужно скрывать buttonNavogationView, если пользователь не авторизован, а если есть токен, то показывать, во общем для теста попробовал такактивити https://pastebin.com/NXyMRvMDфрагмент https://pastebin.com/NimK0hMFНо скрывает он так себе, мне надо чтобы контейнер был на всю высоту, так как за навигешэном должен быть контент, если пользователь не авторизован. Да и чувствую реализация не очень, хотелось бы только в одном активити сделать проверку и скрыть его, а не для каждого пилить интерфейс
>>1375518так а что тебе мешает вытащить твоё вью в другую активити/фрагмент, которая открывается после авторизации?
>>1375539Для чего мне плодить еще активити? Когда контент не меняется практически или я что-то не понял?
Сап, анончики. Ответьте, пожалуйста, насколько сложно реализовать приложение такого рода и стоит ли оно того (если я вообще не шарю).Играю в игорю на телефоне и пришла идея немного автоматизировать этот процесс (сделать прилажку-бота). Нужно, чтоб бот искал золотые камни (как на пике три камня в глазах у тотема). В общем, по какому алгоритму это дело будет работать:1) Прога делает скриншот экрана2) Ищет на этом скриншоте совпадения (в проге лежат картинки камней)3) Если совпадений нет - удаляет скриншот и тыкает на кнопку "продолжить"4) Если есть - посылает мне уведомление на телефон и останавливает поиск.Так вот, стоит ли оно того?
>>1375642> Хочу писать игры!LibGDX - слишком медленная параша для больших проектов, но познакомится можешь. Unity - для адекватных, Corona SDK, LOVE, Defold и другие. Спрашивать в /gd/.
>>1375642тогда:1) Прога делает скриншот экранаок2) Ищет на этом скриншоте совпадения (в проге лежат картинки камней)ML for android3) Если совпадений нет - удаляет скриншот и тыкает на кнопку "продолжить"ок4) Если есть - посылает мне уведомление на телефон и останавливает поиск.networking for androidток хуй знает зачем тебе 4 пункт, если ты конечно будешь с другой мобилы сидеть. тогда спрашивается нахуя так тоже делать.
>>1375672Я про четвертый пункт не совсем правильно выразился, видимо. Имел ввиду звуковое уведомление на телефон. Например он лежит на столе, а я в другой комнате сижу и он мне сигнал подает мол "камень найден"
>>1375546Плодить еще одно активити не обязательно. Используй фрагменты и одно родительское активити для всех. Если ты будешь давать классу отвечать за множество функций, тогда его будет сложнее поддерживать и расширять в дальнейшем. Принцип такой: один фрагмент - один экран. Допустим будет одно активити, как контейнер для всех фрагментов. Затем еще один контейнер, но уже фрагмент. В него добавишь навигационную панель и логику отображения фрагментов, которые будут являться дочерними фрагментами. Делается все достаточно просто, можно использовать NavigationComponents от Google. Что получишь в итоге: пизды простую логику экранов, которые можно с легкостью модернизировать и поддерживать. Увеличится количество классов, но это не проблема. Когда работаешь постоянно над проектом знаешь где у тебя что есть и зачем это. Понять за что отвечают какие классы гораздо проще, чем ковыряться в цепочках интерфейсов, и ужас, добавлять новые методы. Вот недавно наткнулся на работе на отборный кусочек дермеца. Фрагмент, который реализует несколько десятков интерфейсов (половина методов помечена как do nothing) и еще куча всего. Теперь этот класс состоит из 3к строк. В нем сложно ориентироваться, расширять и поддерживать соответственно. Так же его сложно разделить на отдельные элементы, в процессе могут возникнуть баги, нужно отдавать на повторное тестирование, заново мониторить крэшлитику и тд.
>Принцип такой: один фрагмент - один экран. Допустим будет одно активити, как контейнер для всех фрагментов. Затем еще один контейнер, но уже фрагмент. В него добавишь навигационную панель и логику отображения фрагментов, которые будут являться дочерними фрагментами.Сделал так, но получается, что главный фрагмент содержит только контейнер для фрагментов. Есть ли возможность в него возвращать один из фрагментов навигации
>>1376467Лицензия на вождение болида, или почему я хочу предложить вам жрать говно.В обычных до 40к строчек похуй, если уж большие апп - то можно и делать сингл.>Да, кода там прилично, но анимации — это всегда достаточно сложно,Пусть идет нахуй с такими примерами.Самое банальное - по фотке тыкнуть, чтобы она увеличилась и юзнуть всякие драги - как в телеге или в телеге Х с углами. Хуй это он сделает с фрагментами, тут уже активити нужно применять. Или же тупые камеры, та же самая история.Вывод: я бы советовал такие примеры применять с мидлами, которые помогут возможно вытащить с говна, в которое ты попадешь. Самому лучше не делать.
>>1376581жесть, твой высер вообще не разобрать, походил бы в школу для начала, чтобы научиться мысли свои на бумаге грамотно излагатьа по сути, в чем принципиальная разница между активити и фрагментами? почему ты что-то можешь сделать только в активити, но не можешь во фрагменте? можешь более конкретные примеры привести?
>>1376637>а по сути, в чем принципиальная разница между активити и фрагментами? Ты критикуешь меня, и задаешь такие глупые вопросы? Кекнул с тебя.
>>1376709просто все примеры что ты привел спокойно делаются в фрагменте, поэтому я и спрашиваю, чем тебе фрагменты хуже активити? почему в них нельзя сделать то, что ты привел в пример?
>>1376755>просто все примеры что ты привел спокойно делаются в фрагментеКонтролировать alpha при драге, как я упоминал в примере - у тебя не получится. По крайней мере, мидл моей говноконторы тоже не справился.>поэтому я и спрашиваю, чем тебе фрагменты хуже активити? Всем. И ведройд тоже говно.
Даже сейчас гугл проводит максимально уебищные презентации. Лучше бы с таким же успехом упрощал жизнь работы с UI, а не еблей как много я могу лив дат ебнуть в презентере или в очередной раз пиздеть по ЖЦ фрагмента и вью модели.
>>1376764>какой-то хуй не смог что-то сделать>во всем виноваты фрагментыинтересная аргументация, эх, а я уж было надеялся на конструктивный диалог, но зря, на секунду забыл где я нахожусь
>>1376769>эх, а я уж было надеялся на конструктивный диалог, но зря, на секунду забыл где я нахожусьДелать мне нечего, конструктивно сраться. Я тебе написал вышеперечисленный один кейс. Увы, только пиздеть и можешь.
>>1376878Всмысле только пиздеть и могу, я тебе миллион КОНКРЕТНЫХ вопросов задал, но ты ни на один не ответил конкретно, спрашиваю почему нельзя сделать твои кейсы во фрагменте, ты на это отвечаешь: вопросы глупые, какой-то челик не смог, ведроед говноИ кто из нас пиздит то? Тот кто просто задает вопросы и пытается разобраться или тот кто ни на один вопрос не может ответить конкретно, а вместо этого не по делу пишет что-то
Нужно реализовать приложение, действующее следующим образом: при запуске приложения дается выбор {клиент} или {специалист}, далее идет авторизация. Затем нужно осуществить передачу сообщения от одного пользователя к другому.Есть ли какие-то сервисы, которые помогут это осуществить или же придется пилить свой сервер.В общем, любой информации я рад
>>1377224>Есть ли какие-то сервисы, которые помогут это осуществить или же придется пилить свой сервер.Если это тестовое - файрбейз. Нет - конечно же сервак блять нужен.
Крч, есть много приложений всяких шаоми, елайтов и прочих производителей умных хуюмных Железяк для богатых. Все они поддерживают сторонее управление, но только после инициализации и подключения режима разработчика. Очень амбициозный начальник хочет сделать коробку, которая всем может управлять. Предварительно на ней крутится Линукс и под него сервак с кучей скриптов для отправления команд по различным интерфейсам. Но трабл с активацией все ещё остаётся. Появилась идея поднять на виртуалке/эмуляторе вендроид и под него написать какие-то макросы, чтоб прожимать в приложении все что нужно, либо оформить это в качестве тестов или ещё чего-то такого. Есть какая-нибудь подобная шняга, Антон? алсо, быдло-сикодер на связи
>>1375642Упрощаю тебе жизнь в миллиард раз. Тебе не нужно знание джавы вообще.1) Качаешь bluestacks - эмулятор андроида под винду.2) Качаешь на винду прогу для создания макросов (нашёл вот эту: https://hackerbot.net/software/12-macro-recorder-editor-game-bot-creator-download но искал другую)Можешь искать сам, по ключевым словам "macros color loop bot". Тебе важно, чтобы был color recognition.3) Смотришь пару туториалов на ютубе по твоей программе, пишешь макрос за пару дней
>>1378758либо гугли "game bot maker"> https://hackerbot.net/tutorials/411-game-bot-creation Они не требуют знания языков программирования, но дают такой же функционал
keytool -list -printcert -jarfile .apkПочему об этом деваноне мне никто не сказал?Ебаный гулаг, нигде не скрыться просторному хекке-анонимусу
>>1379434Я почекал несколько рандомных апк, в половине случаев там реальные реквизиты. Вообще когда делал, в доках было сказано что эта инфа используется только чтобы сделать что то вроде md5 хеша. Никто же не знал что любой рандом сможет взять ее и прочитать. Вот нахуй ее вообще показывать, в этом нет никакого смысла. Достаточно что хеш файла связан с базой плей маркета, но гулагу видимо похуй. Интересно эта хуйня попадает под нарушение GDPR?
Мужики, подскажите, без наличия активности (желательно из статического контекста) можно оформить подписку через BroadcastReceiver на спаривание устройства? Нужно пропихнуть свой пинкод что бы юзер не вводил ничего руками, из того что советюут в инете надо ловить через этот BroadcastReceiver, но во всех примерах на него подписываются через активность. Пишу на xamarin, но я так понял от явы его апи не отличается.
Бля лол растерялся и не ответил на нубские вопросы про Intent (что вызывает Activity?) и компоненты Андроида (контекст, бродкаст и т.п). Т.к машинально всё это знаешь и похуй как бы. На более-менее сложные ответил.мы вам перезвоним/10
Как оказалось, в Сяоми не такой же парсер HTML (который Html.fromHtml) как на Samsung. Слева элемент <ul> и его дети <li> на Самсунге, а справа — на Сяоми. Скорее всего это чинится использованием сторонних библиотек для парсинга HTML. Подскажите названия тех библиотек, которые лучше использовать для, собственно, парсинга. Мне нужно спарсить HTML в spanned и отобразить его на экране.Вот текст: https://pastebin.com/f78JXRc4Я сразу говорю, дело не в crlf.
>>1379849Понятия не имею о чем ты написал, но фрилансером можно зарабатывать 300к/нс не зная этой бесполезной хуйни.
В общем я, наверное, даун. Нихуя не понимаю, как это работает. Сделал по примеру вот такой автосомплектэтекствью со своими данными. адаптер https://pastebin.com/erWJDn3Kгде вызываю https://pastebin.com/wP1rVh8DЗачем здесь в гетвью использовать кастомный лаяут? Как сделать без него, если мне нужно только в текствью выводит? Нахую этот ебучий фильтр? Для ресуклера к примеру мы реализуем простой вьюхолдер. + Когда я выбрал один из айтемов из списка, удаляю его ввожу новый нихуя не работает, как фиксить?
>>1380205@Override protected void publishResults(CharSequence constraint, FilterResults results) { clear(); addAll((List) results.values); notifyDataSetChanged(); }Какой-то индус придумал делать клир + адд алл, ты вообще знаешь что лист у тебя будет с объектами передаваться по ссылке при адд алл?
>>1380205@Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_filter, container); autoCompleteTextView = view.findViewById(R.id.actv_countries); adapter = new AutoCompleteCountryAdapter(getContext() ,countriesData); autoCompleteTextView.setAdapter(adapter); return view; }В он криейт вью ты инфлейтишь лишь вью и возвращаешь ее. Дальше все установки которые ты здесь впендярил делаются в onViewCreated, гугли это.@Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); service = RetrofitBuilder.createService(ApiService.class); getCountries(); }Выучи уже что такое презентер
>>1380217Он вроде немец https://codinginflow.com/tutorials/android/custom-autocompletetextview/part-2-adapter
>>1380251Вы про мокси, да? Я просто когда слышу слова:> Охуенная либа Мне ничего другого на ум не приходит, только вот мокси.
>>1361955 (OP)Сап бандиты. Я тут расковырял андроид приложуху, чтобы стучаться по ее API руками. Но мне так же нужен токен. Первое что приходит в голову - достать из SharedPreferences на своем телефоне. Судя по коду, он туда сохраняется. На сколько это реальная операция?
>>1362409>расковырять приложение (или поснифать запросы) Можно подробнее про снифинг? Я сегодня пытался: поднял прокси и настроил на телефоне. Поймал пакеты, но нихуя кроме хоста и порта не получил. Полный url не был виден. Я так полагаю это из-за секьюрности или я просто долбоеб слепой?
>>1379981Я читал книжку деда Седжвика и смотрел его курс на Курсере, который её изобрел, а также в 2007 он сделал более легкую её версию.
>>1380554Как ты узнал ее апи не узнав токен? Открой блять запрос который оно отправлаят и вытащи токен из хедера или query.
Сап, анонЧитаю про сервисы и не могу понять в каких случаях делать startService, а в каких bindService. Подскажи, пожалуйста, или поделись годными статейками
>>1381606bind - если он должен быть связанным с каким-то конекшном.start - если зарустить сервис и забыть, в таком случае скорее всего сервис сам должен будет себя потушить например.
Сап.Подкиньте годных ссылок по использованию гугловсиких АПИ. Конкретно интересует авторизация и использование инструментов гугл-диска для управления файлами. Гугловский туториал по гугл диску предлагает мне самостоятельно просмотреть готовый семпл-проект:>To ease client migration efforts, a sample app has been provided which demonstrates how to create, modify, and query for a user's Drive files via the REST API. https://github.com/gsuitedevs/android-samples/tree/master/drive/deprecationХотя там есть почти степ-бай-степ объяснения по использованию этого всего, но она это самое гхм.. depricated. А миграционный гуид как таковой отсутствует только ссылка на проект-пример.Трату время на ковыряние в коде я ебал хотел бы избежатьпо возможности. Конкретно неясно просто с 0exp пойнтами в разработке, что мне надо перетащить с этого кода в свой проект помимо некоторого кода из активностей, что позволит мне вертеть файлами на гугл облаке. Ну конфигурацию градл-файлов и всякие там интернет-пермишыни в манифесте сталкивался, когда подключал гугловскую кнопку входа в аккаунт. А что еще кроме этого? Низкое понимание того, как градл собирает это все до купы не дает мне полного представления, что именно надо позаимствовать с другого проекта. По возможности скиньте статьи для прояснения этого всего.быдлокнопкодав-хочу-научиться-программировать-за-5-минут-кун
Ладно. Начитался гугловских статей про билд проекта. Оказалось все проще чем я думал. Время билда пиздец. С этим жить не возможно. О дебаге не может быть и речи. Пойду в столовую жрать потом проверю, что оно есть.
>>1381756Никогда не дебажу.Проставляю логи и смотрю что в консоли выдает, все. Ждать 10 секунд пока запустится, потом логов в консоле нет, только лишь ждет пока красная залупа вылезет. Трата времени.
>>1381765У меня дебаггер норм работает, запускается только на пару секунд дольше, а потом все быстро работает, можно делать намного больше вещей, чем проставляя логи
>>1381784Ебать, это поколение малолетних долбоёбов начала нулевых уже вылупилось и пролезло в программеры? Ещё Луговский писал, что нормальный программист должен херачить код с логами так, что дебагер не нужен.
>>1381790ну давай, захуячь логи в сторноннюю либу, посмотрю на тебя, или нормальный программист ещё и библиотеками чужими не пользуется?
>>1381790>Ещё Луговский писалhttp://webcache.googleusercontent.com/search?q=cache:csHODzKAYsYJ:lurkmore.to/%25D0%259B%25D1%2583%25D0%25B3%25D0%25BE%25D0%25B2%25D1%2581%25D0%25BA%25D0%25B8%25D0%25B9+&cd=1&hl=ru&ct=clnk&gl=ru&client=ubuntu
тут вроде проскакивали аноны пишущие на flutter. Подскажите, как там дела с подключением нативных либ, крашлитики, всяких fb vk sdk и проч.?
Кто-нибудь работал с Firebase ML Kit? Интересен реальный опыт людей, кто работал с этим API. Конкретно интересен Kit для распознавания текста с изображения. Есть возможность использовать в облаке и без. Понятное дело в облаке платно и как пишет сам Google, это гораздо более предпочтительный способ использования этого продукта. Ну а что если работать без облака на устройстве, как самому прикручивать новые фичи и делать машин лернинг? Пока только прочитал основную документацию, собираюсь делать интеграцию в тестовую приложуху. И вообще может есть более лучшие альтернативы?
>>1381932Вообще не знаю ни одного настоящего приложения, которое бы использовало это, только хеллоу ворлды.Все сами такие вещи пишут, затовенные и оптимизированные под себя.
>>1379948А ты меня не троллишь? Как я вижу, Moxy это фреймворк для построения скелета.google: android moxy "html"не даёт ничего
>>1382078google по запросу "android parse html" давал такой же ответ. Видимо, в этот раз не троллинг. Спасибо
>>1381489>Открой блять запросТы про https не слышал? Я тебе больше скажу, если перехватить секьюрный пакет, тебе не то что токена, но даже url не будет видно. Все что ты поймаешь это хост и порт. Соответственно чтобы расковырять API, не достаточно просто поймать пакеты - по ним ты нихуя не поймешь.
Привет котаны, значит в очередной раз(второй) вкатываюсь в ойти, на этот раз андроед!Один пацан сказал, что сейчас все пишут на котлине, а джава не нужна. Мне сразу котлин зубрить теперь или че? Лично я думаю, что он опездол и джава все таки нужна. Проконсультируйте по этому вопросу.
Как сделать транзишн с одного активити на другое при нажатии на кнопку по типу пикрил? Чтоб короче она разъехалась плавно в лэйаут нового активити. Я пока только смог сделать таким образом, что лэйаут кнопки и рутовый лэйаут активити являются shared element, так как у одинаковый transitionName и при этом для появляющегося активити сделал прозрачное окно в теме в стилях, так как иначе это не выглядело как надо из-за непрозрачного дефолтного decorview или что там я хз у активити на верху иерархии. Но мне кажется, что это говно какое-то, тем более мне оно не дает вместе с этим сделать параллельный транзишн текста кнопки в тайтл экшнбара, так как транзишн пэрента по видимому как-то мешает и в полете получается дерганный текст
>>1382482Нахуй мне твоя шапка, она копипастится уже который год.Нужен ответ от знающих анонов, а ты иди нахуй с такими ответами уровня погугли, чертила ебаная.
>>1382496Собирался нормально ответить, но прочитав этот агрессивный высер передумал, надеюсь тебе никто тут не поможет, пока не научишься нормально общаться
>>1382501Собирайся нахуй вместе с тем долбоебом, который на вопрос отвечает "погугли". Если не понимаешь почему это не нормально, то тебя ничто уже не спасет.
>>1382489>Как сделать транзишн с одного активити на другое1. Делать все через xml through ConstraintLayout with ConstraintSet etc.2. Использовать твой способ с транзишенами. Хз зачем ты затемнял другое активити, но в туторах индусовских это все есть.
>>1382468>Сертификат подменить типо никак нельзя или они пиннинг юзают?Можно подробнее? Сейчас столкнулся с такой же проблемой.
>>1383506Думаю не стоит, т.к. мокси уже не обновляли почти год. Миграцию на андроидХ не сделали и не будут делать официально, только из отдельной ветки выкачивать приходится. Гугл не дал добро.
реально если у андроида нет перспектив что его заменит? не иось же, фусция даже еще не аннонсирована нормально. имо у андроида лет 10+ есть
>>1383816>у андроида лет 10+ есть всякие Flash разрабочики тоже так думали, зато весело смотреть как корпорация свои внутренние приблуды переписывает с флекса на всякие ангуляры
>>1383824ну ты сравнил технологию для интерактивного веба и самую популярную в мире мобильную осьсколько там винда умирает?
При повороте экрана можно запретить перерисовку лейаута фрагмента? Реализую функционал для показа плеера в полноэкранном режиме, как в мобильном приложении ютуба.Сейчас использую screenOrientation в onresume и onpause. Но если так делать перестает работать onConfigurationChanged, а там чекаю состояние экрана и открываю фуллскрин фрагмент.
>>1382211Будущее за Kotlin Multiplatform, к которому можно любой UI прикручивать, хоть флуттер, хоть хуюттер.
>>1385718>При повороте экрана можно запретить перерисовку лейаута фрагмента?Нет, читай доки.>>1385904>Будущее за Kotlin Multiplatform, к которому можно любой UI прикручивать, хоть флуттер, хоть хуюттер.Такого никогда не будет.
>>1386063>Такого никогда не будет.Ни то, что не будет, оно уже есть и можно использовать.>>1386071>зачем флаттеру котлин?Затем, чтобы писать бизнес логику для всего приложения и всех клиентов android, ios, web, desktop... а не только для двух платформ. Ui должен быть нативным, а бизнес логика общая.
>>1386087Конечно существует. Приходят на конференцию и показывают - ой бля, а мы можем список делать. Иди нахуй, троль
>>1386096Какой список, долбоеб? Мультиплатформа к UI никакого отношения не имеет. Тебе только из коробки дают мультиплатформенную асинхронщину, кучу готовых нативных и кроссплатформенных библиотек, а ты ебанат тут про списки пишешь?
>>1386319> Какой список, долбоеб? Мультиплатформа к UI никакого отношения не имеет. Нахуй ты тогда про Flutter спизданул че-то, дегенерат? > Тебе только из коробки дают мультиплатформенную асинхронщину,Пиздишь, корутин нету в koltin native, только на jvm и js. > кучу готовых нативных и кроссплатформенных библиотекОга, кучу. Там полторы библиотеки на весь Kotlin multiplatform и те в статусе POC, многие базовые вещи работают только на jvm. На iOS котлиновский код вызывается через Objective C interop, вся система типов по пизде идёт, пока даже дженерики не завезли в основную ветку. Приходите года через три, тогда может и будет что-то прмгодное для использования.
теоретики бля, 2 раза уже спрашивал, кто на flutter приложение писал (которое в сторе живет, а не hello world) и никто не ответил
>>1386319Даун, я говорил про их уровень развития блять. Даже флутчер тащут в прод, а это говно никому не нужно.Можешь не отвечать.
>>1386723Двачую, почему-то тоже не очень нравится работать на маке с мышкой и отдельной клавиатурой. Когда все вместе, мак аир или прошка, совсем другие ощущения. А с мак мини говно.
>>1386063Какие тогда варианты сделать как в youtube-mobile? У них экран с просмотром видео, когда в лендскейпе, нажимаешь кнопку назад, все равно остается в портрете (не фулл скрин просмотр)
>>1386472какие проблемы в разработке по сравнению с нативом? можно ли обратиться к нативному апи? можно ли подключать нативные java либы (как дела с гугл сервис либами и проч фаербейзами)?какой размер apk по сравнению с нативным?
>>1386320>Пиздишь, корутин нету в koltin native, только на jvm и js. Ну и как там живется в 2016? Хоть бы гитхаб открыл для приличия.
Пиздец где вообще находить фуллтайм работу джуну? вакансий блять полторы страницы и то все сеньёры в основном. куда я залез, дебил сука ебаный
>>1387012Джуны никому не нужны, это не только в андроид так. Дрессировать их и воспитывать дорого, только компании типа Яндекса и могут себе позволить. Но туда ещё две тысячи желтоклювых в очереди стоятосвой мокси хотя бы, может и выделишься среди других соискателей
>>1387012Ишь захотел сразу джуном пойти. Деды со стажеров начинали и мы так же. Я еще понимаю, если у тебя был опыт с полгода-год в бэкенде каком-нибудь, тогда да
>>1386870Корутины как бы есть, а нормальной асинхронности нету https://github.com/Kotlin/kotlinx.coroutines/issues/462
>>1387065ну окей, согласен на стажера) если зп хотяб будет покрывать аренду хаты. так и они сейчас нахуй никому не вперлись
Как сейчас дела обстоят с поддержкой векторной графики в андроиде?Помню, что в какой-то версии support library её добавили, потом нашли какой-то баг в ней и в следующей версии удалили поддержку, потом снова добавили, но оно лагало...Сейчас нормально этим можно пользоваться? В каком формате у дизайнера запрашивать иконки и графику? Обычный Svg?Или лучше как деды завещали - png для каждого xdpi делать?
>>1387083Если город более-менее крупный, то можно просто писать/звонить в конторы по кд и так куда-нибудь да возьмут. Сам так вкатился
>>1387090Проблемы были если мин сдк меньше 21, но и на 19 апи можно заставить работать. Все что выше можно без проблем работает.
>>1387381Котлин. Смысла для андроида джаву учить нету. Если потом выкатываться из андроида, то актуальная джава далеко уже ушла и там используется другие jvm. А на андроиде до сих пор недо-8 версия, да еще и с "особенной" виртуальной машиной. Под андроид сейчас писать только на котлине надо. Если потом выкатываться, то можно продолжать на котлине катать и все ок будет.
Так, посоны, спрошу у вас. Нужен простой персистентный журнал, где каждый элемент журнала - массив байт произвольной длины. Запись - только добавление в конец файла, чтение - произвольный доступ по индексу. Можно конечно замутить самому на mmap файле, но чет лень изобретать велосипед, учитывая что стопудово реализация существует и даже не одна. Может есть у кого или подскажите ключевые слова для поиска на гитхабе. Желательно котлин или жаба.
>>1387540Спасибо, бро, да типа кафки, но нужно очень простое решение, без многопоточности, производительности, распределенности, брокеров, партиций, групп консьюмеров, стриминга, KSQL. Просто типо класс с двумя методами, добавить и вычитать значение по индексу, и все.
>>1387568>>1387584суть в том, что никто дальше этой фразы не заходит, а нужно копнуть поглубже так сказать, хотя бы прочитать несколько статей на английском, тогда придет осознание, зачем все успешные компании ее используют
Здравствуйте, у меня нет опыта с андроид студией. Мне нужно сделать приложение, которое содержит в себе файл и по клику выгружает его в память телефона. Где я могу почитать инфу на эту тему и как файл хранится в приложении? Его хранят, допустим, в папке assets и затем обращаются к нему, когда нужно выгружать?
>>1387777Хранится либо во внутренней папке приложения, либо во внешней.https://developer.android.com/training/data-storage/filesЕще можно хранить k:v в хмл:https://developer.android.com/training/data-storage/shared-preferences
>>1387779Спасибо, я прочитал статью, но не нашел как загрузить файл, который я укажу, хранящийся в апк, в директорию, которую я укажу.У меня в папке asset есть текстовый файл, который я хочу сунуть в папку TestFolder, нагуглил что-то на стаке и хотел поменять под себя, но что-то идет не так. Папка появляется, файлик - нет, где у меня ошибка?https://pastebin.com/Hazxz7hM
>>1387829гуглишь как сохранить файл в папкегуглить как достучаться и прочитать файл из assetsгуглишь как создать кнопку и листенер.объединяешь все это говно
Кто использует многомодульный подход у себя в проекте? В чем профиты? Почему бы не раскидать все по папкам в основном модуле app?Не беру во внимание такой функционал как Instant App.
>>1387897Если проект очень большой сборка будет быстрей (а с bazel/buck еще быстрей). Можно делать билды где только некоторые модули участвуют, что бы билдить только интересующие тебя фичи.
>>1387930> сборка будет быстрейТолько когда модулей меньше сотни. Дальше вступает в дело градл и начинает работать как кусок говна выжирая всю оперативу.
Ладно, такой вопрос, надо айпи адрес и порт представить в виде QR кода и вывести на экран, на другом телефоне надо сфотать этот QR код, и получить адрес и порт. Наверняка есть готовые либы примеры и прочее? Только чур Moxy не предлагать.
>>13881191. Гуглишь как найти айпи адрес и порт в телефоне.2. гуглишь как генерят КР код.3. либа для фотканья zhing code scan как то так гуглишь.Все.
Такой вопрос, если у юзера при продлении подписки возникли проблемы при оплате (нету денег, карта заблочена) и я включаю в гугл плей консоли льготную подписку на 3 или 7 дней, нужно ли что-то допиливать в самой аппе или итак сойдет?
>>1388492Ты что, проверяешь подписку в приложении, а не на сервере?!>>1388438> zhing code scanГуглолибу из фаирбейз пакета вроде проще щас юзать.
>>1388438>zhing code scanБлагодарю, вроде это то, что нужно>>1388807Что за гуглолиба из файрбейз пакета?
>>1388807> Гуглолибу из фаирбейз пакета вроде проще щас юзать.Только она без интернета не работает, а ещё все твои данные на сервера гугла отдаёт.
>>1388807Видимо да, у нас в проекте все работает без этого. Так что в итоге получается, если используем подписки в приложении, нам нужен сервер, который будет работать с Google Play API с которого прилетают ивенты с состоянием подписок у пользователей? В самом приложении добавляем код, который будет в случае просера подписки, показывать месседж, при клике на который будет переход по глубокой ссылке в гугл плей с экраном оплаты подписок? Или пуш уведомление?
>>1388921Да можешь на клиенте оставить как есть, просто я лакипатчером подписку подменю и твое приложение будет думать, что все ок.>>1388890https://firebase.google.com/docs/ml-kitБаркод сканинг только он-девайс.
>>1388999> я лакипатчером подписку подменю и твое приложение будет думать, что все окНе пали гондоту.
Как работодатели (не клиенты) относятся к спизженным решениям к приложении (часть опенсурс логики спизженно, например)?
>>1389177Ну т.е если тебе в Трелло стоит задача запилить какую-то фичу, а ты ее гуглишь и пиздишь с гитхаба/медиум/стаковерфлоу, то это считается ок?
>>1389188Конечно, потому что обычно то что можно спиздить таким образом попсовая хрень, которую заказчик показал и сказал хочу прямо вот так.
>>1381932Та гугл ебанутые, есть Firebase ML Kit, а есть еще и Mobile Vision, примеры с которым они нахуярили бесплатно на гитхаб. И юзать это можно как на ведре так и на гей оси.
>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360 (OP)>>1390360>>1390360>>1390360
привет /pr ! Я учусь на ИВТ и вышла на дипломную работу, и мне всучили тему, в которую я не в зуб ногой - разработка андроид приложения. по сути как мне обьяснили, приложение должно ограничивать рассылку любых пакетов по вайфай до тех пор, пока телефон не окажется в нужной геолокации, а в радиодиапазоне не будут доступны заранее добавленные сети (или же запрашивать такие сети в нужных координатах, если скрыто имя сети), при этом данные для сравнения берутся с GPS/WIFI, сравнение желательно должно быть с записями из бд SQLITE. Мне приедложили написать все это на Python, как я понимаю для этого нужно пользоваться kivy или kivy plyer. я пыталась искать информацию по тематике, и все что мно было выкачено - предложение подписаться на хакер за 7к, а это просто бесчеловечно. Мой руководитель жопа, двачик ты моя последняя надежда, мне больше не к кому обратиться, на моем потоке спросить тоже не у кого, подскажите или накидайте инфы на русском/английском:- на каком языке лучше писать? я немного писала на си первые 2 курса, в пределах программы обучения, это были простенькие програмки в одном cpp и одном h файлике, в основном всякая математика, складывание строчек и массивов. То есть в обьектно-ориентированное программирование я не умею, только самые простые вещи - примерно до функций, ну и самую малость указатели. питон видела только на картинках, ява для меня просто не изведана.- для такого приложения нужны привелегии суперпользователя, если да то как указать на это в программе?- как пользоваться геолокацией, нужно ли как-то преобразовывать вывод с GPS, или это в прямом смысле координаты как на карте?- если делать через Android API, то нет разницы на каком устройстве будет установлена программа?- какие-то еще подводные камни
Сап.Как передать объект в интент, если он имеет в себе поля, которые тоже являются объектами? Парслейбл, как я понимаю может работать только с простыми типами данных. Сериалайзебл еще не тестил, но передает ли он поля-объекты?
Как сделать так, что бы пользователь оставался залогиненым в приложении? Делал аутентификацию с помощью firebase. Заебался уже, гуглил, пробовал варианты с authlistener'ами, нихуя не работает. Только прибавились проблемы, теперь нужно n раз кликнуть на вход, что бы зашло