Это копия, сохраненная 10 марта 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Тред для тех, кто пытается вкатиться в андройд разработку или чего-то похожего. Продолжаем пить чай и искать возможность перекатывания на фусчию/флаттер.
> Хочу вкатиться в разработку под 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.Ru
https://habr.com/company/mailru/blog/345252/
https://github.com/ybereza/technotrack-resources - ресурсы к лекциям
Или от Яндекса. В некоторых моментах спикеры рассказывают важные детали, которые кроются в мелочах:
[YouTube] 001. Школа мобильной разработки – Java Blitz (Часть 1). Эдуард Мацуков[РАСКРЫТЬ]
В дальнейшем потребуется базовое знание 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 - для продвинутых
Пример MVVM
https://github.com/ericmaxwell2003/MvvmTipCalculator
Это всего лишь обертки, чтобы вынести логику из views. Для более углубленно изучения можно попробовать почитать
this: https://habr.com/company/mobileup/blog/335382/
Пример на котлине:
https://github.com/hitherejoe/GithubTrending
> Хочу анимировать мои говноподелки!
[YouTube] Nick Butcher & Doris Liu - Learn Some New Moves: Advanced Android Animation[РАСКРЫТЬ]
Онли теория. Первые двадцать минут покрывают больше половины статей, которые можно найти на медиуме и т.д.
Здесь побольше практики на любой вкус: 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 Android
https://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 - бенчмарки на вопросы о том, какую БД выбирать.
ласт >>1290693 (OP)
> [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
Охуенные ссылки, бротиш.
Это да, ток зинналутин немного в ступор вводит где-то после 20 минуты с subscribersOn, но ничего. Вортон в принципе классика, но я пока лучше не встречал.
> @Keep
А нужно -keep,allowobfuscation
Впрочем, нахуя ты включаешь багованные недоделки гугла я спрашивать не буду.
Нет конечно, уже на помойке истории. Только MVI, а там и на флаттер соскочить легко будет, благо тот же редакс подход.
>углубляться дальше в MVP в 2к19 ?
Да что здесь углубляться? Бтв с гугловской поделкой мввп мб еще острелить ногу еще можно, я бы не рекомендовал.
Читаешь моху - играешься с командами - перепрыгиваешь на клин архитектуре.
Оно хорошо сжало приложуху, учитывая что там только эта хуйня вылезла, то очень даже круто.
Спаисо, попробую правило. Но надо это дело куда-то зарепортить, потмоу что другие методы оно не выкидывало.
Конечно стоит, Kivy тебе в помощь.
Вес бандла:
Proguard — 27.3 mb 7714 classes 42589 methods 51406 method refs
R8 — 26.8 mb 7614 classes 42269 methods 47277 method refs
R8 full — 26.8 mb 7614 classes 42169 methods 47277 method refs
Там где 473 кб выкинуло дополнительно.
>Учить джаву желания нет.
Для баловства - конечно выкатывай. Для серьезных решений и дальнейших шагов в мобайл - ты дурачек. Все просто.
Учить придётся не столько жаву сколько экосистему ведра. Выкатывай на том с чем хорошо знаком.
> Proguard — 27.3 mb 7714 classes 42589 methods 51406 method refs
Сколько optimizationPasses делаешь? Если не указывал, то используешь proguard-android.txt или proguard-android-optimize.txt?
Есть вьюха parentView(constraintlayout), на ней несколько(много) childView. Пишу parentView.lp.height = 0 и все что было на этой вьюхе остается неизменным, а не исчезает вместе с родительской(как бы это произошло на ios)
Скажете юзай visibility = GONE? Дак с ним анимации constraintlayout'a нормально не работают нихуя, ну и дерьмо
Это не простое обновление. Это зависит от втоих зананий, если ты знал только как шлепать формочки к ведру, то помножит на ноль, а если шаришь в общем мобильную разработку то нет.
Кхм, ну другие "продвинутые" опции он же использует?
Воспользовался proguard-android-optimize.txt
Прогврад застрял на первом проходе и крутится уже минут 10.
R8 тупо завалился.
С Java хорошо знаком, а вот с котлином нет. Есть ощущения, что если потрачу время на его изучение, то в последствии эти знания, как принято говорить, "превратятся в тыкву" и я не смогу конвертировать их в валюту.
Если сомневаешься то не лезь, сахар, сахар и еще раз сахар, но джава такой постный язык что этого достаточно, из реально класных фич котлина - бекпорт многих штук изкаропки и кортуины, ну и не прибитое гвоздями остобрыдшее ооп головного мозга джавовского разлива.
>С Java хорошо знаком, а вот с котлином нет.
тогда нахуй такие вопросы задавать? Думаешь действительно жабу знаешь? Писать листы и абстрагировать логику не значит хорошо знать жабу.
> Есть неплохая идея для приложения (что-то типо трекера привычек, знаю полно такого, мое будет отличаться),
ПХАХАХАХАХАХА. Конечно отличаться.
>но не могу определиться на чем лучше писать?
На чем хочешь на том и пиши.
>В чем профиты котлина по сравнению с Java?
Меньше кода писать.
Какой нахуй MVI, дебил, когда гугл во всю проталкивает МВВМ?
>>15239
Не слушай местных додиков, учи сначала МВП, в плане баланса количества кода - удобства - отладки - тестирования - разграничения функционала самое оно. Дальше перескакивай на МВВМ, потому что активно пропихивается гуглом. В принципе этих
двух архитектур для андроид девелопмента полностью с головой должно хватать.
Лол, помню как два треда назад некий анон заметил, что всегда найдется в андроид-тредах дебил, который начнет на слова "mvp" и "архитектура" писать, что "это не архитектура, мааам, не архитектура, я сказал!". Тогда я как-то не обратил внимание, но вот в предыдущем треде был срач на эту тему, а теперь ты появился. Тебя и тебе подобных не заебало нести хуйню и спорить об этом несколько тредов подряд?
>>16445
>Самая главная причина не использовать МВВМ.
Серьезно? Не использовать продукт, рекомендуемый компанией для разработки других продуктов для ос этой же компании? А ты точно программист? Небось, глайд, ретрофит, мультидекс, андроидХ, да че уж там, гредл сборку ты тоже не используешь? Это же все рекоммендед бай гугл.
>>16503
Потому что мввм от гугла сейчас в сырой альфе по факту. Так всегда и со всем было на этой же стадии (вспомни констреинт лаяут, когда появился, то тоже был истыкан багами). Но очень глупо полагать, что они эту тему забросят и что мввм не нужно будет учить и понимать как думают тут некоторые местные додики
Найс передергиваешь, дурачок.
> глайд, ретрофит, гредл
Слава богу сделаны не гуглом, а сообществом. Хотя к гредлу все равно много вопросов. Да и альтернативы у гредла нет.
> мультидекс
Является частью системы сборки.
> андроидХ
А давайте сменим нейм пакета у саппорта, чтобы потом все в течение года испытывали лютые анальные боли. Еще давайте выпустим тулзу патчер жарников, который увеличивает время сборки и иногда не работает. 10 из 10, тот самый всеми любимый стиль гугла.
Эти пидорасы могут по велению левой пятки переехать с грейдла на bazel, вот хохма-то будет.
>Тебя и тебе подобных не заебало нести хуйню и спорить об этом несколько тредов подряд?
Т.е. в абстракцию model ты хочешь поместить и маппинг и взаимодействие с БД с нетворкингом и т.д.? Ты больной?)
Маневры уровня /po/ подъехали.
Ты писал, что если рекомендуется гуглом, то это причина не использовать? Хули ты теперь маневрируешь, мол, ретрофит не писался гуглом и т.д. Он проталкивается и рекомендуется для использования как единственный верный рест клиент. Ну что, откажешься от него, мань? Вернешься к HttpUrlConnection, как в далеком 2012?
>Является частью системы сборки.
Получай второй раз хуем по губам за маневры.
>А давайте сменим нейм пакета у саппорта, чтобы потом все в течение года испытывали лютые анальные боли. Еще давайте выпустим тулзу патчер жарников, который увеличивает время сборки и иногда не работает. 10 из 10, тот самый всеми любимый стиль гугла.
Просто ты очень тупой имхо. Я уже два проекта как веду с нуля на андроидХ, полет ровный. Один старый проект, которому около года, мигрировал на андроидХ буквально 2 дня назад, все работает четко. А ты не разобрался в теме и пытаешься бугуртить на дваче. Ты даже не просек главную фишку, что теперь у тебя в гредле 1 строчка зависимости вместо ~10.
>>16723
>Т.е. в абстракцию model ты хочешь поместить и маппинг и взаимодействие с БД с нетворкингом и т.д.? Ты больной?)
Поехавший, что ты несешь? Что я только что прочитал?
Короче, давно хочу стать прогармигстом. Несоклько раз пробова вкатиться с ютуб крвоков. но лень, неинтеренсо и забивал.
Я думаю, подходящий для меня способ вката: сначала практика, потом теория.
Практика из пустого в порожнее не сможет мотивировать меня, поэтмоу ставл конкретну цель: хочу написать приложение N.
Суть приложения N: это низкоуровневое приложение, связанное с лок-скрином андроида. Суть его в том, что если вместо пароля разблокировки/графического ключа ввести специальный(устанваливаемый пользователем код или граф.ключ) код - то смартфон ТИПА подвисает или перезагружается или только изображает перезагрузку - короче, после ввода ключа вся инфомрация стелефона стирается и перетирается(чтобы не восстанвоить), а т.к. это будет занимать время, нужна имитация подвиса или подлага.
Ну вы поняли?
Вот такое прилоение хочу написать.
С чего начать?
Какими компетеенциями нужно обладать, чтобы написать такое приложение на коленке за пару вечеров?
потом хочу устроиться на РАБоту 4ч/день максимум
Начни с чего по легче. Приложения погоды например.
>Поехавший, что ты несешь? Что я только что прочитал?
Хм, тогда это все пихается в презентер. Ты точно даун тогда.
>С чего начать?
C шапки.
>Какими компетеенциями нужно обладать, чтобы написать такое приложение на коленке за пару вечеров?
Месяц дрочки базовых вещей.
Научись излагать нормально свои мысли, чмоня. Пока тебя даже не хочется обсыкать, потому что ты даже не сказал толком ничего, что заслуживало бы внимания.
Да этот дибил по ходу троллит тем, что в презентере у тебя запросы к серверу, к бд и прочие тяжеловесные вещи. Но для мвп это норма, я хз, че он доебался. В мввм не знаю, где оно должно быть
Оно и в мвп не должно быть, охуенно протестируешь ты такое дело. А вот если заинжектишь в презентер репозиторий который работает с диском и сетью уже лучше, так потихоьнку и прийдешь к clean architecture
>А вот если заинжектишь в презентер репозиторий который работает с диском и сетью уже лучше, так потихоьнку и прийдешь к clean architecture
Удивительно, как существа умеют быстренько эволюционировать.
>Как скачать и установить вручную?
Ну так это. Удаляешь все и заново студию устанавливаешь. А там сдкашки сами подтянутся.
Что? Ты меня с кем-то путаешь.
И нахуй теье репозиторий в проекте средней величины, где просто запросы к серверу и получение+отображение данных? Ладно, если бы требование стояло заводить локальную базу + кеширование в файлы. Но процентов 80 проектов - это тупо запрос-ответ-отображение, не более того.
Нужно шарить данные между разными экранами например, не, можно конечно все во ViewModel бщую засунуть, но все же.
>Нужно шарить данные между разными экранами например,
Делается это через презентеры. Если что-то связано с UI - привет event bus.
В судах там какой-то трэш творится. В 12-ом присяжные из окружного суда, где рассматривали дело, сказали, что Гугл не нарушил никаких патентов, а всякие АПИ под авторское право не подпадают. В 14-ом после апелляции Оракла апелляционный суд частично отменил решение окружного суда, сказав, что АПИ под авторское право-таки подпадают, и вернул дело в окружной суд - чтобы он установил, являлось ли использование Гуглом джавовского АПИ "добросовестным". В 16-ом присяжные из окружного суда сказали, что Гугл законно использовал джавовское АПИ (реализация у них и так своя). И вот теперь в 18-ом после апелляции Оракла апелляционный суд сказал, что джавовское АПИ (речь только про имена разных функций!) Гугл использовал в своём ведре незаконно, из-за чего он теперь должен Ораклу тонны бабла. На что Гугл сказал, что бабло он так просто не отдаст, и пошёл в верховный штатовский суд.
Т. е. пока что в сухом остатке выяснилось, что АПИ (не реализация, а чистый АПИ) подпадают под авторское право, и что Гугл попал на бабки и будет платить Ораклу лицензионные отчисления за джаву на ведре (до тех пор, пока она там есть).
И вот я теперь думаю, останется ли джава на ведре и что там вместо джавы может быть в будущем. Dart/Flutter?
>, скажется ли срач между Гуглом и Ораклом на разработке под ведро и каким образом?
Спорить больше 6 лет из-за того, что пару И/О классов скопировали...
>Dart/Flutter?
Очередной убийца хХх.
> останется ли джава на ведре
Нет, не останется. Все перейдут писать на с++. Надо было плюсы учить, а не эту ебанутую жабу.
Извращение. Рили getActivity().startActivity() Не, ебись оно конем.
>И вот я теперь думаю, останется ли джава на ведре и что там вместо джавы может быть в будущем. Dart/Flutter?
Да нихера не будет уже, будут платить и пользоваться дальше, ибо обратную совместимость никто не отменит, а жабогоспода стимулируют рынок железа и полугодовые жизненные циклы между покупками мобилок.
Вообще, гугл выбрав путь жабогоспод из-за рынка J2ME сам вырыл себе могилу.
Мог бы сразу как норм люди байты ебать - и, глядишь, перед яблочниками за производительность, оптимизон и оверхед по железу оправдываться бы не пришлось.
Название только сменят.
Да, всё, выкатывайся.
>что гугл прекратит поддерживать Андроид в 2021 году
Ссылка на оф источник от гугла? Нет? Соси дальше.
я понял, итт токсики, советом не дождаться, в вузе тоже преподы ничего сказать не могут.
Здесь полтора токсика, остальные не утруждают себя ответом на такие школьные всплески.
Какую инфу? Ты вообще о чем? Делай то что тебе нравится. Не можешь определиться - пробуй все и найди то что нравится. Анализируй. Хочешь андройд - читать шапку. Что за волшебные слова ты ищешь? Их нет.
Вот я и решился на андроид, просто прочитал что гугл его спишет в 21 году и чет начал сомневаться, я ж не кручусь в кругах кодеров, не у кого спросить.
не слушай этого долбоеба. Он про di не слышал никогда
из твоего поноса понял, что тебе нужен invisible
Меня вот тоже сомнения терзают. Гугл ведь пилит свою ось "для всего портативного" - Fuchsia, а там как раз будет Flutter. И получается, что этот Flutter, по замыслу Гугла, сначала должен набрать популярность в ведре, потом Гугл выпустит Fuchsia и она постепенно начнёт замещать ведро, а потом в один прекрасный день Гугл просто дропнет ведро, и Flutter-боярам при этом переходе ничего нового учить будет не надо. В свете проигрыша в суде эта Fuchsia стала ещё более актуальной.
Но это всё, конечно, дело не одного года.
>И получается, что этот Flutter, по замыслу Гугла, сначала должен набрать популярность в ведре,
Ахахахах.
>Гугл ведь пилит свою ось "для всего портативного" - Fuchsia, а там как раз будет Flutter.
Это ты откуда взял вообще? По началу вообще такая инфа ходила, что там будет котлин (но без джавы, как сейчас в ведре). Даже аргументировалось - чтобы подогнать всю моб разработку под один стандарт разработки (ибо котлин и иосовский свифт на 95% похожи). А флаттер к фуксии не имеет вообще одношение. Флаттер и язык Дарт - это скорее попытка гугла потеснить различные реакты и прочую поебень для кроссплатформенных минипроектов, но не более того. Относиться к кроссплатформе серъёзно - глупое решение. Все равно нативная разработка будет всегда цениться больше для проектов величины большей, чем проект-визитка.
Да и к тому же, зачем гугл в 2017 году сделал котлин офф языком и стал его так пиарить? Чтобы потом через 5-6 лет о нем забыли? Нет, так не бывает. Моя ставка - это то, что в Фуксии будет именно котлин.
>(ибо котлин и иосовский свифт на 95% похожи)
Ой блять, так говорят только те, кто на свифте не писали. Конечно, на все 99 процентов похожи, а 1 оставшийся - это отличие вала от лета.
> это то, что в Фуксии будет именно котлин.
АХАХАХАХАХ. С кем я сижу здесь)
> чтобы подогнать всю моб разработку под один стандарт разработки
Ну стандарт разработки у нас видимо ограничивается только языком. Похуй на разное апи, похуй на разные архитектуры.
Берешь хедеры либы, пишешь мелкую прослуйку с методом zalupa например, скармливаешь их в ндк, линкуешься к сошке и дергаешь native void zalupa из джавы.
Почитай как работает ндк, пожалуйста.
>>Гугл ведь пилит свою ось "для всего портативного" - Fuchsia, а там как раз будет Flutter.
>Это ты откуда взял вообще?
Вообще, это уже common knowledge.
https://www.forbes.com/sites/forbesnycouncil/2018/07/26/why-you-should-start-looking-at-googles-flutter-and-fuchsia-now/
>The secret sauce is Fuchsia's user interface and apps, which are being written with Flutter.
>Все равно нативная разработка будет всегда цениться больше для проектов величины большей, чем проект-визитка.
Релизные версии аппсов на Flutter представляют собой либы, AOT-скомпилированные в бинарный код для процов ARM (или Apple), плюс минимальную обёртку для платформы Android/iOS. Аналогично пишутся, например, игры с использованием NDK. Куда уж нативнее.
А лохи продолжают учить джаву/котлин и гундеть, что ведро не умрёт никогда.
Хеее? Флаттер быстренько так поднялся, впервые встретился с ним в прошлом году.
Все равно разработчик иос\ведроид будет цениться лучше. А флаттер это так, впридачу.
На дайнный момент я могу в методе public boolean onTouch(View v, MotionEvent event) поставить return false; вместо return gestureDetector.onTouchEvent(event); и получить рабочий скроллинг вверх-вниз обратно, но влево-вправо перестает работать.
Ну в любом случае ты сможешь сам юзать апк и распространяться другими способами.
Я уже обчитался и обгуглился, почему оно не может работать нормально? Помогите, пожалуйста. Я после эппла хочу простых работающтх функций, а мне какие-то адаптеры и лисенеры суются.
https://ru.stackoverflow.com/questions/927593/android-java-view-setontouchlistener
Нет, гугл плей так не умеет. Свайпая лево-право я свайпаю скроллы вверх-вниз. А гугл свайпает элементы внутри.
720x1280, 0:07
А у меня как тут. Я не могу вверх-вниз если включено лево-право.
Нихуя не понятно, отображение кликов на экране включай.
Если ты хочешь айосный оверскролл, то иди нахуй.
Если у тебя просто свайпы, то обычный вьюпейджер с трансформером.
О ужс, что не понятно? Я скроллю вверх и вниз и влево вправо, ничего больше не нажимаю. Это все 1 экран, виевконтроллер, 1 активити, 1 блять.
viewpager, просто забудь о том, что в андроиде должно быть как в айос
>почему оно не может работать нормально?
Уаххахахахахаха
>Помогите, пожалуйста.
Человек может помочь только сам себе.
>Я после эппла хочу простых работающтх функций
АХАхахахахаххахаха. Простых и работающих. Ахахахаххахахах.
>какие-то адаптеры и лисенеры суются.
Так то ты и будешь работать с адаптером. Или ты паттерны вообще не знаешь?
>>19571
>Я не могу вверх-вниз если включено лево-право.
Ты дурачек? Это делается через вью пейджер + ресуклер вью + он тач. Все. Ты делаешь из малюсенькой проблемы большую проблему.
И да, тебе сначала придеться испытать пол ада, чтобы научиться котить на андройд, это общеизвестный факт. А мне хорошо, я с андройда на иосе себя нормально чувствую)00))0))))000
>>19575
>О ужс, что не понятно?
Иди пропердись.
Всякий кулик свое болото хвалит. Мне тоже из андроида в ios вначале казалось что все как-то по-дурацки устроенно, тут надо привыкнуть и понять.
>ООП гуру
>кусок кода, который должен выполняться во всех фрагментах
Ебашь глобальный класс и не неси хуйни.
>Использую либу androidx.
Хм, интересно, а неленивые люди уже написали мост для таких случаев? Пока боюсь подцеплять ее, ибо от микрософта еще и не пахнет этим.
viewpager с фрагментами, нахера трогать onTouch ума не приложу
>Обычные фрагменты задиприкейтили, перекатывайся.
Не, я использую фрагменты из androidx.fragment, они то норм.
>Тут наверное лучше инжектить в каждый фрагмент объект, который выполняет то что надо.
Ну я тоже думал сделать что-то вроде делегата и вызывать его методы в onCreate. Но это тогда в каждом фрагменте надо руками делать соответствующее поле и руками прописывать код для вызова нужных методов. А если все через наследование бы получилось сделать, то такой код разместился бы только в абстрактном классе, поэтому мне с делегатом решение кажется костыльным.
> в каждом фрагменте
У тебя же есть базовый, в нем и дергай. А для префов сделай отдельный базовый для всех префов. Префы кстати тоже перенесли уже на androidx, чекай соотвествующую либу.
Для префов тоже из androidx юзаю.
Проблема как раз в том, что я хотел сделать единый базовый класс для всех фрагментов и для перфов в том числе. Но, очевидно, так сделать не получится. Поэтому да, я тоже пришел к тому, что либо делать отдельный абстрактный класс для фрагментов-перфов (но тогда получается копипаста кода из абстрактного класса обычных фрагментов), либо через делегаты. Но обо варианта говеные, поэтому спросил, может есть более удачные решения.
Ты 2 своих решения в одно скомпановать не можешь? У тебя 2 разных базовых класса используют один делегат.
Хуйня на постном масле. Неси сюда ссылку с заявлениями от самого гугла, касаемо фуксии и флаттера. Ты же кинул ссылку на обычную статью с сайта, который даже не имеет отношение к айти, лел. Еще бы кулинарный сайт дал, еблан.
Да, походу в данном случае это единственное годное решение будет.
Просто я страдаю с того, что, казалось бы, для фрагмента надо делать свой отдельный базовый класс, хоть он и преф-фрагмент. А вообще эти преференсы (активити, фрагменты) на практике часто используют или чаще делают кастомные?
Возможно тебе подойдет вариант с FragmentLifecycleCallbacks, колбек цепляется в активити и методы будут вызываться для всех фрагментов.
> Flutter
> PhoneGap/Ionic/Titanium
На сколько эти фреймворки близки к нейтиву? Своё приложение в SAF интерфейс добавить смогу хоть?
Очень общая вакансия, навернок можно, но кто ж знает тебя и твои знания.
>Я первый раз в треде, нет времени читать фак, сорян.
Все зависит от тебя, дурачек.
Я вкатывался за 5 месяцев. Но хватит ли у тебя сил, сидеть по 8+ часов на одном месте и читать саморазвиваться? А после нахождения РАБоты ты опять будешь сидеть по 8+ и читат/саморазвиваться. Ты лишь очередной пук, к сожалению.
Смотря как твоя контора будет тебя спрашивать. Если на отъебись, то тогда за 9 месяцев сможешь.
>Ты лишь очередной пук, к сожалению.
this. Пока нет знаний джавы минимальных, то нехуй вообще спрашивать что-то про андроид
Ну что, ребяты. Пора учить флуттер.
А вот и языки https://fuchsia.googlesource.com/docs/+/master/development/#languages
>свалю с тонущего корабля и поплыву к иос-берегу
Гейось-девайсы становятся ещё более дорогим багованным барахлом, продажи падают (см. сегодняшние новости). Ведро более востребованно, да и вообще MAU у ведроприложений всегда больше было.
Что есть, то есть.
Но если с гейосью всё будет так продолжаться — то самые лояльные пользователи однажды плюнут и станут покупать Пиксели.
при том, что 50 процентов быдла сидят еще на андроиде меньше 7. Учитывая, что существуют сиаоми с 7 андроидом за 150 долларов. Так что до фуксии еще далеко
Мне нужен fb sdk и я добавляю implementation 'com.facebook.android:facebook-android-sdk:[4,5)' . После чего вылезает хуйня, что версии не стакаются, потомучто фб тянет за собой com.android.support.customtabs старой версии. Добавляю вручную нужную версию, но ошибка не пропадает
пофиксилось
эта после того рофла от эпл7
Я кста и не прошу никаких данных о юзере. Энивэй нужно билд отсылать им или я че-то делаю не так? В айос клиенте нормально логинится, но там я еше версию фб сдк постарее ставил, а тут так не выйдет же
В идеале - что-то простое, типа простой аркадки или 3 в ряд или что-то такое.
Обязательно нативное (Java/Kotlin - для Андроида, Swift/Objective C - для iOS), обязательно - чтобы написано хоть более-менее адекватно, чтобы я мог в этом разобраться.
Приложение может быть уже выложено в стор - мне не принципиально. Но оно обязательно должно работать. Сильно сложные тоже не нужны - мне для самообучения лучше начать с чего попроще.
В общем, кто хоть чем-то может помочь - пишите на
а что опенсорсных простых игр нет?
>Котики, кто продаст игру для Android/iOS?
В идеале - что-то простое, типа простой аркадки или 3 в ряд или что-то такое.
Обязательно нативное (Java/Kotlin - для Андроида, Swift/Objective C - для iOS), обязательно - чтобы написано хоть более-менее адекватно, чтобы я мог в этом разобраться.
Давай. 1 миллион рублей цена устроит?
Игры делают на фреймворках, cocos, libgdx, löve, unity и тд.
Глянь эти фреймворки и поймешь чо куда, в туторах по ним какие никакие игры делаются.
Игры - это не нативный софт, они пишутся на собственных графических движках. Потому что для игр, в случае если они делаются для разных платформ, обязательна одинаковость во внешнем виде и внутри и т.д.. Поэтому нативная разработка и разработка игр - разные штуки.
Мне нужно обновлять данные каждую минуту. Сейчас я продумал такую цепочку - запускаю форенграунд сервис, он живет и крутится, туда я посылаю таймер - который каждую минуту будет срабатывать и обновлять мой текущий лист. Если приложение свернуто и не активно - то я полагаю нужно сохранять данные, чтобы потом в onResume() повесить листенер из этой части бд/кеша - и написать лист был обновлен и загрузить недостающие новые элементы.
Наличие своих приложений в маркете плюс или дефолтная вещь? При учете что загрузки и реализация норм (inb4:не справочник сортов говна и не архив обоев с котам)
Опыт реализации mvp/mvvm или просто теория? В своем софте реализовал mvp, но кода не много и это не к селу совсем, а масштабных проектов нет.
Теоретическое дрочилово структур джавы, скорость работы блять коллекций и прочего
Клиент-сервер, достаточно ли опыта работы со сторонним json api
*Проекты и отзывы с апворка и етц, если писал в основном довольно простые проекты.
Понятно что требования разнятся, но обратимся к опыту анонов, а не маняфантазий как-будто есть разница
>Наличие своих приложений в маркете плюс или дефолтная вещь?
Читаешь требования заявки на ххру.
>Опыт реализации mvp/mvvm или просто теория?
Конечно же опыт.
>Понятно что требования разнятся, но обратимся к опыту анонов, а не маняфантазий
А ты вообще умеешь читать заявки на ххру? Что там, что здесь в шапке написано все одинаково.
Нет. Просто есть способы нормальные. Какой сервер и пуши? Мне это не надо. Почему только эта альтернатива? Есть же еще!
А вот выполнение кода можешь юзать таймер, А вот еще можешь узать AlarmManager. Аларм еще через CPU работает, он менее затрачивает ресуры - Но аларм держит процесс и это ПЛОХО.
А тут еще WorkManager подвозят. Используй его! А, ну минимальная дистанция выполнения это 15 минут. Захочешь каждый раз в 10 минут выполнять код - хуй тебе. А ВоркМенежер под капотом хуярит IntentService + AlarmManager, а с 21 жоб скечулер.
А вообще все это хуйня и гугол стримится убрать фоновые процессы, чтобы ты в onStart делал свою работу, а в onStop убирал все процессы ибо нехуй память отжирать.
Ну а ты Вася хули тут пиздишь - используй сервер и пуши. Какие нахуй пуши-то блять?
Я не понимаю, у меня каша в голове. Каждый продвинутый городит свою хуйню и делится своим мнением, но где мне найти ЧТОБЫ ВСЕ РАБОТАЛО?! Задача блять пиздец тривиальная. НЕНЕНЕ БАТАРЕЙКУ УБИВАЕТ НЕ ДЕЛОЙ!!!!
Блять, да делай как хочешь. Обосрись несколько раз с разными подходами, зато потом на собесе рассказывать будешь какой ты охуенный и как все шишки с фоновой работой набил.
Посоны, есть один бинарник на го и нужно на телефон замутить приложение с кнопочками, которые по сути этот бинарник будет с опциями запускать. Но дело в том, что хочется сделать это как можно быстрее и беспроблемнее, жабу я не знаю и особенно лезть в это дело не хочется. Есть какой-нибудь шорткат для такой затеи, что установить, android studio?
в данный момент все работает через сервер, который в этой схеме лишний.
>что установить, android studio?
Ну говорят со студией разрабатывают здесь. ноэто не точно.
А что за кейс? Получить бинарник и шо сделать?
Получить гуишку на телефон для своего бинарника, не потратив на это всю молодость.
ты все правильно написал. Нужен шедулер. Про пуши долбоеб сказал. Просто твой кейс, что каждую минуту обновляешь список говно, ты знаешь почему.
ЧТо блять? Ты нормально можешь расписывать задачи?
Шедулер/ВоркМенеджер подвержен дозмоду, а этому долбаебу нужно именно раз в минуту всегда.
Пуш просто идеален для такого говна, нет хочу сеть руками надрачивать.
Нет, я решил просто создать поток, в котором через минуту ебнется startService и там потом UI самому обновить, а если юзер продолжит находится, то постепенно увеличивая на 1.5, 2 и т.д. Соответственно в onStop удалять все к черту.
тот кто пройдет, там требования высокие, вкатывальщики обломаются. Надо было в android academy идти, кстати, норм курсы. Главное, что новые и вся инфа актуальная. Они есть в ютубе
Пидарасам, которые живут в ДС-ах очень повезло. Я бы с легкостью прошел данные мероприятия, но увы, не получилось родиться и вытянуть щасливый билет жизни.
Сколько будет стоить примерно сделать вот такое приложение https://play.google.com/store/apps/details?id=com.wlxd.pomochallenge Это таймер который записывает время с кучей настроек и статистикой. И времени, дней/недель понадобится примерно. Если что я спрашиваю только про код, не про интерфейс/графику.
Так и есть, неделю он будет делать только с перерывами на сон.
Зачем тебе это? Учись по джаве, хеллоуворлды пиши на котлине и не еби мозги. Сахар освоишь по ходу.
На udemy.com смотрел?
Может попробуешь все-таки гугловые статьи по этому поводу читать?
https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html
Блин, а я запланировал перекат на десятку после полной обновы компа на райзен и гтх1060. Значит пока позапускаю хеллоуворлды на своём 4.4 смартфоне через usb.
Genymotion нормально работает на моём Феноме
Рассмотрим пикрил №1. Вот есть у меня класс с паблик свойством, почему IDE ругается на то, что свойство класса должно быть абстрактным тогда и класс тоже или проинициализированным, если я ему присваиваю строку в методе?
Неужели я всегда должен делать что-то по типу пикрил №2 ? Это выглядит как говно
Я не из ведромирка, но по-моему, т.к. var hokage у тебя неопциональное, то всё верно. Сделай опшнлом.
А если инитхокаге не будет вызван, то че компилятору делать по-твоему? Кто будет хокаге?
Все правильно он ругается, либо nullable либо lateinit.
Спасибо. Узнал кое-что новое. Пойду читать про модификаторы
> *Проекты и отзывы с апворка и етц, если писал в основном довольно простые проекты.
Я может быть, что-то неправильно понял, но ты еще не работав джуном, уже фриланасил? Интересуюсь с целью узнать, можно ли в процессе обучения сразу начать хоть копейку зарабатывать. Про фриланс обычно рассказывают, что это только после 1-2 лет в офисе.
ну раз опыт у тебя уже есть каких-то приложений, ходи на собесы и смотри, что тебя спрашивают. Главное не ходи в ту компанию, которую ты хочешь, а то обосрешься. Лучше 1-2 успешно пройди собеса, поработай над вопросами на которые не ответил и потом уже иди в ту компанию, которую хочешь.
Ну и не забывай, что некоторые компании . как Яндекс, говорят, что они будут спрашивать
>>20654
а по твоим вопросам.
1. Всем пох, ты главное на вопросы ответь. Но раз у тебя есть классное приложение, то ты расскажи про него хорошо(какие были проблемы , как решал, как реагировали пользователи) тогда плюс будет. А так тебя могут спросить типа есть ли приложения и сколько скачиваний и все.
2. тут похуй. Но ты должен норм рассказать про эти паттерны и том как ты их имплентировал через какие библиотеки или без. Если что, эти паттерны всегда к селу, странно, что ты это не понимаешь, имея большие приложения в маркете. Единственное оправдание почему ты должен писать в активити все - это приложения на хакатоне.
3. Да, достаточно
Больше на TabLayout похоже
Стой, ты очередной манек, тебе не кажется. Ты знаком с жабой СЕ, но хочешь писать на котлине, и требуешь курсы на нем. Нахуя? Тебе шо. сложно будет переписывать с одного языка на другой? Тогда не пизди, что ты действительно знаешь жабу.
>>21540
Читай книжку по котлину, мешок. Там все написано!
>>21554
>можно ли в процессе обучения сразу начать хоть копейку зарабатывать
Если ты не стажер в компании - нет.
>>21641
Если идти через легкий путь - да.
>>21648
>Аноны, реквестирую какую-нибудь годную идею для проекта
Двач. Со spannableString поиграешься, и БД есть, и сеть, и отправка ответов, и картиночки, и видео. Все что нужно.
Почти готовый клон Убера можно спиздить из видеокурсов.
Не ну вы только поглядите на эти костыли - https://stackoverflow.com/questions/33289152/progressbars-and-espresso
>Пиздец какой-то. Какой же андроид всё-таки ебаный набор костылей
Интересно, чтобы бы ты сказал году так в 12-13. С ума бы сошел.
>Скорее бы фуксию завезли заебало это говно ебаное уже.
Говна только прибавится.
Видел этот гайд. Вопрос, что мне делать если я хочу больше одного действия при свайпе? Жанглировать передним и задним фоном?
>Вопрос, что мне делать если я хочу больше одного действия при свайпе?
Что? Вперед назад вправо влево можешь. Перетаскивать ячейки блять.
>Жанглировать передним и задним фоном?
А бочку еще не хочешь делать?
Мне не понятны твои запросы из данного текста.
При сдвиге карточки, неважно как, открывается задний фон. И что мне делать если я хочу сделать несколько действий? Даже если разделить пополам, то при свайпе будет видна и вторая половина. Из чего, если делать как в этом гайде, то мне приходит на ум только менять передний и задний фон задних layout
Будто что-то плохое
Ну или делать один из них невидимым
Котаны, вопрос всё ещё актуален, плюс к нему хотел бы тут найти исполнителя под небольшой проект. Это пока не уровне идеи, оплата небольшая, поэтому ищу любого студента, который сможет допилить те же опенсорсные игры, например.
Короче, если есть тут в первую очередь адекватные люди, которых интересует реальный опыт, пишите на ту же почту
Короче, в первую очередь нужна любая рабочая игра уже в виде проекта в Андроид Студии. Это если уж совсем тупо.
Если будет на обжективси/жаве - то вообще всё ок. Если на фреймворке - то тут возникнут вопросы, которые лучше обсудить уже в процессе.
По оплате пока также непонятно, но если взлетит - то сможем рассчитывать на какую-то периодичность задач. Не фултайм конечно, но для студента самое то.
опа мамкин бизнесмэн появился.
> Я не буду нихуя делать, а ты запили приложение, прибыль(100 рублей) пополам
Лол, двач не был бы двачем, если бы первый комментарий не был подобным. В любом случае, мне нужен в первую очередь адекватный в общении человек, а о сумме как-нибудь договоримся. А любителям поныть сколько нынче платят?
пошел нахуй в свою бизнес молодсть
>В любом случае, мне нужен в первую очередь адекватный в общении человек, а о сумме как-нибудь договоримся. А любителям поныть сколько нынче платят?
Искал бы в других чатах, в телеге. Здесь мало кто твои маняфантазии будет разделять, и так работы валом.
бамп
В Ноксе даже меха тормозят, слышала, что он не самый быстрый.
Будет сложно, будет пиздец как сложно. Готовься к аду
>Что за чат в телеге?
Нихуясебе. Я тебе должен еще и ссылки кидать?
1. Никакие блять игры не делаются нативно.
2. Поделки уровня /б делаются на юнити.
3. Пиздуй в геймдев доску.
4. Нормальные игры не делаются на юнити.
Что можно изучать по разработке андроид приложений при услвоии, что нет выхода в Интернет?
Суть.
Выход в Интернет есть только по вечерам. Вечером работаю по Nerd Ranch. Днём нет возможности установить AS на рабочую машину и на ней Интернета, но при этом есть много свободного времени. Чем можно заняться полезным в таких условиях для развития себя как андроид-разработчик? Или как просто разработчик, но книги по проектированию и написанию чистого кода не предлагайте - уже прочитаны до дыр.
Не знаю, я проносил.
Правда я и интернет подрубал к рабочей машине, методом вытаскивания локалки и вставления мобильного телефона. Я даже на апворке так работал, лол.
Лол, меня уже один раз вызывали к главному ФСБшнику на "серьезный" разговор - больше не хочу. Подключать Интернет - это вообще мне кажется самоубийство. Покрайне мере там где я сейчас работаю.
Это троллинг но я ответу.
1. Ты как-то смог поставить АС -> значит ты как-то его скачал. Как? Из всего текста - вечером! Значит - ты можешь кликнуть по шапке и сохранить html страницы ВЕЧЕРОМ.
2. Если ты скачал не вечером - то идешь нахуй, потому что нужно писать подробности, а не строить из себя клоуна.
Нде.
>Или как просто разработчик
Тебе дорога в разработку на жс. Вряд ли они браузер с рабочей машины выпилили - уж IE-то должен быть. Можно освоить всякие базовые CS-вещи, алгоритмы там, структуры данных. На ЖС вполне реально прорешать SICP. Можно притащить ЖС-имплементацию какого-либо языка, если есть возможность приносить свои файлы.
Еще в винде может быть компилятор C# где-то в недрах .NET фреймворка.
По поводу жавы, жава есть в составе матлаба, у нас его можно было поставить.
>>23187
Окей. Окей. Я вижу некоторео недопонимание.
Давайте еще раз.
1) Мне не интересно изучение C# или JS (хотя про JS спорно, но это точно не сейчас). Меня интересует Android. Фраза про обучение как просто разработчика я имел ввиду, что-то на уровне проектирования ПО, но только не его, так как уже и Макконнели прочел, шаблоны заучил, основные методы разработки ПО тоже +- понял.
2) Проблем с изучением Java на работе не было вообще проблем. Не было потому что Eclipse спокойно запустился в standalone режиме и я мог на нем работать.
С AS такого трюка вы не сделаете. Ему НУЖНО один раз подключиться к Интернету после установки и помимо этого AS любит всё время, что-то докачивать с репозиториев гугла. Покрайне мере после двух дней головняков у меня так и не получилось адкекватно на нем работать, хотя я и скачал всё, что только можно сделав его максимально жирным - он всё равно требовал выхода в Интернет для докачки зависимостей, которые появлялись с каждым новым активити.
3) Я могу проносить файлы на предприятие.
4) Вечером есть выход в Интернет - потому что вечером я нахожусь дома где есть стационарный ПК.
>Ему НУЖНО один раз подключиться к Интернету после установки
Ну вот тут говорится как это сделать
https://stackoverflow.com/questions/28359851/how-to-install-android-studio-full-offline
Установить на другую пеку и перенести, если коротко
>и помимо этого AS любит всё время, что-то докачивать с репозиториев гугла
Ну выкачай репозиторий гугла целиком, принеси его на внешнем HDD (так как места на рабочей пеке может не хватить), копируй по мере необходимости
>>Ему НУЖНО один раз подключиться к Интернету после установки
Ну вот тут говорится как это сделать
https://stackoverflow.com/questions/28359851/how-to-install-android-studio-full-offline
Установить на другую пеку и перенести, если коротко
Да, я читал эту статью, как и многие другие. У большинства там ситуация, что Интернет есть, но просто медленный, а не его полное отсутсвие.
>Ну выкачай репозиторий гугла целиком, принеси его на внешнем HDD (так как места на рабочей пеке может не хватить), копируй по мере необходимости
Блин. Я честно говоря о таком даже не думал. Как-то это очень прямолинейное решение проблемы - "У тебя нет Интернета на работе? Скачай Интернет!".
>Блин. Я честно говоря о таком даже не думал. Как-то это очень прямолинейное решение проблемы - "У тебя нет Интернета на работе? Скачай Интернет!".
Ну вот так мы жили когда-то. У меня была установка редхат линукс на трех дисках, на первом был установщик, а все остальные были забиты rpm-пакетами на все случаи жизни. Интернета у меня не было вообще - через полгода появился диалап по доллару в час.
Сайты читались так - коннектишься, врубаешь teleport pro, который выкачивает тебе весь сайт в пакетном режиме, а сам в это время чатишься, потом в оффлайне смотришь.
А так да, прожигаешь MSDN на куче дисков (в районе 5 гигабайт, помнится), устанавливаешь.
Сколько там этого репозитория, вряд ли терабайт, да даже если и терабайт, выкачаешь за неделю.
Окей окей вижу болтливого клоуна.
1. Мне срать на твой сисярп и прочую хуйню. Нахуй ты сюда вообще это принес? Проектирование ПО? Либо ты ебешься с андройдом - либо нет. Пиздец нахуй запросы пошли у людей.
2. Да мне похуй. Конечно ты с АС так не сделаешь. Удивительно.
3. Проноси, мне то что?
4. Молодец, вечером хуйней не занимаются, так как ты это делаешь.
Заключаем вышесказанное - проблема в твоей голове, дурень. Без интернета никто не работает, тебе нужен хотя бы 1 раз интернет чтобы настроить все это дело. А теперь ты по настоящему идешь нахуй.
Но ведь ты сам болтливый клоун и токсичный вахтер треда. Шел бы ты нахуй с завершением создания атмосферы типичного рашкофорума, где человеку после задания вопроса нужно написать 10 раз, какой он мудак. Не нравится - пройди мимо молча. Убей себя просто.
1323238-кун
Что за хуйню ты несешь? Человек здесь сидит троллит в какой секретной компании он работает но вдруг решил пердолить андройд. Тебе самому не смешно?
Мне все нравится, а если тебе я не нравлюсь - то мог бы и не отвечать, маня фантазер.
>Тебе самому не смешно?
Школьник открывает для себя Россию. Набери в гугле "первый отдел", поинтересуйся, что это такое.
>Школьник открывает для себя Россию
Ты что, способен составить портрет анона который разговаривает с тобой по одному\два месседжу? Манядурачек.
>Набери в гугле "первый отдел", поинтересуйся, что это такое.
Мне это не нужно. Если ты действительно там - то не такой и тупой. Если не тупой - то можешь и гуглить. Больше нет смысла отвечать на такой высер.
Можешь кодить без ведроид студии, нужно скачать сдк тулс, и дальше чем консольный грейдл шуршать.
Примерно стек технологий понимаю т.к. работал с похожим, но вопрос встал о фронте - что юзать для разработки непосредственно приложения?
Не хочу веб-дрочь типа электрона. Требование - должно быть супер быстро, как телеграм. Время разработки не важно.
Разумеется на данный момент выбор пал на ванильный Java в андройд студии, но может быть есть какие-то более удобные фреймворки? Что-нибудь очень минимальное типа FLTK для плюсов.
>Требование - должно быть супер быстро, как телеграм.
>как телеграм
>телеграм
Ахахахахах) Да пожалуйста, копайся, вот же исходники) super bistro https://github.com/DrKLO/Telegram
>но может быть есть какие-то более удобные фреймворки?
Конечно есть. А ты вообще шапку читать не умеешь? окхттп+ретрофит стандарт, можешь накуриться дагерром клином - чтобы все было четенько. Ну екзекьютеры с хендлером, если впадлу то рхжабу возьми.
Каким бы ты крутым не был, мне кажется все равно придется посидеть и почитать. Быстро не получится, много подводных камней, через которые все проходят.
React Native и съеби из треда сеньор
Это даже видно, потому что этот тред постоянно в топе тредов.
Лучше вкатывайтесь в бэк на го.
Сгинь.
>Моя ставка - это то, что в Фуксии будет именно котлин.
Фуксия уже на флаттере, флаттер уже на дарте.
С прибытием!
>>Лучше вкатывайтесь в бэк на го
>На Rust
Зачем на бэкенде этот мазохизм, спасибо еще что С++ или хаскел не посоветовал.
После появления RxJava хендлеры уже никто не учит и они попросту не нужны, кек, маня, с подключением.
>хендлеры уже никто не учит
В твоих маняфантазиях. Тащишь большую либу ради сабстрайбОн и обсервОн, молодец, петушок.
АХАХАХХА
В натуре, с подключением. Эта либа юзается в запросах, в работе с бд, в работе с событиями вьюшкек, которые сложнее, чем onclicklistener, да везде лол. А в комбинировании нескольких тяжеловесных операций она по факту и незаменима. Без нее ты толком ни один презентер не напишешь если ты вообще в курсе, что такое презентер, в чем я сомневаюсь
А презентер тут при чем? Тяжеловесная хуйня у тебя в юзкейзах и репозиториях, дебаунс на серчвью во вьюхе.
Ахах) Думаешь какой-то костыль разобрал кое-как и теперь глаголить горазд?) Самоуверенный чмошник.
вся суть вкатывальщиков. Это надо на главную цеплять. У меня был точно такой же одногруп, который с первого курса вкатывался в андроид и параллельно в дотан. В итоге прошло 5 лет, а он в маге на инженегра учится и в нии 15к получает
для разных задач разная архитектура, то что сейчас датабандинг в джетпаке говно недоделанное - это да, но это не значит , что мввм говно. Когда все писали на асинктасках и довольно урчали
хендлеры используют в коллбэк парадигме, а не в реактивной. Есть люди, которые не используют реактивность. Но для джуна червя пидора тебя конечно только рх существует.
Дебаунс и тротлфёст да, во вьюхе. А тяжеловесная хуйня типа запросов к серверу или к базе как раз в презентерах. Репозитории нужны только в гиганских до полного ахуя проектах. Процентов 95 из сидящих тут включая тебя с такими все равно не работали. А так практически во всех проектах паттерн репозиторий нахуй не нужен, с его функцией справится презентер.
>>23968
>>24063
пиздуйте назад в /b/
>хендлеры используют в коллбэк парадигме, а не в реактивной
Да, вот только сейчас уже 2к19ый и колбек парадигма по факту становится депредейтед. То что ты знаешь, что это такое и когда-то работал с этим, конечно, хорошо, но можешь засунуть себе в жопу, потому что уже везде на всех собеседованиях и во всех фирмах юзают именно реактивщину. Да, есть люди, которые реактивность в андроид разработке не используют, флаг им в руки, их рыночек за года полтора полностью порешает и они станут нахуй никому не нужны. А вообще я ору с тебя, как ты со свой колбек парадигмой решал проблему ивентбасов? Там же костыль на костыле.
Не, ну если проект уровня запрос к серверу - отображение данных и больше ничего, то добавлять репозиторий действительно смысла нет.
>Процентов 95 из сидящих тут включая тебя с такими все равно не работали
Пиздец, что за хуйню ты пишешь.
Ебаный стыд, считают что рх это божественный проблеск среди говна. Я не говорил, что это плохо, но в нормальной конторе ты соснешь, если даже не сможешь заводить свой отдельный поток с лупером. О чем может быть вообще и речь?
>Ебаный стыд, считают что рх это божественный проблеск среди говна.
Нет, это лишь очередная библиотека, улучшающая жизнь кодерам и делающая код более читабельным и лаконичным. Но такие дебилы, как ты, не могу осваивать новое, они раз в жизни в 2012м выучили, что такое хендлеры и колбеки и используют только их и ничего более, при этом изучать что-то новое не хотят.
>в нормальной конторе ты соснешь, если даже не сможешь заводить свой отдельный поток с лупером
Ухаха нахуй. Какие нахуй потоки с лупером? Ты про Thread? В 2019 году? Ты совсем блядь поехавший? Ты в каком селе блядь кодишь вообще, если ты на полном серьезе начнешь тулить в проекте Thread (или упаси господи асинктаски), то тебя из любой конторы нахуй вышвырнут сразу же. Пиздец нахой блядь. Ты еще скажи, что вместо ретрофита юзаешь классы HttpGet/HttpPost, вместо RecyclerView - ListView, а вместо глайда\пикассо пишешь собственный загрузчик картинок.
>Но такие дебилы, как ты, не могу осваивать новое, они раз в жизни в 2012м выучили
Либо ты ищешь предложения где я говорил что юзаю на проде код из 12-ого года либо хоть как-то где-то говорю нахуй юзать рх и юзайте хендлеры, ЛИБО ты идешь нахуй, мразь.
Дальше твой бред смысла нет читать.
E/GraphResponse: {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Object with ID '228' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api}
Однако логинится с помощью фб это не мешает
https://freecoursesite.com/learn-flutter-dart-to-build-ios-android-apps/
19гб
(https://www.udemy.com/learn-flutter-dart-to-build-ios-android-apps/)
https://freecoursesite.com/dart-and-flutter-the-complete-developers-guide/
9гб
(https://www.udemy.com/dart-and-flutter-the-complete-developers-guide/)
Нахуй RxDart, если есть нормальный async/await/futures/streams? Дебаунсер один раз можно и самому написать.
>Требуемый опыт работы: 1–3 года
> Flutter
И тут я тупо заржал на всю квартиру, даже пиццей поперхнулся.
А MVP, MVVM на флаттер тебя не смутил? Это ж для вкатывающихся разрабов вакансия.
>170к обычный джун, поэтому такие требования
Да не, это даже не ждун, а только на стажера заявка.
Ждун начинается от 200+, ты что, дурачек?
У нас в оффисе все программисты получают минимум 150к, и это даже не джуниоры, а какие то духи 16-ти летние после школы.
>У нас в оффисе все программисты получают минимум 150к, и это даже не джуниоры, а какие то духи 16-ти летние после школы.
Какая-то у вас мелкопарашеская контора.
У нас побольше они получают, да и на самом деле планка снижена по возрасту, набирают каких-то даунов 12-летних, а они сидят по 230к получают.
какие тебе нужны кулстори?
тебе в /b/
Не понятно что тебе нужно, если просто пининг, то есть изкаропки на последних версиях, ну или в okhttp.
> года за 2
За два года вкатиться реально абсолютно куда угодно, абсолютно с нулевыми знаниями.
Конкретно в андроид лично я после универа почти с нулевыми знаниями вкатился месяцев за 5-6. Если у тебя уже есть опыт в программировании лабы в универе конечно же не в счет, то месяца 3 тебе вполне хватит.
> Насколько реально вкатиться в разработку под ведро года за 2 хотя бы, если есть какой-никакой опыт в погромированиишарп? >Слышал, что там весьма всё запутанно из-за кучи версий и прочего.
Вкатывайся. Ничего страшного нет, все ждем гугл ИО 2019 мб покажут фусчию. Бтв если андройд и сгниет, то не переживай, я чекал дарт, это 90% синкастиса жабы приправленной мьютексом и асинк\авей.
Но после 5-6 месяцев ты уже должен искать компанию, реальную. Ибо будешь как я, 1.3 года опыта, примерно представляю все. но опыта в больших проектах не было. Шапка поможет сократить время, которое я потратил в пустую.
>я чекал дарт, это 90% синкастиса жабы приправленной мьютексом и асинк\авей.
Тю, тот же котлин что ли? Зачем гуглы его добавляли тогда полтора года назад непонятно.
>тот же котлин что ли? Зачем гуглы его добавляли тогда полтора года назад непонятно.
Нет, не котлин, а жаба!
Еще к слову на бекэнде тоже сидит интересный персонаж: на все ошибки(кроме 404) отвечает кодом 200 и { "error" : "..." }, а если все норм, то просто "ok" без джейсона. Ну и с okhttp я могу просто body.tostring() == "ok", а в ретрофите я должен угадать, че там будет(string/json) и подготовить для этого обработчик?
Ну у тебя пидорас на беке, тогда смысла в ретрофите нет, был бы чистенький рест - имело бы смысл.
Думал что подрастает новое прогрессивное поколение конкурентов, но тут одни неуверенные в себе чмошники, которые загуглить не могут и просто прочитать уже написаное другими.
>Думал что подрастает новое прогрессивное поколение конкурентов
Подрастает, но тут они почти не сидят или сидят в ридонли.
>Если бля не можете нарыть такую простую информацию
Но тех, кто услышал, что в айти за нихуя много платят, и ждут, что их обучат и всё разжуют, тоже дохуя.
К слову. https://www.youtube.com/watch?v=DdWWsruUXTo&feature=youtu.be
Я ведь добавляю копии ячеек, созданные для цикла ? Почему потом я пишу cells[0].title = "hui" и вижу это там, где должна быть копия? Или там ссылки какие передаются? поясните плз, а то я не умею читать доки
Ебал я эту 3.3. Я ее не поставил еще, но судя по тому, сколько в инете срача, что у кого-то проекты полетели, или ресурсы проебались, то нахуй она нужна. Пусть пройдет месяц, ее пофиксят и тогда норм.
>Нужно реализовать менеджер логирования, который будет позволять из любой части приложения асинхронно вызвать функцию с аргументами key, value типа String. Получаемые логи будут просто сохраняться, пока их суммарный объем не достигнет 100kb
Просто подскажите, в этом вообще есть смысл или какой-то левак не для андроида?
>Чего ты решлит что копия? Ссылаются на один и тот же объект, тебе стоит начать с азов.
Бля, можно же было просто вывести посмотреть их, и правда на один. Как-то я помню у меня не получалось работать по этой схеме и я начал обращаться по индексу for (i in 0 until cells.size) { cells.title = ... }
>>27011
>Чо? У массивов неизменяемый размер, если хочешь динамический то используй списки.
Это разве во всех языках так?
Мне кажется это что-то вроде статического класса с синхронайзед методом для логгирования.
Ну файл ебнешь и все. Смысол всегда есть.
>Это разве во всех языках так?
Не ебу че там во всех, в obj-c/swift нет списков, вместо них массивы расширяемые. В js где типов не завезли тоже такого разделения нет, зато в Java как раз неизменяемая длина у массива,
собственно как в C, C++ и С# (и Pascal и еще хуй знает в скольких других)
Ну норм, многие продвинутые логгеры так примерно и работают, сначал сообщения синхронизированно закидыаются в буффер, а потом выплевываются в файл за раз, что бы каждый раз не ебать диск. Делаешь просто класс с нужным методом, там добавляешь таск синглтред экзекютору, он сам займется всей синхронизацией-хуеизацией. Глобальный класс с синхронайздом по мне как-то не очень, но если требование из любого места без всяких DI, то можно сделать так - добавляешь туда синглтон, и через статический метод уже дергаешь его. Смысл чисто поучится и посмотреть шо ты такое.
За тебя уже все сделали
https://www.sureshjoshi.com/mobile/file-logging-in-android-with-timber/
>в obj-c/swift нет списков, вместо них массивы расширяемые
Эмм, NSArray – расширяемый? Нет же.
как же я тебя понимаю. У меня тоже на беке мразота, его говняные идеи постоянно принимает руководоство, но он в компании дохуя лет, хотя в беке всего год.
написать рекуклер и повесить на него листенер
NSMutableArray лалка
>Где переопределить print(string) на println(string) чтобы это работало по всему проекту без отдельного импорта?
exstention /thread
https://www.coursera.org/learn/android-app-architecture
А то пишет, про 7-и дневный бесплатный период, а потом типо плати. Просто раньше на курсере с платными курсами не сталкивался, напрямую не написанно, что бабки платить надо... Странно это как-то.
>audit course же
Шо бесплатно?
>Скажите плез, этот курс платный?
Вообще все материалы в шапке есть, ради кека мб и посмотреть. Но хотелось бы в записи это чекнуть.
Допустим я зареган в плеймаркете как девелопер ($25 уплочено, свои проекты уже есть). В поле разработчик указано не имя, а "Васян Девелопмент Груп Инк". Но по факту такой конторы нет - может ли это стать потом проблемой? И что вообще делать то? ИП заводить не хочу.
берешь и меняешь имя разработчика я так уже 2 раза менял, и всегда сука мое имя уже кто-то придумал до меня(
а, так ты и поставил Васян Девелопмент Груп Инк ? тогда нихуя не понял, какая проблема?
Если кто-то зарегает "Васян Девелопмент Груп Инк" и скажет - э, йоба, моя приложуля, отдавай взад.
Первое - Мокси и в самой либе и 3 доклада на ютубе все расписано и разжевано. Второе - научись скрин читать выше.
Добавляет еще один "1" и улетело, хотя в эмуляторе всё ок.
Потому что у тебя какая-то хуйня с взаимосвязями. Лучше начни с верстки. А если хочешь сидеть и дальше разбирать - изучай основы констнейнта по статьям.
иди во пизду
Салам алейкум, ситуация такая, у меня не было никог опыта разработки приложух, занимался исключительно вэбом. Тут мне понадобилось написать приложение, чтоб работало по типу веб приложухи vue/angular/react/etc., это будет что-то типо доски объявлений, собственно будет работать исключительно онлайн. Сейчас уже есть web приложение на vue. Знаю питхон и жс ну и пхп что уж скрывать, собственно вопрос в том какие действие совершить, чтоб по фасту склепать первую версию приложения, есть ли какие нибудь фреймворки или типо того, я просто в душе не ебу че там у вас. Или надо один хрен вкатываться с азов писать на java с тупо андроид либами? JS-фреймворки вообще ликвидныепо типу Vue Native? Надеюсь на понимание к вэб-петуху.
Три пути
1. Сделать адаптивный диз для существующего vue-приложения и сделать PWA (если открыть в хроме на мобиле, то после пятого раза вылезет предложение установить "приложуху" - типа сайт в виде приложения будет)
2. Сделать мобильное приложение на quasar framework (фреймворк поверх vue) + cordova . Делать быстро, учитывая, что уже есть куски кода на vue, но на слабых телефонах будет работать печально медленно.
3. Сделать мобильное приложение на flutter. Придётся освоить новую технологию, но она значительно проще андроид-разработки, плюс получается кросплатформенное приложение, не надо ебаться с ios дополнительно. Делать дольше, но получается практически натив, очень быстрый, 60fps все дела.
Спасибо, пойду разберу твои варики поподробнее, но wpa точно не подходит, нужно опубликоваться в маркете.
>Ну че спиздануть, когда спросят про защиту данных?
Что пусть долбоеб не ставит апк с троянами из помоек, нормальному троянцу все твои ужимки пох - он если надо всё равно всё найдет найдет в памяти процесса, самоустановившись и саморутнувшись.
Если тебе серьёзно нужно подобной хуергой заморочится - то тебе в мир NDK и корифеев хацкерства-байтоебства и антиотладочных приемов на арм-ассемблере.
То что ты хочешь реализуется вот подобной хуергой:
https://kienmanowar.wordpress.com/r4ndoms-beginning-reverse-engineering-tutorials/tutorial-21-anti-debugging-techniques/
Позновательно, но вопрос был в другом. Какие подводные при указании в поле "разработчик" несуществующего ЮЛ.
Flutter твой выбор. Реакт нативе не бери. В телеге есть разрабы по ключевым словам, там если что подскажут. Да и сейчас тонна контента и эксперимента выпускается на реддите\тыртубе\статьях. Станешь крутым первопроходцем 1.0
Я на нем и остановился, ну буду траить его.
Если нужно накидать максимум быстро и просто, особо не влезая в мобильную платформу, то твой путь это Expo. Это хуета которая поставляется для React-Native. Всю необходимую информацию ищи на сайте фейсбука.
Если в кратце, то тебе не нужно будет устанавливать андроид студию, или качать эмулятор на свой компьютер. Ставишь только на свой смартфон иОс или андроид экспо клиент и потом уже с помошью него пилишь свою говноподелку. Для небольших проектиков, аля, отоброжения ленты новостей самое то.
Ты что, ебанутый? Сейчас более-менее приличному корпоративному мессенджеру 1Гб маловато будет, а ты на IDE жалуешься.
эх, говнокодеры, сучьи дети, не помнят те времена когда вся система умещалась в 256 мб ОЗУ ещё и игры спокойно шли.
>я сюда захожу о трендах, интересных либах, новых технологиях почитать
Орнул с тебя маня.
> в котлин корутины завезли, рх отправляется на парашу теперь или как?
Нет. Даже хендлеры не отправятся на парашу, потому что ты должен все знать, вдруг попадется легаси код.
Не путай теплое с мкорым.
https://github.com/chthai64/SwipeRevealLayout - Это почти то, что нужно, но не может нормально переворот пережить.
Это ж задача наитривиальнейшая, неужели каждый раз обязательно надо ебаться с ItemTouchHelper, битмапами и прочим?
>Неужели в 2к19 еще нету нормальной готовой реализации появляющихся при свайпе айтема ресайклера кнопок?
Конечно нет. Ты что, поехавший?
>https://github.com/chthai64/SwipeRevealLayout - Это почти то, что нужно,
молодец
>но не может нормально переворот пережить
Пхахахахх. Ишь чего захотел - ПЕРЕВОРОТ переживать. Я тут недавно узнал что check box тоже не переживает поворот, стыдно признать.
>неужели каждый раз обязательно надо ебаться с ItemTouchHelper, битмапами и прочим?
Да. Зато тулкит хороший (относительно)
еще один фееричный гений, которые сравнивает корутины с rxjava. Может будешь для индусов писать статьи на медиуме?
>напиши сам либу на котлине)))
Зачем мне писать либы? Я не умею их писать, да и пока ситуаций жизненных не предвиделось, чтобы начать копать в эту тему.
И без mvc, фигачить дизайн прямо в коде. Прямо как в свинге.
никак. Для бомжей только паскаль
>Как-то можно вкатиться в разработку под андроид, не касаясь никаких жирных и вонюсих ДЕ
https://google.gik-team.com/?q=build+android+app+without+ide
Нет оно понятно, допустим я прошел этот гайд - https://medium.com/@authmane512/how-to-build-an-apk-from-command-line-without-ide-7260e1e22676
Что дальше то делать? Какая есть книжка про структуру андройдовских аплиух, как их писать без упора на говностудию?
Ты че долбоеб?
Думаешь ты один такой особенный и до тебя не было такого же человека? Я ему сказал, и тебе скажу - ты не сможешь вкатиться если у тебя не пашет ведройд студио. все.
Ну ладно, ладно. Щас переварю статьи про архитектуру аплиух на хабре, и попробую хоть что-то в этот хелоуворд добавить. Я в принципе не крайсис писать собрался, мне много не надо.
Ты будешь месяц или два писать обычный парсер для rss. А крайсис несколько лет. Бля ебанутый, время только потратишь.
Это не мое сообщение. Моя конфигурация - зион5260 и 4 гига рамы. Вполне достаточно. Но просто с этим говном жирным ебаться не охота. Не пойдет на самописных скриптах сборки и блокнотике, ну значит и не особо нужно это всё. Извините за тупые вопросы.
Эмулятором можешь подключить реальный телефон. Остальное еботня для красноглазиков.
Бамп вопросу.
Погугли, формат архива который в гугле порежут как надо для всех версий/денситей/архитектур
А ты не хочешь ее написать за 2к?
це другой анон
Вы мани что ли? У анона, который предпочитает долбится в свой сракотан лишь одна проблема - его процессор блять.
открыть статью по многомодульности, там написано. Гредл это кусок говна и лучше в нем не разбираться пока ты не сеньор, который изучил весь андроид и остался грэдл
Нет, первая неделя изучения андроид сдк. Яву более-менее знаю.
> Гредл это кусок говна
Ха-ха. Это ты ещё Ant и Maven не видел.
Или ты гейфонопетух, у которого вообще системы сборки нет?
Here's what worked for me:
1.Regardless if you want APK or bundle, choose Bundle
2.Even if not required, check the option "Export encrypted key for enrolling published apps"
3.Choose any file
4.Press Next (it will work)
5.Press back twice, choose if APK/Bundle, then in next page, no need for the checkbox "Export (…)" if not required
6.Build & upvote this answer if it worked to help others
Выбери Бандл, чекни снизу Export блабла, вернись назад, выбери APK и должно работать.
> 3.3
Т.е. в текущей версии?
>>31352
Спасибо, помогло. Но теперь у меня следующий вопрос, почему пишет, что приложение не установлено, когда пытаюсь установить? В дебаге по юсб работало, установленную им версию удалил. У меня то же самое было с тем апк, который собирается автоматически, и лежит в папке проекта, но я подумал что это фича, и пошел ебаться с ручной сборкой.
Нехуй обновлятся. А если ты новичек - привыкай.
Я думаю еще подожду 2-3 месяца, пока нормальная не станет.
fun addStatusIcon() {
statusImageView = ImageView(context)
addView(statusImageView)
statusImageView.id = View.generateViewId()
statusImageView.layoutParams = ConstraintLayout.LayoutParams(dp(10), dp(10))
statusImageView.setImageResource(R.drawable.unchecked)
statusImageView.scaleType = ImageView.ScaleType.FIT_XY
val cs = ConstraintSet()
cs.clone(this)
cs.connect(statusImageView.id, ConstraintSet.START, paddingStart, ConstraintSet.START, dp(31))
cs.connect(statusImageView.id, ConstraintSet.TOP, paddingTop, ConstraintSet.TOP)
cs.connect(statusImageView.id, ConstraintSet.BOTTOM, paddingBottom, ConstraintSet.BOTTOM)
cs.applyTo(this)
}
И это пиздецки тормозит, хотя в ios плавно без какой-либо задержки, а тут мне вылетает D/View: [ANR Warning]onMeasure time too long, this =DecorView@e4bbf5a[MainActivity]time =2861 ms
Это из-за постоянного cs.clone(this) cs.applyTo(this) ? Или как посмотреть на чем именно дэлей?
Хуй знает что ты за хуйню вытворяешь. Тебе же явно ошибка говорит, что у тебя изменения вьюшки долгие, и ты вообще какую-то ерунду городишь.
Обычно констрейнт сет юзается когда ты ебнул 3+ леяута в хмл, потом заалокейтили объектики, склонили и попеременно к рутовому леяуту применяем applyTo.
Ты же делаешь какой-то коннект. Пиздец.
Коннект ставит констрайнты в коде. Чтобы увидеть что конкретно тупит надо обмазаться systrace ? которого конечно нет искоробки и с ним тоже придется поебаться... Пытался прологировать тайминги и увидел, что основной делей идет уже после построения всего лаяута. Походу это происходит из-за того, что у меня много вьюх используют wrap_content и по очереди увеличивают родительский лаяут
Есть AppComponent и производный от него subcomponent UserComponent (создаётся после того, как юзер залогинится) и соответствующие им скопы и модули. В AppModule создаю клиент Retrofit, а в UserModule репозиторий, для которого, очевидно, нужен клиент ретрофит и БД. Как прописать чтобы в репозиторий передался экземпляр из AppModule? Где правильнее создать клиент для работы с БД: new как параметр метода provideRepository(...)?
Здесь все написано. https://habr.com/ru/post/279641/
>Где правильнее создать клиент для работы с БД
В DatabaseModule и подключить его к главному интерфейсу компоненту.
спасибо, анон, помогло.
Так же аналогичен вопрос к обычным тестам через мокито. Создаю каждую папку на domain/repository и т.д. и внутри этих папок создаю классы которые у меня реально используются и в них я тестирую?
Выручайте, ребяты.
> Создаю каждую папку на domain/repository и т.д.
Научись уже package by feature делать, а не by layer
>Научись уже package by feature делать
Какие фичи? Тип у меня вон мейн скрин, и в этом скрине у меня подхватываются данные из бд, данные из сети и т.д. так что ли?
С андроид кодингом не знаком, но хочу вкатиться. поясните плиз, что и где почитать, как выдергивать техническую информацию с SOC?
конкретно надо:
- инфа от вайфай модуля: мак, айпи, текущий протокол шифрования, E/BSSID, мощность/чувствительность сигнала.
- инфа от модуля GPS/GLONASS - текущее положение ( я не знаю, как именно оно отражается, то есть это широта/долгота в градусах, минутах и секундах или тупо число, которое надо уже самом привязывать к реальной координате), количество подключенных спутников, тип спутника GPS/GLONASS
Еще очень хотелось бы:
вывод с радиомодуля (GSM) - тип текущего подключения ( 1/2/3/4G), тип текущего шифрования, идентификатор базовой станции, мощность/чувствительность
SOC Mediatek, android 4.4+
с радиомодулем скорее всего борода, тк gsm как последние геи юзают безопасность через неяность, однако с некоторых чипов снэпдрэгона, говорят, можно выдернуть такую инфу.
Хорошо, стоит.
Киньте ссылку на сайт где автоматом генерят хипстерские буковки архитектуры.
Бтв, мви? Что это еще за хуйня? В мире уже давно все на клине сидят.
>инфа от модуля GPS/GLONASS - текущее положение
Здесь через жабу
На счет мак айпи хуй знает.
Остальное делается через какие-то c/c++, лезть в самые кишки ведройда и вытаскивать какие-то приблуды. Такой хуйней никто заниматься не будет. Миру важнее собрать кастомную вьюшку, которая будет бегать по экрану, а не получение E/BSSID.
Хочешь указать в каком слое отображать конкретное вью, нет блять, нужно потратить пол дня на поиски и сделать в итоге все через жопу. Так это говно в итоге по разному выглядит на разных экранах, при повороте вообще пидорасит. Поверх кардвью хуй наложишь картинку, только для новых версий ведра. Для старой версии нужно изобретать велосипед. Зачем вообще библиотеки обратной совместимости выпускают, если он все равно хуево покрывают функционал. Интересно, такой гемморой на иос присутствует? Как долго им стоит поменять цвет на кнопке и текст.
Сейчас застрял на моменте, когда я записываю в базу постранично данные и достаю их обратно. Получается у меня два источника в сторадже. Один метод запрашивает данные с сервера, маппит в ентити для базы и записывает их. Ещё один метод достаёт данные из базы с указанием лимита и офсета, чтобы организовать постраничную загрузку. И короче, теперь что-то вступил, и не особо складывается картина в голове как мне правильно эти данные дёргать, чтобы был один метод в репозиторий который предоставлял мне данные постранично. По отдельности вызывать методы не проблема. Только ряд проблем назревает, первое что пришло в голову, это то что данные на сервере и в локальной базе будут не синхронизировать. Запись данных производится в момент прокрутки списка или открытия экрана. Как ебануть чтобы были актуальные данные? Добавлять некий тайм аут, который по истечению будет обращаться на сервер а остальное время дёргать базу? Если есть какой-нибудь источник для изучения данной темы, буду очень благодарен. Для пагинации не использую пэгинг либ, ибо она не оче дружит с мвп.
>Сейчас застрял на моменте, когда я записываю в базу постранично данные и достаю их обратно. Получается у меня два источника в сторадже. Один метод запрашивает данные с сервера, маппит в ентити для базы и записывает их. Ещё один метод достаёт данные из базы с указанием лимита и офсета, чтобы организовать постраничную загрузку. И короче, теперь что-то вступил, и не особо складывается картина в голове как мне правильно эти данные дёргать, чтобы был один метод в репозиторий который предоставлял мне данные постранично. По отдельности вызывать методы не проблема. Только ряд проблем назревает, первое что пришло в голову, это то что данные на сервере и в локальной базе будут не синхронизировать. Запись данных производится в момент прокрутки списка или открытия экрана. Как ебануть чтобы были актуальные данные? Добавлять некий тайм аут, который по истечению будет обращаться на сервер а остальное время дёргать базу? Если есть какой-нибудь источник для изучения данной темы, буду очень благодарен. Для пагинации не использую пэгинг либ, ибо она не оче дружит с мвп.
Знаешь, анон, когда то я приходил сюда с похожем, да еще и с видео официального от гугла, где евангелист ААС рассказывал, что мы должны класть данные с сервака сначала в БД, а потом показывать на UI. Я нихуя не понимал, и искал решения, как ищешь ты.
После того, как я переговорил с иосником одногруппником который уже 4 года делает приложения, он посмотрел на меня косо и сказал что я ебанутый.
Теперь я скажу, что ты ебанутый. ебни Set и все.
>Только вот ты сидишь на хуях, подразумевая что презентационная логика в клине это мвп, а не любая другая хуйня.
Интересно, какие ты мне предоставишь решения, маня, которые не будут ломаться?
> не будут ломаться
Ну так нормально делай, нормально будет. То, что ты кроме мвп ничего не осилил, только твои проблемы.
Осиливал, не переживай. И на "мвс" в говноконторе тоже писал.
>Ну так нормально делай, нормально будет.
Скажи это гуглу, а не мне. К слову, им будет похуй на тебя.
Всё это можно вытащить контент провайдерами из api 19 с разрешения пользователя.
android.location
android.net.wifi
android.location
android.telephony
https://developer.android.com/reference/packages
А я могу настроить программно впн из приложения? Бтв я пытался, но по большей части сишные классы попадались и либы на 50к строк.
мимодругой
иосникам вообще на многое допизды, у них топовое железо в отличии от ведроидов, можно говнокодить
Я закладывал в контекст искать легкие решения, а не городить ебанутые костыли по типу Observable.zip(formDatabase, fromNetwork) хендлерить и кушать тонну говна.
Нахуй тебе контекст в адаптере?
Где слой между репозиторием и активити?
Где маппинг данных?
>Base Activity
>activateToolbar
>actiavteToolbarWithHomeEnabled
мы вам перезвоним.
А нахуя тебе тут бд, если стоит проблема синхронизации с сервером? В списке храни.
дык я и не продавать это собрался) просто хочу писать диплом на тему, которая мне нравится, и получить по результату что-то полезное.
Тут схема работы немого ебнутая. Есть сервер, который хранит объекты, типа ссылок на другие сервера и он очень медленно просыпается, хотелось бы чтобы все оперативнее работало. Плюс еще добавляю дополнительный флаг на объект, чтобы можно было в фаворитах держать. Для упрощения схемы конечно можно убрать добавление всего в базу, а добавлять только те, которые сам выбрал. Хочется на практике попробовать работу с репозиторием и несколькими источниками данных, может потом где на работе столкнуться придется с этим.
Список нам нужен, чтобы иметь некоторый кэш?
А, понял, ну тогда есть смысл. Хотя, ты с одной стороны говоришь, что тебе хочется быстрее, а с другой, что тебе хочется синхронизировать и иметь актуальную информацию. Проверь, не ставит ли сервер на свои респонзы Last-Modified заголовок (или ETag). Если ставит, то ты по нему можешь проверять актуальность. Хотя я хз, как ты эти ситуации будешь обрабатывать.
А так мне напрашивается вариант хранить в БД только значения "id объекта-твои дополнительные локальные значения к нему (твой дополнительных флаг фаворитов), а всю инфу всегда получать с сервера и хранить в списке. А при отображении ты показываешь отмапленные объекты из списка, к которым применяешь флаги из бд при наличии. Хотя, тут и SharedPreferences может быть достаточно, если только один фаворит флаг и всё. Хранить тупо массив айдишников любимых объектов, и применять на получаемые с сервера данные.
А то ты хочешь попробовать подход
>с репозиторием и несколькими источниками данных
который, как по мне, не очень подходит задаче. Эта фигня, как по мне, больше подходит, когда сервер вторичен. Например, когда он просто является облаком для пользовательских данных, и пользователь всё время работает локально, но может свайпрефрешнуть, и подтянутся удалённые данные.
>Список нам нужен, чтобы иметь некоторый кэш?
Скорее не кэш, а полновесный источник инфы. Да, он умирает со смертью приложения или с очисткой памяти, но тебе похуй, умрёт - перезагрузишь.
Прочитал в доке что Content Provider хендлерит данные из БД, но потом обосрался, когда мне сказали что его можно юзать для чего угодно, впрочем, я его и не юзал. Ни разу не работал с exoPlayer, камеру подключал через либу, ибо ебал я сидеть разбирать 400 строк говна из оф примера гугла.
Тебя это так волнует, что ты решил об этом написать? Если ты чего-то не использовал, значит тебе это было не нужно, очевидно.
Если ты знаешь назначение тех вещей, которые перечислил, но не применял их в продакшене, при этом выполнял поставленную задачу, в чем проблема? Главное что ты можешь и умеешь загуглить. А то что не знаешь на память и хуй с ним, по памяти тебе пересказывать придется только на собеседовании. На собеседовании часто спрашивают про все возможные хэш-мапы и три-сеты, но в итоге, дальше простой мапы в проектах не выходят. Ну и нахуя это знать, если в этом нету необходимости?
>Что такое "маппинг данных"?
Это данные, которые ты обработал после получения их из другого места (условно). Например ImageResponse -> Image. Image -> ImageEntity (когда пихаем в БД) И т.д.
Отличаться же они будут количеством полей, например. Или Image может содержать доп. методы для чего то.
Больше делается из-за того, что бекендеры дауны. А если не делать - земля пухом.
Как это чаще делается? Пишутся специальные хелпер-классы? Или в том же методе добавления в БД можно перегонять
>Image -> ImageEntity
>>34888
Тоже думал как синхронизацию сделать когда впервые услышал про offline-first на курсах Епама. В итоге забил это делать и оставил всё как есть: за методами репозитория прячется условие с ConnectionChecker и если сети нет, то беру данные из БД, если есть, то беру из апи. А в настройки вынес кнопку для чистки базы вместо синхронизации. Тем более апи достаточно бедное и без метода для удаления записей offline-first реализовывать ещё больший головняк.
Я это всегда делаю.
>Пишутся специальные хелпер-классы?
Пишутся, в models layer, например как пикрил. Тут уже надо клин читать.
> Или в том же методе добавления в БД можно перегонять
Хуй знает, в руме что-то вроде трансформации есть. Но я думаю это не так уж и важно. Просто перед добавлением в БД ебнул мап данных и поместил.
Ты можешь разные логеры настраивать, например в файл или еще куда. Плюс ленивое создание строк логов, если некому логировать событие, с этим уровнем, то не будет выискиваться тег, создаваться строка и тд.
> то не будет выискиваться тег
Вот это в тимбере меня напрягает. Нахуя каждый раз лезть в стактрейс за именем вызывающего класса, если можно это заменить на указание тега руками как в дефолтном логгере. Охуенно еще потом в логах на обфусцированные теги смотреть.
Зачем нужна хуйня на пикриле? Это же просто код ради кода. Мы же не в Индии, где за количество строк платят. Юзлесс, короче.
Нехуя.
Меняют потом серверную апишку, и ты болт сосёшь. А с маппингом ты просто меняешь логику отображения и снова на коне.
Или например апишка серверная вообще в процессе разработки, ты даже структуры её не знаешь, а ты уже пишешь код. Делаешь маппинг, туда синтетические данные подаёшь и маппишь. Потом апишка серверная появляется, ты меняешь синтетические данные на реальные серверные, подстраиваешь логику отображения и снова победитель.
> Юзлесс, короче.
Ну когда у тебя будет проект на 50к строк и бекендеры имбицилы тогда и поговорим.
Что плохого в BaseActivity?
Если я хочу везде добавить свой Context wrapper, сделать анимацию для переходов между активити или просто шарить тулбар, разве это плохо? Чем предлагаешь заменять?
Я хочу для отображения самих статей использовать webview, какие подводные камни? Мой коллега по проекту говорит, что Гугл агрится на широкое использование веб-вьюшек. Так ли это?
Альтернативный вариант это превратить эти статьи в любой другой отформатированный текст. Я могу и в вики-разметку и в Markdown всё перегнать, но чем мне всё это рендерить на самой activity?
>webview
Рендерится хуёво, грузится не сразу, джаваскрипт опасен. Говорят ещё, что работа с файлами не получится, но это не точно.
https://aptude.com/blog/entry/the-pros-and-cons-of-webview-mobile-app-development/
>>36712
У гугла до 2017го года не было нормального примера, архитектуры приложения, лишь в 2017 появились Architecture Components и MVVM из коробки. До этого (да и сейчас) каждый делал, как хотел, а от гугла было только onSaveInstanceState.
Что делали раньше? А ты удосужился прочитать архитектуру и как ее ели с 2012 года в шапке?
Бтв я сам не помню, но подозреваю изначальные мвп работали по типу положил айдишник в бандл и восстановил презентер синглтон ну и т.д.
На архитектуру гугл даже не смотри. И как только ты научился работать с презентером - иди изучать клин.
> джаваскрипт опасен
Его там не будет. Весь контент просанирован. Окей, а что есть для отображения текста, чтобы можно было делать текст жирным, наклонным, списки, HTTP-ссылки и всё такое?
> что есть для отображения текста, чтобы можно было делать текст жирным, наклонным
https://stackoverflow.com/questions/2116162/how-to-display-html-in-textview
да он просто выебнуться хотел
под линукс нет, поставил бы
В таких случаях сразу представляться надо, что, мол, ты питух, долбишься в очко, а то пацаны законтачится могут а тебя на тот свет отправят.
https://www.youtube.com/watch?v=wlef1VMc_oQ
Эй, пидор, обнови меня!
>>36801
>>36760
Спасибо за ответы.
> Что делали раньше? А ты удосужился прочитать архитектуру и как ее ели с 2012 года в шапке?
Да виноват, я ссылки с шапки прокликал, когда только начинал учить. Взял на заметку, что там есть и вот когда добрался до архитектуры, забыл совсем про это, а точнее про лекции там. Просто сам код примера MVP разбирал и оттуда тоже, а вот про лекции, как уже сказал забыл, лол.
> И как только ты научился работать с презентером - иди изучать клин.
Да я пока на MVP на слое Model подзавис, все используют слова из паттернов, как они хотят (по крайней мере, те примеры, что я смотрел).
Пока, то что понимаю, что надо ебашить repository, через него инкапсулировать, то как мы получаем данные и общаться с ним через интерфейс. Еще видел service, понятия не имею для чего оно. Больше пока не копал, надо еще многопоточку доразабрать, а то екзекьюторы, пулы потоков, и очереди сообщений сами себя не разберут.
шлейф от матрицы не слетел еще? у меня такой же, прочитал что скоро слетит
клавиатура не наебнулась?
Если сделаешь еще с примерами, описанные там (про А B и т.д.) и сюда выложишь - будет еще замечательней.
Зачем ставить линукс, если всё равно собираешься обмазываться зондами? Сидел бы дальше на винде или гейосе.
На линуксе программировать удобнее. Да и вообще привык, нравится, что большинство программ одной строчкой ставятся. Опять же винда с её анальными защитниками, антивирусами, обновлениями и прочим говном сосёт у линукса абсолютно по всем параметрам.
>зонды
Это ещё доказать нужно. А платформы удобные.
>линукс- это система где вы в пару строчек сможете решить проблемы которых нет на виндовсе
>Опять же винда с её анальными защитниками, антивирусами, обновлениями и прочим говном сосёт у линукса абсолютно по всем параметрам.
как там в 2006? линукс давно стал кривее, прожорливее и сложнее винды.
Я не собираюсь с тобой дискутировать по понятиям "кривее/не кривее", свою точку зрения как пользователь обеих платформ я уже высказал.
>Windows vs Linux vs macOS
>nVidia vs AMD
>Intel vs AMD
>2019
но не упрусь ли я в проблемы с API которых нет?
Это копия, сохраненная 10 марта 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.