Сидим и потеем перед дисплеем телефона в летнее время.Предыдущий тред тут:https://2ch.hk/pr/res/774895.htmlКоротко о главном:1) Мобильная разработка - это весело.2) Android Studio & Java - легитимный набор, проверенно временем и поддерживается гуглом.А также о неглавном:3) PhoneGap/Ionic/Titanium/ReactNative - имя им javascript, принципы у них разные, первые три попытка в кроссплатформенность одного кода, ReactNative проповедует другой подход, а именно написание разного кода но на одном языке. Популярность у них разная как и размер комьюнити.4) Xamarin - мультиплатформенная разработка. Попытка серебряной пули на C#. Довольно популярный. Куплено Microsoft. Теперь есть бесплатная версия.5) BugVM (RIP RoboVM) - идейный наследник ксамарина, а теперь уже и его часть но на Java. Учитывая что Microsoft убила RoboVM, встречаем опенсорсный BugVM.Отдельного упоминания стоят:1) Kotlin - Java от JetBrains, новый и стильный язык, куча синтаксического сахара прилагается, есть стримы и делегаты. Хотите писать на котлине? Добро пожаловать в JetBrains и Avito.Где брать инфу:Интернет-ресурсы1) http://developer.android.com/index.htmlНаша библия. Документация/небольшие примеры/гайды. Но только на инглише, но это плюс. Минус в том, что это все таки документация с небольшими примерами и гайдами и искать там реализацию чего-то хоть немного сложного нету смысла. Раздел Training как раз для старта.2) http://stackoverflow.com/Пользуюсь чаще чем первым сайтом. Можно найти практически все.3) Есть два вполне вменяемых русскоязычных ресурса. Для старта подходят очень даже.http://startandroid.ru/иhttp://developer.alexanderklimov.ru/android/Второй еще и условно бесплатный. Главный плюс - это русский язык, простые гайдики, но переводы классов иногда заставляют фейспалмить.4) http://habrahabr.ru/ - редко но метко, можно найти годные статьи по каким-то реализациям, или переводы с developer.android. Хотя чего тут объяснять.5) https://www.udacity.com/ - в треде очевидцы говорили что есть годный курс, но я лично не смотрел.Книги, их никто не читает, но все советуют только одну1) The Busy Coder’s Guide to Android Development - в отличии от остальных книг она обновляется, а так как ведро не стоит на месте а хуярит семимильными шагами, то я бы и не советовал другие книги.А теперь, так как заебали уже всех, гайд для:>"Я хуярил на делфи 5 лет назад а теперь хочу вкатится в андроид":Чтоб быстро хоть как-то вникнуть в джаву берешь и гуглишь javarush или codingbat.com.Можно Эккеля "Философия java" почитать.Или Хорстманн "Java. Библиотека профессионала" до 7 главы.Что тебе нужно понять в самой жабе.Энтри лвл.1) ООП - сам принцип нужно именно понять, так как ооп язык.2) Типы данных. Примитивы и ссылочные.3) Структуры данных - Массивы/коллекции - без них никуда. Полезно почитать про алгоритмы работы коллекций и их сложности.4) Дженерик типы, они как раз юзаются в коллекциях.5) Классы/интерфейсы и все вытекающие.Уже можно быдлокодить потихоньку и учить андроид параллельно с тем что ниже.Дальше6) Потоки ввода/вывода (streams). Не путать с тредами(threads).7) Threads, особо не нужно вникать(в java.util.concurrent можно не лезть, в ведре все равно особо не пригодится), но нужно понять как работает многопоточка и что такое Runnable.8) Прочитать про паттерны что-то. Начать с listener, adapter, singleton, iterator так как на каждом шагу. Ну и по накатанной.Уже сделаешь что-то нормальное.Дальше.9) Работа с Sqlite, нужна будет в любом случае.10) Работа с json.Привет клиент-серверка.Пишите в треде что добавить
>>790312 (OP)Я кстати на новую работу вышел, можете поздравить. Правда проект говно и написанный без мною любимых либ(даже ретрофита нету ебать). Но хоть деньги дают.Алсо, вообще уже не верю что можно попасть в годную команду с годным проектом.
>>790315Будешь на Котлине новый код добавлять все переписывать?
>>790320Хер с котлином. Проект выглядит словно его писали динозавры не читавшие ничего по ведру с 2013го.
>>790321Ну так можно же миксовать. Там экстеншенов добавить, а еще здесь null-safe оберточку - и вот уже не так противно.P.S.А вот обмазывание либами - это от лукавого (как в JS фреймворки - компенсация кривого языка).В котлине все решают расширения + свои DSL + ну может еще "чисты функции" (но это уже функ. изврат).
>>790315Поздравляю.
>>790315анончик грац тебя. раскажи что делают в офисах я же так понял ты в офис какой то устроился? программисты под андройд? я нюфаг который только учится и поетому очень интересно.
>>790348И вот ради этого надо было перекатывать :facepalm:
>>790348Бампаю вопрос. Другой анон.Работаю на джаве в офисе и представляю себе что делаю джависты в офисах- большие тырпрайз проекты жирным компаниям. Но ведь андроид- это небольшие приложухи. Что делают офисы- много мелких проэктов? откуда они берут заказчиков? вообще как то все слишком абстрактно в сфере андройда для меня...
Назрел вопрос: легко ли с веба (spring, EE) на разработку под андроид перейти? И стоит ли это того? Хочу фрилансить и делать свои приложения. Вообще реально на приложения под андроид заказы найти?
>>790363Бампаю.Вообще андроид для фриланса-хороший вариант? Тоже есть опыт с джавой.
>>790312 (OP)Как-то давно пытался сделать приложение на андроид, обмазался мануалами, начал кодить и понял, что это пиздец как сложно. Можно щас как-нибудь просто накодить как в бейсике простую программу?
>>790367Разработка под ведро — это простой макакинг. Проще некуда. Если ты это не осилил, то не лезь вообще в программирование.
Мда. Перекатились, называется.
>>790056ПОКА ТЫ ТУТ ЗА СВОЕЙ ДЖАВОЙ СЫЧУЕШЬ, ЕРОХИН-ТО КОТЛИН РАЗРАБАТЫВАЕТ https://github.com/JetBrains/kotlin/commits/master?author=erokhins
>>790388Я не собираюсь в программирование, хочу просто сделать программку на андроиде с уровнем знаний бейсика, это возможно?
>>790410Я не собираюсь работать инженером. Просто хочу сконструировать самолёт с уровнем знаний школьного учителя физики, это возможно?
>>790416Я не хочу сконструировать самолёт, я хочу слепить бумажный самолетик.
>>790410Возможно. Бери Delphi.>>790416Ты немного преувеличиваешь сложность программки на андроиде.
>>790326От лукавого это юзать апач клиент от которого даже Гугл отказался.>>790330>>790348>>790356Спасибо, вечером попробую расписать как оно на мой взгляд выглядит. Не хочу ш ку вариться об двачи на работе
>>790423> апач клиентИ не надо, есть же божественный URL и HttpURLConnection
пацаны,а подскажите туториалов по I/O и threads по джавесори за оффтоп
Привет, давно сюда не заглядывал. Что там, kotlin умер уже?
>>790466В андроид треде теплится. Видел сегодня вакансию на швабре где котлин был бы плюсом.
>>790430> URL и HttpURLConnectionКак там в 2011?
>>790524Не поверишь, JetBrains хочет свой язык разработать.Так же Java 7 скоро выходит, надеюсь быстро до Android доберется.
>>790541Какие преимущества у хттпурла перед окхттп?
Сап, хочу сделать приложение, в котором, например, есть база данных с информацией о каком-то товаре, и чтобы после нажатия на товар перекидывало на активити с информацией о нем. Но ведь приложение будет весить очень много, если хранить все активити для каждого товара из базы данных. Как можно сделать, чтобы активити с информацией выводилась из базы данных только с подключением к интернету? Как-то подключать базу данных к серверу или ещё как-то? У большинства приложений такое есть. Подскажите пожалуйста, в какую сторону копать?
>>790574Никаких. Более того — хттпурл это и есть окхттп, только всегда устаревший и сильно кастрированный.
>>790574По секрету скажу, в okhttp ты не получишь никаких преимуществ если1) специально не настроишь nginx на HTTP 2.02) раздобудешь SSL сертификаты (советую бесплатный https://letsencrypt.org/ )Еще у okhttp баг/фича что он требует последней версии OpenSSL и приходится nginx из сорцов собирать.А когда настроишь (и убедишься по логам что HTTP 2.0 работает), то очень удивишься что это не дало видимого ускорения.
>>790463Джава умерла. Учи js.
>>790596Но в нем удобные билдеры и gzip ихэз коробки, вместо изобретенных мною велосипедов-билдеров хттпурла и gzip.
>>790602Пруфы?Пришлю знакмому тимлиду-вот он охуеет.
>>790612> Более того — хттпурл это и есть окхттп> gzip ихэз коробкиКто тебе сказал что в URL нет gzip?
>>790619Лучше под дверь ему насри. Тогда он охуеет ещё больше.
>>790622Ванговал тралля сразу.
>>790620А про остуствие удобных билдеров и интерсепторов тактично умолчал, ок.
>>790649> А про остуствие удобных билдеров и интерсепторов тактично умолчал, окСтоит их упоминать? На Kotlin такой DSL/билдер можно написать строк за 20-50 и столько же на интерсептор (если я буду его вообще юзать)
>>790671> Можно написатьВ этом тоже есть проблема, ведь место унифицированного интерфейса сделанного в либе, мы получаем тысячи решений на каждом проекте свой.
>>790671Иди нахуй со своим котилином и философией НУ И ЧЕ, МЫ САМИ ЭТО НАПИШЕМ
>>790683А на другой стороне мы получаем >>783521 (OP)Когда каждая функция берется из готовой-либы, но мы же не JS-макаки правда ведь, анон?>>790684А в чем проблема, если на современно языке это займет в 5 раз меньше кода?Тем более в билдерах нет ни какого откровения/сложных алгоритмов.
minSdkVersion 17Чому она доебывает меня с деприкейтед методом? Ведь именно он вызывается на моем 4.2. Может я что то не делаю?
>>790711> в билдерах нет проблемыПроблема только в потраченном на них времени.> мы же джс макакиА ты дохуя не макака. 90% приложений типичная гуй оборетка вокруг рестопараши, и нет никаких проблем в использовании очереденой либы, которая ускоряет формошлепство.
>>790749Не используй венгерскую нотацию.
>>790749Ты юзаешь suppert-v4 fragments?Если нет, то переходи на них.Если да, то можешь спокойно перегружать onAttach(Context).Как видишь в базовом классе (пикрил) один фиг вызывается onAttach(Context), а для совместимости он еще вызывает старый метод.
>>790770Что за бред?
>>790865private Anon mStupidAnon = getPostAuthor(790865);
>>790890Я верю, что ты очень хуёвый шутник; я требую пояснения, почему так делать нельзя.
Ребзи, нюфаня делает калькулятор. При делении любого числа в типе дабл на 0.X(X- любое, кроме 0) программа крэшится.Куда копать?
Как сделать разметку как на скриншоте? Чтобы RecyclerView с изображениями был "поверх" основной разметки, от края до края экрана?
>>790997Фреймлэйаут, в нем карточка и потом отдельно ресайклер в нем же. Ну или релатив.
Интересует, есть ли здесь те, кто имеет работу, а не хочет вкатиться/перекатиться.Чем конкретно вы занимаетесь?Тысячи миллионов приложений уже написано, зачем нужен еще один модный органайзер/мессенджер?Кто и за что вам платит деньги?Как нашли работу? ваканский джунов очень мало
>>791035двачую
>>791035Меня только сегодня взяли на джуна.Вакансий действительно мало, но иногда находятся.
>>791053Кулстори запилил бы про опыт, поиски, собеседование, чего же ты.
>>791035А по поводу того, чем буду заниматься...Компания работает с одним большим проектом уже давно, как я понимаю, постоянно добавляя новый функционал и исправляя старые баги. То есть речь не о нескольких маленьких приложениях.В фирме есть Android, iOS и WEB отделы, как я понимаю.
>>791059Есть небольшой опыт работы, но с другими ЯП, Java и Android больше как хобби, есть несколько учебных проектов, очень простых, уровня уроков с startandroid. Однако знаний хватило на то, чтобы выполнить тестовое задание (получение и отображение данных с одного API, вывод списка и экрана с подробной информацией). После выполнения задания позвали на собеседование, где задавали вопросы конкретно по заданию (про адаптеры, плюсы ретрофит и т.п.).Вообще я считаю, что мне повезло найти подобную вакансию. Вообще, джунов ищут компании, которые отчаялись найти опытных разработчиков в городе, как я понимаю.
>>791029Что-то это не разу не ответ на вопрос.
>>790913http://jakewharton.com/just-say-no-to-hungarian-notation/
>>791035ОП, он же я как раз пошел на новую работу, позиция мида. Ебет то что и всех прогеров, чужой кривой код а не кривым он быть не может, если там что-то сложнее листа, ебанутые заказчики которые в ротяку ебали материал дизайн и заставляют писать хуйню, сроки за которые ты должен делать кастомные вьюхи и в результате тупо ищешь либы.Сейчас у меня еще и дико жопа горит так как нужно впиливать новый функционал в проект который я вижу второй день, а то и меньше.Такое в общем.
>>791110Ой блять, вортон хоть и норм мужик, но он уже зазнался видимо, пускай лучше расскажет как интерфейсы называть.Вообще после такой статьи у меня впечатление словно у него максимализм какой-то. Все хуевое везде он сделает лучше.
>>791134Причём тут зазнался? Он ведь не просто написал ДЕЛАЙТЕ КАК Я ГОВОРЮ, он привёл аргументы. Чего, кстати, не сделал ты.
>>791133> Сейчас у меня еще и дико жопа горит так как нужно впиливать новый функционал в проект который я вижу второй день, а то и меньше.А что не так? Ты собирался два дня просто сидеть и читать код? Серьёзно? Как ещё ты можешь узнать проект, если не получишь реальное задание? > не кривым он быть не может, если там что-то сложнее листаНе слишком ли категоричное заявление? Если отовсюду воняет говном, то может быть это ты обосрался? > Такое в общем.Какое?
>>791110Wharton конечно идет нахуй ибо он ни фига не авторитет.Но в принципе согласен с тезисами.олдфажный android-developer
>>791110Я не вижу аргументов в его сообщении, я вижу "ящетаю". По сути он говорит, почему допустимо отказаться, но не говорит, почему это делать необходимо. Следовательно идёт нахуй.
>>791035> Тысячи миллионов приложений уже написаноА эти кукареки безработного дауна-ниосилятора или школьника.Да, представь работаю на постоянку удаленно и даже договорился разрабатывать на Kotlin.Программы пишу разные от брендованных "менеджеров личных дел" до игр на libgx.Зарплата в USD.
>>791214P.S.> Как нашли работу?Первую работу (вообще без опыта) нашел на сайте вакансий четыре года назад.Сейчас джуны НЕ нужны.
>>791203А кто авторитет?
>>791216Ога, всегда были нужны, а сейчас стали резко не нужны.
Cап, погромисты. Подскажите, можно ли начать зарабатывать на андроиде с фриланса? Работаю в другой сфере. знаком с джавой. Часто слышал, что фриланс-это хай уровень, что хуй получится зарабатывать, не имея опыта в офисе и прочее. Время учить много, но работу не хочу менять.
>>791224Кто не понял, тот поймет
>>791140>А что не так? Ты собирался два дня просто сидеть и читать код? Серьёзно? Как ещё ты можешь узнать проект, если не получишь реальное задание? Могли бы дать баг фиксить первую неделю, на багфиксинге проект узнаеться чем при создании новых функций.>Не слишком ли категоричное заявление? Если отовсюду воняет говном, то может быть это ты обосрался?Да ты открой любую из гоярчолюбимых либ и почитай сорсы. Везде где есть реализация какой-то логики без комментариев - нечитаемая хуйня на которую тратишь по несколько часов.Понятно что это может быть откровенно не говнокодерство, но это и не твой код, потому анальные боли обеспечены. (плюс везде есть куски которые писались на скорую руку и планировали рефакторить)>Какое? Смешанные чувства от новой работы.
>>791138Какие блять аргументы для код конвеншена? Ты же понимаешь что это все хуйня.>>791210Этого двачую.Доебаться до приставки "m" в контроллерах то еще днище. Я
>>790363>>790364Конечно легко, та же жаба ведь!мимо-java-ee-макак
>>791248Кекнул.На ЕЕ можно рубить бабки гораздо проще. Да и вообще жирно про "ЛЕГКО"
>>790312 (OP)Господа, планирую перекатиться с 1С НЕ ПОГРОММИСТ, ГОВНО, МОЧА, ЖОПА, ХУЙ на Жабу и ведроид соответсвенно.Соотвественно реквестирую дельных и простых самоучителей, каналов на ютубах, торрентиков и прочего.Какие языки будут востребованы в ближайшие годы (например тотже Kotlin), в какую сторону копать?
>>791250А чего там сложного, я за пару дней чтения dev.android уже слепил что-то рабочее.
>>791251Сейчас тебе насрут в уши, что джава умирает.Но а вообще, все есть в шапке-оттуда и читай, но не стоит на джавараш, имхо.Как по мне, путь в джаву и ведроид немного разные. ВО втором практика есть в шапке, а в случае с джавой я, например, вечно гуглил лабы студентов-айтишников.А хуле в 1с не остался? Бабки же платят неполхие.
>>791255Ну у тебя, наверное, был неплохой бекграунд в джаве?С нуля, я имею ввиду.
>>791251А если ты совсем начинаешь, то смотри, правда, в сторону жс.
>>791251> KotlinНу раз просишь, тогда лови, няш.https://kotlinlang.org - Основной сайтhttps://try.kotlinlang.org - Online редакторhttps://habrahabr.ru/hub/kotlin/ - HUB Habrahabrhttps://habrahabr.ru/post/279667/ - Ссылки на доклады и подкастыhttps://habrahabr.ru/post/278169/ - Интересная статья "Как себе выстрелить в ногу в Kotlin"http://kotlin.link - Сборник ссылок по Kotlin (на английском)https://www.reddit.com/r/Kotlin/ - Reddit (тут тоже можно узнать новости и ссылки на интересные статьи)Видео с Youtube:https://www.youtube.com/playlist?list=PLVe-2wcL84b8pj7VOoa-6L9Q0sDjibdoFКонкретно под Android:https://www.youtube.com/watch?v=VU_L2_XGQ9shttps://www.youtube.com/watch?v=dJscNr1silY
>>791251>в какую сторону копать?Начинай копать, Василий.
>>791256Платят примерно как погромистам на жабе,но соль в стране и последних тенденциях, что возможно стоит отсюда съебнуть. План /б/ иметь под рукой, так сказать.
>>791259Пасибо ОГРОМНОЕ :3
>>791257Ну с нуля-то естественно, анончики выше же хотят с веб джавы перейти.
>>791261Пардон, соль-съебнуть с андроида? Почему?
>>791261А, ты про 1с, понял.
>>791261>>791265Из россии. А за бугром 1с не очень востребована, от слова совсем.
>>791256Подскажи направления которые в ближайшем будующем будут востребованы и оплачиваемы?
>>791268Мнение СУГУБО личное.WEB и мобилки. И там и там есть 1)js2)java, c#Как понимаешь, выбирая первое, ты не прогадаешь.Я мало что знаю про котлин, скалу и прочее. Но знаю многим синьоров, которые советуют учить 1.
>>791268Бля, с утра пока туплю. Еще big data. Я бы вот так написал.1)js2)python3)java, c#Джава не очень для веба. Может, но немногие ее выбирают. Шарп же для мобилок, имхо, не очень.Ну а питон-просто заебись. Мне очень нравится его простота и применимость в ML.
>>791268Но не воспринимай мои слова на чистую монету. ПОчитай статейки и лучше зарубежные. Сам я как хобби учил джаву, работал в области больших данных, сейчас перешел в it-консалтинг и вот подумываю учить андроид.
>>791272>>791271>>791274Большое спасибо за наводку, буду думать)
>>791271> востребованы > c#Смешно.
>>791277> ) Ах ты сука! Кто тебя сюда пустил?
>>791287Я из /b/ протек, не серчай ^пидр^ няша
>>791285Ну да, я считаю, что в БУДУЩЕМ (~1 год) работы на шарпе будет еще больше.
>>791289ИЗВИНИ, СКОБАЧКЕ ОТКЛЕИЛИСЬ )))))))))))))))))))))На самом деле спасибо за пояснения ребят, чуть позже еще поспрашиваю, наверн.
>>791293Ну только, мы надеемся, что не будешь злоупотреблять терпением и обратишь внимание на название треда в котором ты, а потом найдешь нужный <3
>>791271>WEB и мобилки. И там и там есть >1)jsЕсть гайды по скрипту именно в сторону мобилок?
>>791298В их треде погляди.
>>791108Ты охуел? Может мне за тебя написать? Смотри схему блять. http://pastebin.com/N1cjB4S9
>>790781>v4Оказывается это рекомендуется и часто даже необходимо юзать саппорт вместо натива. Вплоть до апи21. Удивительный мир андроид-девелопмента
>>791415Не до 21, а всегда. Ибо обновить support-library быстрее и проще, даже если вендор перестанет выкатывать обновления. Это же не iOS, где телефон через два года планово превращают в кирпич новыми обновлениями.
Как лучше устроить отображение/скрытие кнопок в тулбаре в зависимости от текущего фрагмента?
>2016>Не пользоваться божественным Xamarin.FormsКакие вашие оправдания?
>>791498Пошёл нахуй, пидор. Ненавижу тебя. Сейчас пишем проект на ксамарине. И это такой пиздец, как же я его ненавижу. И тебя, пидораса. Какие же говноеды его проектировали? По сравнению с ним даже блядь WinAPI - красотища. Пиздец, блядь. Пиздец.
>>791453> Как изменить/расширить функционал ???ViewСоздаешь My???View класс и наследуешь его от ???View, в нем добавляешь/изменяешь функционал вью как тебе надо.>>791498> Xamarin.FormsНадо будет в следующим проект попробовать (если он будет).Слишком много времени мне лень занимает отдельный UI для Android/iOS когда делаешь на Xamarin.Native
>>791505Пиздец. Уж лучше бы признался, что говно на вкус попробовать хочешь. Мне было бы менее противно с тобой в одном треде сидеть.
>>791508Болезный, ты о чем?
>>791505Ты ещё и тупой? > Надо будет в следующим проект попробовать (если он будет).
>>791515Да ты же просто даун-максималист-залетный из /b/.(Включаю режим игнорирования.)
>>791525Сказал мне мелкомягкий подсосок.
>>791529View по id уже нашел?
>>791544Ксамаринодауны не могут data binding или butter knife?
>>791555Предпочитаю anal plug. Идет в комплекте с Android studio.
Есть FrameLayout в котором я хочу менять фрагменты по нажатию на табы.Как бы мне создать инстансы всех используемых фрагментов заранее, но так, чтобы они не отрисовывались (были спрятаны) по умолчанию?
Как понять свой уровень? JuniorMiddleSeniorКакие критерии?
>>791807Junior ты
>>791784Никак. То есть, мы можешь создать инстансы фрагментом, но их методы жизненного цикла (onCreate() и пр.), где ты делаешь всю инициализацию, не будут вызваны, пока фрагмент не будет показан.Если надо, фрагменты заранее инициализировать, используй ViewPager
>>791807Junior — "Я много знаю"Middle — "Я многого не знаю"Senior — "Мне похуй"
>>791810Мы вам перезвоним.
>>791812Ninja - "Мы вам перезвоним"
Что будет если я сделаю write в базу, в то время когда в другом треде происходит TransactionNonExclusive в ту же базу? WriteAheadLogging включен.
Подскажите нюфане аналог устаревшей Gallery, чтобы помимо фото там же отображалось и видео, если такое конечно существует
>>791812Мне нравится такая градация)
Где биндить клик ивенты и контекстное меню на элементы ресайклера? В конструкторе вью холдера или внутри onCreateViewHolder?
Я как-то сломал панель монитора. Нет фильтров в логкате и вообще странно. Как починить?
>>791958Починил.
>>791784Делаешь add всех фрагментов, и переключаешь методами show и hide.
>>791886Будет хорошо.
>>791898Пиши сам на фрагментах и пейджере.
Аноны, помогите мне найти пикрелейтед бесплатно без регистрации и SMS, пожалуйста.Только вкатываюсь, поэтому, если есть аналоги получше - прошу совета.
>>7920331. Нет такого понять Kotlin для Andorid, есть несвязанные понятия Kotlin и Android1.1. Kotlin учишь на https://kotlinlang.org/ , >>7912591.2. Android учишь на https://d.android.com/training/index.html и по OP посту2. Есть у меня купленная https://www.manning.com/books/kotlin-in-action - книга написанная самими разработчиками.Это просто 99% переложение https://kotlinlang.org/ , так что книги по Kotlin НЕ нужны.Тем более язык сейчас быстро развивается, там точно не будут описаны async/await и др новый фичи
>>792058d.android.com это же мутное гумно. В каждом втором ответе на стековерфлоу есть упоминание навроде "официальные источники гугла по этому вопросу очень невнятны / слишком кратки".
Анончики, подскажите как обеспечить секюрность в случае приложухи, которая использует базу данных на удаленном сервере? Как чекать ддосы там всякие, и как беспечить доступ к базе только моей приложухе, чтобы злоумышленник не подключился к моей базе со своей самописной приложухи?
>>791961Расскажи как починил.
>>792083Никак. Можно сделать на сервере метод получения ключа при первом запуске приложения и в дальнейшем общаться с этим ключом и блокировать подозрительную активность на нем. Следить за слишком частыми запросами нового ключа с одного адреса.Можно сервисами антидудоса воспользоваться, если только этого опасаешься.Наверное, можно соорудить какой-нибудь механизм генерации на клиенте ключа связного с подписью приложения и засунуть его обфусцированным или бинарником во внутрь приложения. Такой ключ должен будет иметь короткий жизненный цикл. Черт знает насколько такое возможно и сколько времени бы заняло. При большом желании злоумышленник все равно разберется.>>792115Так же как и сломал. Потянул таб с надписью логкат вниз, он стал делить панель с монитором ресурсов, покликал туда-сюда вокруг, потянул заголовок панели логката обратно на табы и все вроде стало на свои места.
>>791811>>791784>>792019У меня сейчас сделано на базе ViewPager.Не знаю насколько имеет смысл все фрагменты разом подгружать (у меня их 4).В одном из них происходит выборка данных из базы, которая может длится ~10 секунд при помощи AsyncTask.В другом находится GoogleMap, которая сама по себе некоторое время грузится, так еще и надо маркеры из базы загрузить.При этом не имеет смысл ресурсоёмкой отрисовкой заниматься в тех фрагментах, которые сейчас невидимы.ViewPager кажется слишком сложным решением для переключения 4-х фрагментов без свайпа.
>>790312 (OP)Кто-нибудь использует Qt? Есть ли ему место в андроид-разработке? Какой профит он предоставляет?
>>792312Отвечу сразу - профита мало.Разработка под андроид полна граблей и лишние прослойки здесь только добавляют новых граблей.Используй Java или Kotlin.
>>792312ахахах
>>7923122ГИС на Qt написан, например. Для большинства приложений нет никакого смысла использовать Qt.
Не, ну вы видели? https://code.google.com/p/android/issues/detail?id=35013
>>792416За последнее время много ебаной хуйни они сделали, к примеру такой баг, который еще ращ доказывает, что отключаемые разрешения это хуита редкостная.https://code.google.com/p/android/issues/detail?id=213120
>>792058Большое спасибо!
>>792416Я бы сказал что это фича и вроде бы давно известная ("баг" 2012 года).Если я отключаю нотификации, то и не хочу видеть тосты.
Народ, а как бы мне найти список типа ListView, в котором можно пальцами менять элементы местами?
Есть ли способ автоматически скачать все зависимости, которые подключены через gradle и скачиваются со всяких репозиториев, чтобы использовать их локальные копии?Это же пиздец какой-то - когда нет интернета - не соберешь проект.
Аноны, а где вы сетевые вызовы на Rx делаете? Прямо в activity/fragment, нет ведь? IntentService? Свой сервис-синглтон?
>>792494Включи offline work в найстройках Gradle.
>>792495Просто в отдельном классе бизнес-логики. 1) Качаю данные, сохраняю в базу, кидаю бродкаст.2) Слушатель просто берет данные из базы.И ни каких колбеков на активити из "долгих web операций (1)".
>>792506Но ведь тогда у нас будут проблемы с жизненным циклом, разве нет? Если во время выполнения запроса пользователь перевернет телефон, activity пересоздастся, сетевой вызов будет создан еще раз.> ни каких колбеков на активити из "долгих web операций (1)"Это да. Но если ты в свой класс бизнес-логики передаешь Context (а ты передаешь, раз пишешь в БД и кидаешь бродкаст), то у тебя ведь и есть ссылка на Context (т.е. на Activity), разве нет?
>>790959Копай в лог, который тебе выводят в студии в окошке снизу.
>>792496О! Спасибо.
>>792521>сетевой вызов будет создан еще разНо так ты вызывай только при первом показе, когда в onCreate() передается null>есть ссылка на Context (т.е. на Activity), разве нет?Нет, вся "бизнес-логика" и ViewModel'и написаны в отдельном модуле на чистом Java SE Kotlin.Для работы с базой юзаю самописный DSL поверх OrmLite он не привязан к Android
>>792506А если запрос не прошел? Кидаешь броадкаст с ерором и выводишь на активити?Почему просто в контролере не делать асинхроную rx цепочку(запрос->сохранение в бд->респонс для вывода на екран=ерор для вывода на екран). Правда там с лайфсайклом поебатся нужно будет + ивент бас или ресивер понадобится если есть запросы не связаны с юаем.
Котаны, только что посмотрел историю крашрепортов, нашел там такое:В одном support.v4.Fragment в методе onStart подписываюсь на LocalBroadcast, а в методе onStop отписываюсь.В методе BroadcastReceiver'a onReceive обновляется один элемент UI и там вызывается getResources();Так вот, здесь то оно и упало, с вот таким экспешеном:Fatal Exception: java.lang.IllegalStateExceptionFragment DispFragment{f733e7b} not attached to ActivityНо как так то? onStart вызывается позже, чем onAttach!
>>792347>>792313Спасибо.>>792319И тебе.
>>792676> в методе onStart подписываюсь на LocalBroadcast, а в методе onStop отписываюсьНеверно. Нужно делать это в onResume и onPause соответственно.
>>792613> в контролереЧто ты подразумеваешь под контроллером?> с лайфсайклом поебатся нужно будетВот именно. Поэтому я и спросил, кто как делает
>>792902Почему?
>>792490На сколько я знаю, только через сторонние либы.
>>792490>>792963Забудьте про ListView, используйте RecyclerView.На нем, правда, перетаскивание элементов еще сложнее реализовать, лол
Какие вы знаете (русскоязычные и англоязычные) тусовки android-разработчиков?Какие-нибудь форумы, группы, чаты и т.д., где можно пообсуждать общие вещи (которые не подходят в формат Stackoverflow), показать свой код, посмотреть на чужой и т.п.Кроме этого треда и 4пда
>>792977> RecyclerViewЕсли бы еще ему из коробки сделали группировку с экспандом, а гуглы как всегда НУ ЭТА, ВЫ САМИ ДАВАЙТЕ)))Да и мне не нравится, что декоратору нельзя задать зависимость от элемента списка.Но это так, размышления.
>>792963>>792977>>792993>>792490Сделал на RecyclerView.Не особо сложно, делал по этой инструкции:https://medium.com/@ipaulpro/drag-and-swipe-with-recyclerview-6a6f0c422efd#.c4dh30clk
>>793003Точнее по этойhttps://medium.com/@ipaulpro/drag-and-swipe-with-recyclerview-b9456d2b1aaf#.qzvk74fbp
>>792993> группировку с экспандомВ смысле?> декоратору нельзя задать зависимость от элемента спискаПравильно, это ж будет нарушения принципа единственной ответственности.
>>793007> Правильно, это ж будет нарушения принципа единственной ответственности.Ну и нахуй он тогда нужен? Декарировать списки из примеров?> В смысле?ExpandableListView
>>792912You should register onResume yes, onResume() is always called on the activity being displayed (it is the last method called before your activity appeares (developer.android.com/reference/android/app/Activity.html) if you only register onCreate() and unregister onPause(), then the next time the activity is brought to the foreground, onCreate() will not be called again and then it will not register the receiver again. And yes I mean INSTEAD of, do not do it onCreate()
>>792912As onDestroy() is not guaranted to be called you shall use onPause() to deregister. Consider lifecycle of your broadcast receiver: Do you need it to be active, only when your activity is in foreground? Then use onResume() / onPause()
>>792058очень глупый вопрос - kotlin надо учить поверх знаний java ?
>>793055Да.
>>792987бамп
>>793055Котлин можно учить, лишь когда ты хорошо знаешь Java. Если речь про Android разработку, тогда еще необходимо знать Android SDK. Иначе так и будешь ничего-не-понимающей-макакой.
>>792904Я спросил этого >>792506 как он в своей, представленной нам, архитектуре делает обработку ошибок запроса и как у него реализованы обновления данных в бд и подальшее их отображение на юи.
Оракел не сдается http://www.siliconvalley.com/ci_30106378/oracles-9-billion-fight-google-continuesГугловский План Б "переходим на Swift" пока не отменяется.
>>793055Не надо.>>793093И Java не надо. Достаточно знать С++.https://developer.android.com/reference/android/app/NativeActivity.html
>>793187>>793055Лучше вообще начать с Хаскелля, тогда никаких проблем не будет: https://github.com/neurocyte/android-haskell-activity/blob/master/src/HaskellActivity.hs
Предполагается, что я должен самостоятельно менять туда-сюда PreferenceScreen'ы и держать их стек?
Не догоняю, они задепрекейтили addPreferencesFromResource и теперь каждому самостоятельно возиться с PreferenceScreen'ами?
Господа, вот интересная тема - https://www.reddit.com/r/androiddev/comments/4qwgj2/professional_android_devs_describe_your_day/Я хотел бы услышать как проходит день местного ведроёба. Хочу вкатиться. Есть вакансия. Пытаюсь представить как это будет. Тот же макакинг.
>>793414Мамку твое ебу целый день, азаза, безработный ты полуебок
>>793418Не угадал.
>>793414Как приторный ответ там. Смачно проблевался.
>>793423>СмачноСмак - вкусПроблевался со вкусом
>>793011вот ебусь ща реализовываю экспандбл ресайкл, какой-то ад. И ладно бы если с нуля бы делал, так у меня задача апк которая была сделана под апи 9, обновить под материал, и по тз надо все адаптеры/листы переделать и вот один из листвью оказался экспандбльным. Так там вся логика завязана на определении кто родитель и оттуда пляска с ид итд. Вобщем пытаюсь этот костыльный ресакйл сделать но пздц напрягает
>>793471Чем тебе не подходит expendable-recycler-view c big nerd ranch?
>>793486я не он, но добавить туда хедер/футер похоже тот еще геммор
>>793405У тебя просто не должно быть больше одного PreferenceScreen'а
>>793516Ште блять?https://developer.android.com/guide/topics/ui/settings.htmlhttps://developer.android.com/reference/android/preference/PreferenceFragment.html
Доброго времечка, уважаемые аноны.Я великовозрастный-23-лвл и работаю в области немного далекой от проганья (erp-системы). Четко поставил цель научиться андроиду, раньше учил джаву, но это давно и не правда. Так вот. Попал на дистанционное (бесплатное) обучение джавы, купил Эккеля, но у меня есть пара часов в будни после работы и выходные. Понимаю, что сначала надо освоить джаву, а только затем в Андроид. Про то, что после обучения войти во фриланс-молчу, это же супер сложно, так?Так вот, насколько реально таким образом, по-вашему, обучиться вашему искусству?
>>793519Я тебе с точки зрения UX говорю, а не с точки зрения реализации, дурачок.
>>793585Берёшь и обучаешься, вместо того, чтобы тупые вопросы на дваче задавать. Только так, и никак иначе.
>>793592Ахуительные советы от гуру дизайна. Можешь оставить их при себе, я спрашивал конкретно.
>>793598Конкретно я тебе могу только хуй за щеку засунуть, дурачок.
>>793585я вот не пойму, хули все лезут в этот андроид? лезли бы в ios, там же платят больше и все такое. Нет блять, лезут в этот андроид
Google aims to train two million Indian developers on Android platformhttp://economictimes.indiatimes.com/tech/internet/google-aims-to-train-two-million-indian-developers-on-android-platform/articleshow/53152243.cms
>>793770>>793766Таки пора съебывать на иос, но пиздец как лень все с нуля учить.
>>793770Как попасть в это число?
>>793766Не нужен макбук и Iphone за дохуя килорублей.
>>793776Ты не идус, тебе — никак.
У меня дизайн в Sketch для iOS, как могу адаптирую.Может есть какие то сервисы или программы что бы я ему дал пнг а он мне нагенерил ее (на пример) для тулбара под разные dp?
>>793792Я этим режу.https://github.com/asystat/Final-Android-ResizerНо у иоса же xhdpi, остальные будут апскейлом.
>>793792Там же из скетча можно экспортировать в нужном тебе размере-формате сразу.
>>793795Спасибо, Скетч векторный>>793799Да, так и сейчас и делаю
Может есть распространенный кейс на случай когда нужно, в зависимости от текущего фрагмента, показывать и скрывать элементы меню (Toolbar)?
>>793805> Скетч векторныйЭкспортируй сразу в вектор если есть возможность, ебля с dpi нинужна.
>>793814Ну так просто делаешь у каждого фрагмента своё отдельное меню. В чем проблема?
>>793828Векторы еще довольно плохо поддерживаются андроидом. Можно поставить только в ImageView их, разве нет?
>>793832Да, есть некоторые проблемы, и мне приходилось вручную править svg. Но вставлять можно куда угодно, при этом есть даже 2 режима svg, когда это настоящие svg и рисуются на канве, и когда студия тебе генерирует png с этих svg под все dpi.
>>793805>Скетч векторныйА конвертнуть вектор в пнг религия не позволяет?
>>793864>студия тебе генерирует png с этих svg под все dpiУ меня с таким подходом от этого на каких-то картинках в рантайме падало лол. Причем не на старых системах, на старых было белое пятно, а на новых падение с IndexOutOfBoundsException где-то внутри VectorDrawable.
Сука, что они сегодня сделали со шрифтами?!
>>793902Нашел, как починить (если вдруг кому тоже нужно): https://userstyles.org/styles/130075/github-old-fonts
>>793902Разуплотнили.
Господа, грешно ли вместо фрагментов экранов инфлейтить их компоновку в ContentFrameLayout?Я упростил себе жизнь. В одиночку я могу городить любые архитектуры, но вот собираюсь устраиваться в серьёзную контору, там уже есть ведроёбы, не обоссут ли меня?
>>793971Обоссут. И правильно сделают.
>>793972Lyft отказались от фрагментов в пользу похожего подхода, запилили Scoop.Знаешь, есть утырки, которые пытаются обсыкать за MVP, мол, оверхед, ко-ко-ко, встроенный MVC, пок-пок.
>>793990Ну ты еще Square с их Flow вспомни. И что? То, что подходит двум компаниям под вполне определенные приложения, не значит, что подойдет хоть куда (как бы сильно этого не хотелось их авторам).
>>793994>>793990А для каких типов приложений скуп и флоу подходят? Куда они могут НЕ подойти, кроме игра и подобного? Общего толка же фреймворки.Просто думаю на чем в будущем приложения базировать, какой-то из этих двух или есть еще нюклеус.
>>794011> для каких типов приложений скуп и флоу подходятДля хуёвых приложений.
>>794012Да ладно.
>>794012Веско.
>>794011> Общего толка же фреймворкиТебе Android SDK мало? Где ты и так по сути не приложения, а плагины для системы пишешь?https://habrahabr.ru/post/253297/
>>794015Я не знаю мало мне его или нет. Я только на нем и пишу, альтернативы еще не пробоал. У сдк есть туева куча проблем, о которых не написал только ленивый, с которыми приходиться бороться каждому из приложения в приложения, таская за собой велосипеды и костыли. Эти обертки над обертками появились, уверен, не от хорошей жизни.Плагины для системы, это можно сказать много про что, веб фронтенд приложения, кути приложения, etc. ведь там тоже уже обо многом до тебя позаботились.Статья хорошая, но много чему можно возразить. Там в комментариях вполне обмусолили.
Может кто видел реализацию LayoutManager в виде деки карт?Нашел только закрытую у каких-то барыг (телерик) но они не открывают реализацию.
>>794055На гитхабе было
>>794056Я действительно долго искал но нихуя.Не поможешь?
>>794059Я не помню название. Пару недель назад видел
>>794061Ну хоть попробуй вспомнить, пожалуйста. Хоть по каким тегам гуглил в тот момент?Поможет все.
>>794061И это точно лейаутменеджер был? Или просто реализация колоды?
>>794063Это была просто реализация колоды вроде бы. Ищи в ссылках еженедельных статей по разработке на мобилки на хабре. Там ее и видел.другой анон
>>794066У меня пк такой
В рот ебал плюсы и ндк.
>>794075А я шарп и ксамарин
Что тут, пиарщики от intellij форсят свой котел?
>>794077Их я тоже ебал.
>>794059Напиши сам. На котлине.
>>794083Лучше на Хаскелле.
>>794081Может, групповуху замутим?
>>794083Меня отпиздят на работе, если я буду лейаут менеджер писать пару дней, сам спизданул маленький естимейт теперь ябусь.
>>794086> сам спизданул маленький естимейт Тогда страдай. Сам долбоеб.
>>794077>ксамаринЗАмарин
>>794088Залупа
>>794087Там таска легкая, просто более правильно делать через ресайклервью с кастомным лейаут менеджером.А так прийдеться пиздячить фрагмент и логику которую прочитаю только я.
>>794091Ты говно, если твой код можешь читать только ты
>>794095В этом и была ирония долбоеб. Ну иди почитай сорсы лейаут менеджера без разъяснений и гайдов, а потом ругайся, хотя инбифо индусы.А вообще велосипедить подобие листвьюхи пиздец как не хочеться.
Анон, какую ORM лучше использовать?Написал пару приложений используя стандартный execSQL.Хотелось бы что-нибудь схожее по функционалу с EntityFramework.
>>794097Все верно. Ты говно.
>>794103Realm.
>>794103Лучше не использовать.
>>794109Это не orm, даун.
>>794111Мне похуй.
>>794112Я же говорю - даун.
>>794111> Realm is a mobile database: a replacement for SQLite & ORMsОтвет все равно валиден, если вопрошающему не критичен сиквел.
>>794103EF ты все равно не получишь, тк ни в Java ни в Kotlin нет экспрешенов.В Kotlin вроде обещали завести, но это не ближайшая перспектива.Проводил в свое время исследование, ближе всех к EF библиотека MapDB.Она реализует интерфейсы Map<>, List<> и тд, на Kotlin можешь юзать Linq подобный синтаксис.Ее сейчас переписывают на Kotlin, но там еще "in progress".Попытал юзать старую версию на Java, но там старттайм и добавление большого кол-ва элементов на порядок медленнее чем в sqlite.ИМХО сейчас самое перспективное, это написать свой DSL поверх OrmLite или чистого sqlite.
>>794126>EF ты все равно не получишь, тк ни в Java ни в Kotlin нет экспрешенов.Это понятно. Хотелось узнать что юзает анон. Неужели все сидят на голом sqlite?
>>794135Планирую взять DBFlow.
>>793898Да так и делаю, ну и что. Потом один хер по папкам надо раскидывать и суффиксы бирать. Неудобно.>>794137>DBFlowЯ юзал, брат жив.
>>794169>Да так и делаю, ну и что. Потом один хер по папкам надо раскидывать и суффиксы бирать. Неудобно.Это да, тогда можно использовать скриптик который из свгшек сам раскидает по папкам.
аносы, а поведайте чем вы на работе занимаетесь? пилите рест клиенты? может что-то кроме этого? какие у вас проекты?
>>794188Коммерческая тайна.
>>794188 Тоже что и вчера, а именно: >>793418
Что делать в случае, когда у меня в активти из-за дровера меняются фрагменты, и нужно по нажатию на нотификацию заполнить стек фрагментов, так что бы по кнопке назад он вернулся на логического родителя? С активтями понятно как, а вот с фргаментами ничего не нашел.
>>794234ну дык добавляешь несколько фрагментов в транзацию, не?
>>794188Формочки шлепаем. Как это меня заебало.
>>794241Вроде не, но я попробуйю, а как добавлять-то, через add? а что с addToBackStack?
подскажите, как лучше сделать:есть список, при нажатии на различные айтемы списка, открываются различные вторые активитичерез интент фильтры делать или как?
>>794265Сувать в интент экстра дату и делать старт активити на нужную активити с этим интентом.
Сложно ли вкатится в андроид на Джуна будучи студентом с нулевым опытом и несколькими софтинами в плей маркете?
>>794305К твоему сожалению и моему счастью, невозможно.
>>794306А в рельсы/пыху?
>>794310В пыху всегда пожалуйста.
>>794314От и хорошо, буду учить пыху а дальше вкачусь в ведро/джаву когда стану мидом
>>794314Куда еще можно вкатится без пердолинга?
>>794315С травмами мозга после пыхи ты уже ни-ку-да не вкатишься. От туда не возвращаются.
>>794320А у меня есть варианты? В джаву меня точно не возьмут, а работы по руби/питону - 3.5 штуки
>>794322Выход есть всегда.
>>794330В окно например.
>>794305пиздуй в ios блять! нехуй в андроид лезть!
>>794336Как студент в гейос вкатываться будет, вилкой?
>>794340В чем проблема то? Неужели у тебя даже мака нет?
>>794305посмотрите на зп java-господина.теперь посмотрите на зп android макаки.еще раз посмотрите на зп java-сервер-господина.все еще хочешь вкатываться в ведро?
>>794343Я не он. Но вообще откуда у студента, который решил вкатываться в погроитрование мак? Или ты из мест где у каждого школьник айфон?
>>794348Принеси нормульную статистику для начала.
>>794348Я знаю джаву и начал изучать ведро. Стоит ли дропнуть ведро и учить пхп?
Нужно ли знать пыхомакаке жс и хтмл не на базовом уровне?
>>794366Это пыха-тред?
>>794369Да
>>794350> откуда у студента, который решил вкатываться в погроитрование мак?Ну пока попка еще молодая и упругая, этим надо пользоваться.
>>794400Шутки шутками, а я себе таки купил на втором курсе эир и гонял с ним на пары.
>>794363лучше 1с
>>794405Фу бля, серьйзно? Надеюсь ты тралишь.
>>794405скажите, уважаемый владелец аппле продукта, какого хуя вы решили все-таки разрабытывать под ведро?
>>794438А почему бы и нет. Я сначала начал разрабатывать под ведро, а потом купил удобный ноутбук. Или если ты разрабатываешь под ведро, то ты обязан быть пердоликом со швабодками?
Привет, аноны. История такая: требуется за 2 недели (по 6-7 часов в день) минимально разобраться в написании под Андроид и запилить тестовый apk без осмысленного функционала, лишь пощупать, который умеет: вызывать внешние приложения (например, камеру, календарь - добавлять события, скажем); умеет стучаться к какой-либо удаленной бд; имеет свою бд с некоторой информацией.Как сделать это максимально быстро? Что читать кроме официального блога? ЦЕЛЬ – нахвататься всего по немногу и сразу.Могу в программирование и Java на уровне понимания ООП, знания стандартных СД, интерфейсов и иже с ними, потоков ввода/вывода, простейших гуев на Свинге. С БД sqlite не знаком.
>>794701Ясно
Скажем в реализации MVC под андроид, будет подразумеваться что класс активити, который V в данном случае есть какие то еще обращения к хелперам(типо проверить булин из шаред преференса) кроме как работа с его контроллером, который предоставляет методы и возвращает какое нибудь говно с рестапи? На новой работе я столкнулся судивительной ситуацией. Есть программист второй, он реализовал типо mvc. Есть несколько активитей и под них по контроллеру. Там вот в кажды почти контроллер захуярил одинаковый метод, который выполняет одно и тоже,скажем возвращает булин из хелпера, который объявлен опять же в каждом контроллерк. И так из класса в класс копипаста. Метод не статик и в хелпере это тоже не статик.Я просто хуй знает как именно реализоввть mvc в анрдоиде, но по мне так пусть активити проверяет булини напрямую через хелпер. А0
>>794714Таки что вам ясно? Я конкретный вопрос задал, дабы мне пояснили, так сказать, рассказали о ситуации моей, алло.
>>794725Ты перечислил все что тебе нужно. Читаешь шапку и идешь по туторам. Так нахватаешься всего с головой. Причем быстро.
>>794701Берешь и делаешь.Следующий.
>>794728Язвительные снобы в треде. Следующий.
>>794727Туторы... Понятно. Спасибо.
>>794722Зачем изобретать велосипеды - https://habrahabr.ru/post/131446/
нид хелпвот у меня есть сиимплКурсорАдаптер, в котором данные из БДи мне надо при нажатии на пункт списка открыть другое активити, которое зависит от выбранного пункта как это реализовывать?
>>794872написал вот такую вот херотуно походу она неправильная[code lang=java] lvMain.setOnItemClickListener(new AdapterView.OnItemClickListener(){ @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Log.d(LOG_TAG, "on Item Click started"); long itemId = scAdapter.getItemId(position); Intent intent = new Intent(this, SecondActivity.class); intent.putExtra("itemId", itemId); startActivity(intent); } });[/code]
>>794866Автора обоссали.
Есть значит TextView. Под ним должен быть скроллвью с кучей кнопок.RelativeLayout layout_main = new RelativeLayout(this);RelativeLayout layout_buttons = new RelativeLayout(this);ScrollView sv = new ScrollView(this);//говнокодsv.addView(layout_buttons);layout_main.addView(sv);return layout_main;Скроллвью получается поверх всего. Как его порезать сверху?
>>795101> собирать вьюху в кодеИз иос перекатился? Ну так задай в relative layout params правило below texview_id.
>>795121Так у меня динамический лайаут же.>задай в relative layout paramsтак у скроллвью ScrollviewLayoutParams, там нету below.Так что пришлось скролвью в новый релатив пихать и там уже addrule.below
>>795169У скроллвью может быть только один дочерний элемент.
>>795174релатив в скролвью, скролвью в релативе
КонстрейнтЛейаут пользовал кто?
Кто-нибудь работал с FingerprintManager? Ни одного годного тутора не могу найти, оф документация тоже сомнительная.
помогите плз, а то страдаю хуйней уже 2ой день вместо того, что бы написать что томне надо заполниь список данными из БДв качестве БД использую sugar ORMкакой адаптер для листвью мне надо использоватьи нужен ли мне адаптор вообще?
>>794722http://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/во ёпта
>>795565>даю хуйней уже 2ой день вместо того, что бы написать что то>мне надо заполниь список данными из БД>в качестве БД использую sugar ORMчто за данные-то? Если там одна строка, то можно без адаптера, если там что-то сложнее, то наследуешь ArrayAdapter, скармливаешь ему layout и заполняешь вьюшки.
>>795600>>794722Использую PureMVC multicore. Красиво получается и понятнее MVP.
>>795613А разве есть портированный для ведроида PureMVC?
ищу фриланс подработку или запилюсь в проект к кому-нибудь.lectricas@gmail.com
>>795101скажи что в конечном итоге хочешь сделать я скажу как а то нихуя не понятно че ты там хочешь
>>795957Когда мой перевод готов будет, уёбок?!
Привет, анон. Допустим есть сайт/форум. Хочу написать простой клиент, используя преимущественно android sdk. У сайта api нет, рассчитываю положиться на HTTPClient. В качестве интерфейса планирую использовать стандартные компоненты, к Webview душа не лежит. Взлетит как продакшен-реди решение или все делается не так? В общем, дай стек технологий, этой мой первый серьезный проект на андроиде.
Парни, значит, история такая. Работал я себе, работал, как вдруг всё повисло. ну я ноут перезагрузил по горячему, открыл студию - а там пусто. ну хуй с ним, подождал пока проект подгрузится, но внезапно стала вылетать ошибка грэдла.Вот она:http://pastebin.com/yEJkVhKvЕщё такая штука: файл build.gradle(app) стал пустой. Что в нём было - хуй его знает.Все классы, активити - всё на месте. даже как-то умудрился запустить эмулятор - всё, что сделал, работает. но дальше работать с этим проектом не получается из-за ошибок грэдла.Что делать? Как починить? Может, новый Андроид студио поставить?
>>795957сорян, лениво мне. даже диплом не пишу
>>796163Может кто-нибудь скинуть содержимое этого файла?
>>796190Ты даун? Как ты проект собирал, если не знаешь, что у тебя в app/build.gradle?Создай новый проект и оттуда скопируй.
>>796217там всё был стандартно, я туда не лез
>>796148Взлетит. Парси хтмл регекспами.
>>796239Дебил. Гит еще наверно не знаешь?
Ведроиданы, кто-то делал vpn-клиенты для нашей нелюбимой платформы? Можете подсказать куда копать, для того что бы перехватывать трафик и перенаправлять его на выбранный vpn сервак?
>>796296Лучший совет в треде.На самом деле можешь попробовать, но парсить html надо явно не регекспами. Это локальная шутейка.
>>796303Парсить хтмл не нужно. Тем более на стороне клиента.
>>796302> перехватывать трафикштоа?
>>796307Ну я так понял что всякие vpn клиенты для ведра берут трафик, шифруют его и ведут к адресату через доверенные сервера, собственно за это им и платят.
>>796306Ну а как ему быть если у него нет доступа к API.
>>796310> Ну я так понялНе делай свой VPN-клиент, пожалуйста.
>>796311Парсить на сервере. А еще лучше не делать такое приложение. Всё равно, из Play-маркета пидорнут.
Наконец-то пришло обновление андроида, где исправлен баг с кнопкой "разрешить" в runtime permissions. Теперь она начала нажиматься!При попыткеразрешить доступ к мультимедиа в приложении Pikabu я получаю совершенно неизвестный, непонятный диалог:"Сначала разрешите наложения" - какие нахуй наложения? Я хочу гифку с котиком сохранить!!! В списке "наложения поверх других окон" нет приложения pikabu. Ни один пользователь не поймёт о чём идет речь и что делать.Так что, ставим target sdk version 22 и никуда не спешим. Сделать хуже - всегда успеем.
>>795872Есть Java-порт.
>>796432Что за шизофазия? Иди нахуй со своим пикабу.
>>796432> исправлен баг с кнопкой "разрешить" в runtime permissionsДавай ссылку на issue в баг-трекере Андроида.> Теперь она начала нажиматьсяОна и до этого нажималась. Дай угадаю: девайс от Самсунга?> "Сначала разрешите наложения" Что блядь? Это диалог из твоего васяноприложения, а не системный.> Так что, ставим target sdk version 22И наслаждаемся пониженным рейтингом в Google Play, еблей со старыми багами и взглядами как на говно со стороны коллег.Резюмируя, я солидарен с этим коллегой: >>796458
Здравствуй,анон.Делаю приложение,в нем должна быть возможность смотреть видео из VK.VK API может возвращать ссылку на mp4.Посоветуй, пожалуйста, библиотеку, которая может его грузануть и показать.
>>796469VideoView
>>796458>>796463Такое впечатление, что вы думаете, что вас пытаются наебать. Ссылка на трекер: https://code.google.com/p/android/issues/detail?id=213120Не работали все диалоги запроса разрешений.>Она и до этого нажималасьЖопой читаешь?>Дай угадаю: девайс от Самсунга?Не надо гадать, это не секрет: Линейка Nexus и неизвестно сколько еще устройств.>Что блядь? Это диалог из твоего васяноприложения, а не системный.Системный диалог. И да, я не пытаюсь никого обмануть.>И наслаждаемся пониженным рейтингомНизкий рейтинг будет когда едениц в рейтинг понаставят из-за хуевой юзабилити. Пользователи по большей части не хотят разбираться, а хотят гифки с котиками сохранять и чтобы всё работало.
>>796417> Всё равно, из Play-маркета пидорнут.Почему?
Пытаюсь сделать приложение-будильник, нужно чтобы оно запускалось в нужный момент из всех возможных жоп сна, которые бывают в андроиде, а также не должно давать пользователю уйти от будильника путём закрывания приложения. В общем, у меня стартует RingingActivity, который в свою очередь стартует сервис и потом если надо выключает музыку через него. Если активити убить, сервис всё равно продолжает играть, тогда нужно запустить приложение вновь, и из него выключить сервис. Были проблемы с запуском из режима сна, не могу ничего понять с Wake Lock-ами, тыкал их везде, но ничего всё равно не работает. Потом прочитал, что надо делать через BroadcastReceiver, иначе нет гарантии, внутри ресивера просить WakeLock. Потом ещё нашёл WakefulBroadcastReceiver, который должен автоматически делать всё за меня. Теперь всё работает (правда экран тёмный и не могу его включить), внутри onReceive я просто стартую RingingActivity. Посмотрел в код WakefulBroadcastReceiver и смутился - по-видимому он создан только для запуска сервисов методами startWakefulService и completeWakefulIntent. Нормально ли использовать его так, как это делаю я?Как сделать чтобы запускаемая активити включала экран?
>>796621Вообще, я хотел бы написать пару таких же хуёвых приложений и пытаться апплаиться на джуниора, поэтому хотелось бы чтобы мой код был более-менее идиоматичным, а не забиванием гвоздей дилдами. Нормально ли вообще запускать сервис параллельно с активити, цепляться к нему через bindService и управлять сервисом из активити?
>>796621Посмотри гугловский будильник в сорцах ведра.
как вкатится в rx?
>>796626Пиздец какой-то, я прочитал Android nerd ranch guide и покатался по юдасити курсам, но в этой параше не могу понять почти ничего. Может дело в том, что код 2009 года. Даже не верится, что у меня с моими 3.5 классов что-то работает.Но вообще, спасибо. По-видимому WakefulBroadcastReceiver мне не нужен, он только для сервисов, а в моём случае по-видимому он помог потому, что любой BroadcastReceiver по какой-то причине будит телефон лучше, чем просто активити. Гугл тоже использует активити, просто берёт wakeLock в BroadcastReceiver, а освобождает где-то в активити.
>>796621>стартует активити из сервисалол
>>796685Точнее наоборот, лол
>>796687Ну мне надо показать экран с залупой, и начать играть музыку. Если на залупу нажать - музыка прекращается. Если из приложения выйти - музыка продолжается фоном. При старте приложения при играющей музыке сразу открывается экран с залупой.Как это ещё можно сделать?
>>790312 (OP)Котятки, а вы в курсе, что уже выкатили первую тестовую версию Kotlin 1.1?https://blog.jetbrains.com/kotlin/2016/07/first-glimpse-of-kotlin-1-1-coroutines-type-aliases-and-more/Из главного: async/await + type aliases + передача ссылок на методы как лямбдВот мои эксперименты с async/await на Android: http://pastebin.com/1vaxkNaKТам я качаю HTML страницу, нахожу title, перевожу в UpperCase и вывожу в TextView.Как видите запрос идет в фоновом потоке, но никаких handle/looper/postOnUi и тд использовать не пришлось.Сделал в двух вариантах с обработкой ошибок:1) В духе C# с try/catch блоком (асинхронные ошибки туда прокидываются нормально)2) В функциональном стиле с самописной монадкой на исключения.
>>790312 (OP)Как называется такая хуйня, когда тянешь картинку вверх или вниз и она пропадает, т.е. выход из просмотра картинка. Как гуглить туториал по этой теме?
>>796736из просмотра картинок
>>796718> пастбинУ тебя же вьюха утечёт, не? Rx хоть сансабскрайбить можно, а как авейт твой останавливать?
>>796740Во первых, это код для примера. Во вторых, просто не надо давать ссылки (делать замыкания) на активити из web запросов.С ними надо общаться через бродкасты, а через колбеки можно делать только запросы к диску.
>>796748Так как асинхронную цепочку останавливать? Через выброс эксепшона? Дорого же.
>>796718>async/await ох бля, нужно было подправить немного C# код, как же я наебался с этой хуйней
>>796761> Так как асинхронную цепочку останавливать?В общем случае (мелких запросов к вэбу) не надо останавливать.Так ты только вносишь дополнительную сложность, необходимостью правильно вернуть систему в 0 состояние из N твоих точек остановки.> web запросы> Через выброс эксепшона? Дорого же.В каком месте? Ты сейчас бенчмарк у себя в голове придумал и прогнал.Если тебе это дорого делай как в C# через CancellationTokenSourcehttps://msdn.microsoft.com/ru-ru/library/jj155759.aspx?f=255&MSPPError=-2147217396P.S.Если тебе еще что-то непонятно, читайhttps://github.com/Kotlin/kotlin-coroutines/blob/master/kotlin-coroutines-informal.mdhttps://msdn.microsoft.com/ru-ru/library/hh191443.aspx
>>796718Нахуя, когда есть Rx?
>>796618За нарушение прав.
>>797007Каких прав? Парсить публичные веб-страницы запрещено? А почему использование api не запрещено?
>>797019Если API публичное, то нет.
>>797024А если у меня скраппер в бд с рест апи к ней? При этом я везде указал, что это неофициальное приложение.
>>797060Пока у тебя будет полтора пользователя, всем будет насрать. Если их станет больше, то всё равно пидорнут.
Собираюсь залезть в ведро. Стоит ли учить джаву, если я собираюсь разрабатывать игры-говноподелки. Учтите, что есть друг, работающий юнити+сисярп.
>>797207Лучше Хаскелл.
>>797207Стоит.
>>797024А данные, отдаваемые сервером, — не публичные?Чем публичный API отличается от не-публичного, кроме заявления создателей, что оно публичное?
>>796748>>796740> У тебя же вьюха утечёт, не?Вообще справедливый вопрос, вьюха полюбому замыкается в продолжении (continuation), чтобы ты после await смог сделать text1.text = результат_await
>>797304>>797304Именно этим и отличается. Если я выложу какие-то исходники на Гитхаб под свободной лицензией, ты можешь делать с ними что угодно (в рамках этой лицензии).Если я их просто выложу, и напишу ЭТА ВСЁ МАЁ НЕ ТРОГОЙТЕ, то те, кто будет их использовать, будут нарушать мои права. У Гугла всё это вообще автоматически происходит. Выписываются баны приложений, страйки на ютюбе и т.д. Причем ты никогда не узнаешь, за что именно, тебя просто заблокируют. Можешь почитать например на Хабре истории общения с техподтержкой Гугла.
>>797334Я прекрасно понимаю суть свободных лицензий. Однако это вообще не к месту сейчас, мы совсем о другом говорим. Более того, я ни разу не видел, чтобы к API была приложена лицензия, следовательно, любое такое API всё равно нельзя использовать независимо от того, публичное оно или нет.
>>797437> я ни разу не видел> следовательноТы совсем поехавший?
>>797475Найс переход на личности.Написанное далее относится к API без лицензии. Учись читать.
Привет, котаны.Есть grid layout 3x3. Как сделать так, чтобы колонки таблицы по ширине занимали всё место на экране? Сейчас только по высоте занято всё место, путем установки параметра layoutRowWeight = 1 каждому FrameLayout.
А есть какие-нибудь "умные" конвертеры json -> pojo, которые создают вменяемое количество классов, ну, или на крайняк хотя-бы вложенные статики используют, чтобы не приходилось 30 минут тратить на копипаст ?
Двач, привет! Я почти доделал своё приложение а-ля медуза, в котором пизжу статьи с сайтов.Но пока что спиздил только заголовки для листвью. Как сделать так, чтобы на клик открывалась статья в новом лэйауте? Подскажите гайд. можно ангельский.Этого пидора с свидео не предлагатьhttps://www.youtube.com/watch?v=DCo_1nsxeY0
>>797708Чем тебе gson кроме рефлексии не угодил?
>>797731Я когда-то упоролся и спарсил при помощи json сайт гей знакомств. Потом сделал всякие графики.
Двач. Можно создать listView поверх ListView, но так, чтобы его не было заметно? Например, один лист вью с текстами, которые видно. тИпа1. Вася2. Петя3. Дима4. КостяА поверх него "невидимый" листвью"(прозрачный), но по сути, реагирует новый листвью. Допустим, мы не видим такую же фальшивку1. Яна2. Катя3. Соня4. ТаняИ вот юзер нажимает на 2-ю позицию(он думает, что это петя), а ему тут ХУЯК и Катя открывается.
>>797708Я пользуюсь https://timboudreau.com/blog/json/readЕго огромное преимущество, что он генерирует immutable классы.Кстати, они потом конвертируются в очень компактные "data class" котлина.
>>797750Вопрос только зачем, а так можно конечно, только в onScroll передавай smoothScroll
>>797756Спасибо, действительно удобный сервис
Парни, как теперь получить ссылки кликабельные? Вот код, сайт скрылhttp://pastebin.com/nTJMjmjn
>>797791> AsyncTask> Jsoup
Какого хуя тут считают, что в ведроиде зп нищенские по сравнению с тырпрайзом? Я на хедхантере только у топов разницу видел.Алсо, как сейчас с рыночком в РФ, котаны? Реально вкатиться в ДС-2 с двумя приложениями в маркете, и парой месяцев опыта на большой джаве?
>>797804Нереально. Вакансий нет. Джава всё. Андроид переходит на Свифт. Уж лучше джаваскрипт учить, там хоть какая-то стабильность.
>>797752Кхм, прикольно, но чет он мой джсон не переварил например. А он валидный.
>>797807>Андроид переходит на Свифт:^)Ты успокоишься когда-нибудь? Какого черта ты срешь в двух тредах сразу?
>>797798делал по гайдам)
>>797791В чем конкретный вопрос?Если ты про "как из html...", тоdoc.select("a")
сап аноны, в общем я тут перекатился в андроид, в понедельник выхожу на работу. Там все работают на маках а я его в глаза не видел. Есть какой нибудь годный мануал типа ос экс для чайников в сети?//экс-решеточник
>>798170Да не парься, там все интуитивно понятно.Лучше Android Studio / Kotiln подучи.
>>798170Анус побрей.
Что если некоторые ключи настроек берутся из string ресурсов? Нормально если сделаю не final PREF_KEY_* и заполню их в onCreate апликейшона? Или как лучше?Надо для prefs.xml'ей.
>>798245Ключи настроек никогда не меняются.Не надо плодить лишние константы, пиши прямо так: sp.getBoolean("gps_enabled", false)Если совсем прям припрет поменять имя ключа в .xml, то заменишь руками в коде.Если у тебя загрузка одной и той же настройки используется 1000 раз - здесь что-то не так.Настройки надо грузить: 1) При инициализации 2) Внутри onSharedPreferenceChanged из SharedPreferences.OnSharedPreferenceChangeListener
Ананасы, какой датчик использовать для снятия вращения вокруг одной оси, как руление в гонках?
>>798335Акселерометр.
>>798341А гироскоп с магнитометром нахуй не нужны? Этот акселерометр сильно зашумлен, даже Калманом не приводится в нормальный вид.
Java тред не дышит что-то, задам вопрос здесь:Сап, джава-господа. Пробую одну вещь, а именно собрать лист ссылок с сайта. Взял себе на пробу сайт, ссылки вытащил.Но они в разброс. ТО есть, первая новость на сайте почему-то не первая в списке, а где-то в середине. Понимаю, что теперь мой лист нужно отсортировать. Сделать это в целом просто, ведь в середине каждого стринг в листе есть дата. Но календарь юзать тут не надо. Просто отсортирую по какая меньше-какая больше. Вот код, которым я получаю ссылки.http://pastebin.com/dRjvtp3i Вот то, что я получаю.http://pastebin.com/Qvm5PsD8Вот то, как выглядит дата:2016/04/26/Из неё я буду вытаскивать месяц и число.Подскажите, чем сортировать и как это сделать? Это решение, конечно, похоже на костыль, а если ещё и дальше делать, то больший костыль, но всё же это попытка и я хотел бы доделать её.Спасибо, Анонимусы
>>798351Зачем ты сет используешь? Ты знаешь что есть сет? Возьми ArrayList или LinkedHashSet если действительно нужен сет.
>>798361>>798361нет, не знаю. просто нашел работающий способ, который помог мне убрать дубликаты из результатов. потому что ссылки, почему-то, было по 3 и более.Так что, если отвечать зачем, отвечаю: убрать дубликаты
>>798365HashSet - несортированный набор. Ты копируешь значения листа в сет, вычищаешь лист, копируешь сет обратно в лист. Лист при этом вытаскивает значения из сета в случайном порядке. Для одноразовой операции такое сгодиться, но у тебя цикл. Quickfix - замени HashSet на LinkedHashSet, не будут перемешиваться.Вообще для небольшого скрипта брать жаву смысла мало.
>>798377Сейчас попробую, спасибо.
>>798267>>798245> пиши прямо так: sp.getBoolean("gps_enabled", false)Никогда так не делай.Вариант минимум - константы. Но лучше сохранять ключи в res/strings.xml и указать у них аттрибут translatable="false".
>>798377> сгодиться
>>798399Нет смысла. Ключи никогда не меняются.>лучше сохранять ключи в res/strings.xml и указать у них аттрибут translatable="false".Оверхед. Много писанины, опять же надо помнить названия ключей. Вызовы getString.
>>798430>>798399Если что - я попробовал все 3 способа в проекте с ~20 настройками.Оказалось, что за полгода (разработка и поддержка) менять названия ключей не пришлось ни разу.Добавлять новые и удалять старые - вот это было.
>>798430>>798434Пишешь говнокод. Не пишешь тесты. Агитируешь других поступать так же.Понятно.
>>798445Во всех трёх способов кроме удвоения кол-ва названий ключей нет никакого различия.В некоторых случаях добавляется всякий оверхед, в виде загрузки строк из xml.
>>798454> всякий оверхедДай угадаю, ты еще и enum'ы презираешь, используя вместо них int-овые константы?
>>798459Не надо угадывать. Нет, использую enum.Лучше расскажи, как тонны лишних строк с названиями ключей помогут тебе в тестировании.
>>798445>2016>писать тестыНикогда не понимал, нахуя это нужно.
>>798459> используя вместо них int-овые константыПочему бы и не использовать, если есть @IntDef, и это рекомендации гугла.
>>798464Очень нужно, но есть нюанс:если код завязан на железо - тесты уже не напишешь (обмен через Bluetooth с носимым гаджетом)
>>798470>Очень нужноОк.
>>798464Чтобы обнаруживать регресс.
>>798464> Никогда не понимал, нахуя это нужно. Вон из профессии, быдло.>>798467> Почему бы и не использоватьА почему бы все переменные не хранить как String? > и это рекомендации гуглаВот и пиши по этим рекомендациям лапшеобразный код с AsyncTask'ами, ContentProvider'ами, HttpURLConnection, венгерской нотацией и прочими радостями. Флаг тебе в руки.
>>798488>Пок-пок-покТестоблядь закукарекала.
>>798488>AsyncTask'амиПоясни за альтернативу.
>>798507>не знает альтурнатив асинктаскам
>>798510Так ты тоже не знаешь.
>>7983511)Нахрен у тебя там цикл?for(int i = 0;i<11;i++){2)> первая новость на сайте почему-то не первая в списке,Тебя глючит, они приходят правильно отсортированные
>>798516>>796718
>>798520Я же тебя не про котлин спрашиваю, а про альтернативу AsyncTask.Сейчас выгодно использовать проверенные инструменты, т.к. граблей и гугл достаточно подкидывает.
>>798528Извини, неудержался
>>798551Так-то он прав. Эта ебаная сдк перманентно забагована, то и дело попытавшись заюзать новый инструмент из стандартного набора плюешься, что уже говорить про всякие реалмы у которых каждый месяц - громадный фикс багов. Это показатель не того что они пиздатые, а того что технология дерьмо.
>>798551
>>798516Так нахуй? У меня отдельные классы для получения дерьма из инетов, кеширвоания в бд и отображения. Мне твой асинк таск не уперся.
Господа, не надо устраивать срач. Полно инструментов есть: Loader, RxJava, ListView вместо RecyclerView.На любой вкус!
>>798591>ListView вместо RecyclerViewТолсто. Пидор.
>>798578Пиздеж.
>>798583Ну то есть ты переизобретаешь Loader?
>>798601Нет. Я твоего батьку ебу.
>>798603Всё время забываю, что у вас сейчас каникулы.
>>798519Спасибо, Анон, за замечание о цикле. Сам не знаю, нахуя вставил. привык массив циклом заполнять, вот нахуя-то и вставил. My fault. А приходили несортированные, инфа сотка. в моём посте есть подтверждение, посмотри даты)Но LinkedHashSet всё решил)
>>798613
>>798613Твой сломанный порядок из-за того что ты используешь Set для временного хранения данных.Без сетов там порядок, как на сайте. Пруф на пикрил.
>>798597Зачем мне врать рандомным анонам? Нет. Не пиздеж.
>>798634Ты долбоёб просто. Все уже на 24-й версии, у всех всё работает.
После включения ProGuard появились странные баги при замене одного фрагмента на другой. Старый фрагмент остаётся на месте (вернее, его изображение, так как на нажатия он не реагирует), а новый фрагмент показывается под ним. Отключю его - всё норм, включю - опять такая же фигня. В чем может быть проблема? В логах всё чисто, никаких ошибок или предупреждений.
>>798646Проверю - сомневаюсь, 100% есть новые баги.
>>798657Проблема в Proguard. Выкинь его нахуй.
>>798657Хрень какая-то. Логай onDetach фрагментов. Если там не сделано какой-то шняги с рефлексией, то прогвард помешать не мог. Попробуй локализовать проблему в отдельном проекте.
>>798680Надо настроить, а не отключать нахуй.
>Коротко о главном:>1) Мобильная разработка - это весело.Это точно. Я уже четвертый день ябусь с QtCreator, который упорно не хочет проходить этап Build Android Apk.01:48:29: Выполняются этапы для проекта application...01:48:29: Настройки не изменились, этап qmake пропускается.01:48:29: Запускается: «C:\MinGW\bin\mingw32-make.exe» mingw32-make: Nothing to be done for 'first'.01:48:29: Процесс «C:\MinGW\bin\mingw32-make.exe» завершился успешно.01:48:29: Невозможно запустить процесс «mingw32-make» "INSTALL_ROOT=C:\Qt\5.2.1\android_armv7\examples\widgets\mainwindows\application\android-build" installОшибка при сборке/установке проекта application (комплект: Android для armeabi-v7a (GCC 4.9, Qt 5.2.1) )Во время выполнения этапа «Копирование данных приложения»01:48:29: Прошло времени: 00:01.Это с галкой расширенного вывода. Пытаюсь собрать хотя бы один из примеров. Что может быть не так? SDK, NDK, ANT - самые свежие, что дают на сайтах. Или Все дело в винде?
>>798696В чём профиты QT? Используй Android Studio & Java.
>>798696> Windows> MinGWДа ты вообще больной человек
>>798702Например в том, что я полный нуфаг и учил вообще питон. И QT более-менее знаю. И не успокоюсь, пока не запущу свой говноскрипт на ведроиде. А потом уже засяду за изучения джавы, наевшись говна.Жуткий пердолинг, конечно, но как-то же собирают apk в креаторе, а я не могу даже стандартный пример.
>>798704VS не вышло прикрутить чет. Хотя, надо попробовать еще раз.
>>798704Да и обычные приложения с его помощью вполне себе собираются.
>>798696Проверил наличие папки android-build. Ее нет. А если создать, повторyый запуск build сжирает ее. WTF?
Кто нибудь может предложить нормальный бэкпорт CompletableFuture для Android?RxJava не предлагать, с него как раз и ухожу.Нашел вот это чудо https://github.com/streamsupport/streamsupport, но оно тащит за собой еще 900KB stream-API, которое мне нафиг не упало.Можно конечно поиграться с минимайзером, но проще дождаться jake&jill,там вроде тоже будет бэкпорт стиримов и CF
>>799500> бэкпорт CompletableFuture > с RxJava ухожуТы ебанутый?
>>799500Нашел еще Guava ListenableFuturehttps://github.com/google/guava/wiki/ListenableFutureExplained, но там опять таки придется тащить 2MB лишнего барахла.
>>799510С жиру бесится.
>>799510После более года использования RxJava на Android (и полугода в C#/Xamarin), я могу делать ясные выводы:1) Observable<T> несовместим с жизненными-циклами активитей/фрагментов.Очень неудобно, что "по хорошему" каждый Observable надо явно отписывать (что бы избежать утечек), тк “по умолчанию” они бесконечные и не было контракта, который явно бы говорил что Observable одноразовый.В RxJava поняли эту проблему и ввели явные контракты на одноразовые действия: Single<T> и Completable. Но проблема в том что они плохо совместимы между собой, у них разные интерфейсы для связывания, нет общего абстрактного предка.2) Из-за множественной подписки, RxJava хорошо работает только с Cold Observable, а это оказалось МНЕ вообще не нужно.http://www.introtorx.com/content/v1.0.10621.0/14_HotAndColdObservables.html3) Последней точкой стал выход Kotlin 1.1 с поддержкой async/await.Да там есть поддержка и RxJava https://github.com/Kotlin/kotlinx.coroutines/tree/master/kotlinx-coroutines-rxНо лучше всего async/await ложатся именно на одноразовые асинхронные таскиВ итоге мой вывод: одноразовые-“hot”-асинхронные-таски гораздо легче в использование.Этим требованиям полностью удовлетворяет Java 1.8 CompletableFuture, вот только на Android его нет (пока).P.S.Скоро выходит RxJava 2.0, я его посмотрел, но не нашел там нужных мне характеристик.
Аноны, как вы обрабатываете такую ситуацию, например, есть запрос, связанный с денежным перевод, т.е. он должен выполниться ровно один раз, юзаю rx + место, где observable живет. С переворотами, закрытием и открытием рпиложения всё ок, но когда андроид убивает приложение, то всё становится хуёво. Как быть?
>>799548IntentService
>>799548В чем проблема сохранить в permanent-storage (sharadepref/sqlite) состояние транзакции?
>>799581А потом ебаться с синхронизацией всех этих транзакций, да?
>>799583> всех этих транзакцийУ тебя их что больше одной за раз?Нет такого "волшебного апи", которое запретит Android убить твое приложение.Даже "sticky" service, андроид может убить, он только гарантирует что потом его вызовет снова.
>>799592> У тебяЯ другой анон. Но транзакций легко может стать много, если дейстовать как ты говоришь. Вдруг, на сервере что-то изменилось, или юзер с другого устройства что-то сделал. Или оффлайн-действия всякие.
>>799581Ну например сделался запрос, я сохранил в бд какой то тэг запроса и время, да? А как потом отследить, что новый делать не надо, я что-то не догоняю.
Есть какой нибудь сайт типа соревнования по разработке андроид прилаг, типа дают задания и спеки и кодеры начинают быдлокодить прилагу?
>>799681поехавший?
>>799681Попробуй работу поискать, тебе там дадут тестовые задания
>>799712нет ты>>799717Нахуй шлют без опыта, да и выходить из дома не хочу.На фриланс хуй без мыла и разработаной жопы пролезешь, да и почти везде хотят еще и ios.Своих оригинальных идей нет, а писать 9999999 todo или трекер привычек, программу заметок, нативный сервак двача, калькулятор и прочую чухню впадлу.
>>799727Ну тогда дальше сиди дома и смотри анимэ. Не знаю, что тебе еще посоветовать.
>>799727Ссук, чем тебе написать программу заметок впадлу?! Не нашел ни одной когда надо было (невырвиглазную, с виджетом на хаумскрине и синхронизацией в какое-нибудь открытое место). Так и пользуюсь дефолтным самсунговским memo.
>>799528я нихуя не понял. я тупой?
>>799631у сервера спроси
>>799999Нет, ты просто нюфаг да еще и знаю что это не гет гетодрочер
>>800000а типо и у меня, и у сервера должен быть какой нить transcation id, да?
Сап, двач! Нужно получить ссылку в Toast по клику. Лист с ссылками вот. можно посмотреть:http://pastebin.com/cm2Q5E0TКак теперь его привязать - ума не приложу. прописывал в онИтемКликЛистенер list1ofLinks.get(position) - ошибка.Писал в онКриэйт - ошибка. Создал метод, который на старте собирал внешний(вне метода) лист - всё равно ошибка.Как поступить? Или нужно создавать потоки/асинк таск? ЧЯДНТ?
>>800255разобрался сам с помощью нового класса и асинк таск. спасибо, двач!)
>>800255>>800283Забудь про тост и используй snackbar.
>>797683используй grid:layout_columnWeight="1". И эта хуйня ЕМНИП работает только с грид лейаутом из суппорт лайбрари
Использовали ли вы лоадеры? Если да, то использовали сразу или переходили с чего-то другого? Упростили ли они вам жизнь и насколько? Какую проблему они решают по сравнению с альтернативами?Самая существенная инфа по ним это блогпост на пять частей, после прочтения которого ЯННП. В еще одном посте нарисован самый минимум как их заюзать, но даже на этом минимуме нужно дополнительно имплиментить три метода коллбэка лоадера. Правильно я понимаю что лоадеры и их дата помирают вместе с активити?До сих пор я использовал асинкТаски и иногда сервисы, еще глядя в сторону rx. Лоадеры отпугивали тонной бойлерплейта.
>>800313В чём отличие, друг? Гугланул, нашёл вот это."Но есть и небольшие отличия. Например, когда выводится сообщение, его можно смахнуть с экрана слева направо, не дожидаясь, когда оно само исчезнет.Также можно задать свою продолжительность. В первых версиях это не работало, я даже задавал этот вопрос на StackOverFlow, где проблему подтвердили и обещали исправить. Недавно проверял - действительно, теперь работает."Мне это пока не надо, так зачем он мне?)
>>800353С источником на русском от какого-то Васяна ты сразу идешь нахуй.
>>800389о, любитель читать на английском всё то же самое и ставить себя выше других из-за того, что "не такой как все" порвался
>>800338> нужно дополнительно имплиментить три метода коллбэка лоадера.> Лоадеры отпугивали тонной бойлерплейта.Ах, какая большая работа, целых 10 строчек кода!> Правильно я понимаю что лоадеры и их дата помирают вместе с активитиНет, неправильно. То есть ты прочитал пять частей какого-то говна и так ничего не понял? Сочувствую.
>>800391Если ты не в состоянии элементарное описание компонента найти и прочитать, а только чьи-то высеры цитируешь, о чем с тобой можно говорить?И вообще представь себе, что в этой профессии нужно много искать информации и читать. Книги, статьи, туториалы. И в большинстве случаев на английском. Если ты этого осилить не можешь, то может пора пойти вон из профессии? Улицы грязные, щебень не разгруженный. Найдешь, чем заняться.
>>800400зачем читать на ангельском, если есть уже адаптированный русский текст? В случае, если инфа по библе/инструменту есть только у буржуев, то да, английский нужен. К слову, я его знаю и часто читаю в оригинале. Так что не кичься своими знаниями, ты тут не один такой.Лучше расскажи, почему надо snackbar юзать?
>>800402Потмоу что новый, а тосты нимодные и нималадежные.
>>800404Спасибо. Тогда мож ваще нахуй с жабы и ведроида убегать? Жаба ведь тоже не модная
>>800402> ПОСОНЫ Я ПОПРОБОВАЛ ЕНТОТ СНЕКБАР, ЧЕ-ТО ФИГНЯ КАКАЯ-ТО, НЕ ИСПОЛЬЗУЙТЕ ЕГО> адаптированный русский текстФлаг тебе в руки.
>>800410Верно. Джава умирает. Самое время учить JS.
>>800404азаза затроллел))))
>>800411да не. выглядит прикольно и фич поболе, чем в тоасте. но юзать его везде - глупо. головой надо думать, где что нужно. меня вот тоасты устраивают(я ими тесты провожу). В случае необходимости заюзаю снэкбар. особенно если захочу стать материал десигн дрочером
>>800410Ты правильно мыслишь. Видимо ты не совсем пропащий.
>>800255А, так это ты тот даун с Jsoup и AsyncTask'ами в onCreate()? Тебя же еще вчера обоссали. Добавки захотел?
>>800410Так и есть. Грустная истина, но JavaScript уверенно шагает по миру. На нём сейчас вообще что-угодно пишут, а в будущем влияние только усилиться. Вот пример из мобайла: наша студия делает нативные приложения для Android/iOS. Но в последнее время стало сложнее находить заказы. Все уходят туда, где им сделают кроссплатформенное приложение на ReactNativ'е за чуть меньшие деньги, но раза в полтора быстрее. Так что, думаю, скоро и нам перекатиться придётся.
юхуу, идём ко дну!
>>800423>>800423где ты тут видишь онКриейт, поехавший?
>>800431полагаю, что зная Java, перекатиться на JS будет не слишком трудной задачей
С какой штукой можно посмотреть, насколько приложение грузит теплофон/смартфон?
>>800446Вот: >>797791
>>800458nope
>>800431Пруф на реакт плиз. Не сильно верится. По моим ощущениям он еще дохуя сырой.
>>800461@Overrideprotected void onCreate(Bundle avedInstanceState) {// ...new NewThread().execute();}
>>800452В студии есть встроенные мониторы. Там процессор, память, гпу и нетворк.
>>800464Пруф чего? Да, сырой, глючный и вообще уёбищбный. Но позволяет очень быстро и дешево писать кросс-платформенные приложения. Сначала на уровне прототипа, потом как обычное.
>>800467проглядел, пасиб
>>800394Спасибо.
>>800471Пруф того что кто-то согласен покупать такие приложения у разрабов. Или вакансий с реактнэтивом.>быстро и дешевоДля молодых технологий как-то сомнительно.>кросс-платформенныеНе гони, он нихуя не кроссплатформенный, другой дело что не нужно менять язык для того что бы писать под другую платформу.
>>800529Да толстит он. С xamarin еще все понятно, но на RN никто не будет заказывать продакшен приложения.
>>799592>Нет такого "волшебного апи",startForeground
>>800620>startForeground> It is still theoretically possible for the service to be killed under extreme memory pressure from the current foreground application
>>800623На экстремальном давлении пустил тебе струю за щечку.
>>800625Шо ты бомбишь на пустом месте? Школьник штоли?
>>790312 (OP)Аноны, у меня есть лоадер, который отправляет сообщения на сервер, следовательно, юзер может отправить сообщения одновременно, но в таком случае лоадер возвращает результат только для первого сообщения, а если рестартить его, то только для последнего, что делать? Думаю инкрементить айдишник у лоадера, но это, наверное, слишком костыльно, что скажите?
>>800649Лоадеры не предназначены для сетевых операций. Ты делаешь хуйню.
>>800655не знаю, юзаю их в связке с rx, как писал чувак из елегиона на хабре, мне всё нравится
пацаны, подскажитевот есть метод, который воззвращает List<E>допустим этот метод прописан в классе Anonв мэйн активити делаю Anon anon = new Anon();anon.readList();а теперь мне надо назначить имя этому List<E>, который вернул этот методкак это сделатья тупо уже основы джавы забываю сидя 8ой час за всей этой поеботой
>>800935> так сделай, например, новый лист и поставь его равным тому листу.Или геттеры-сеттеры
>>790312 (OP)ПЕРЕКАТhttps://2ch.hk/pr/res/801015.htmlhttps://2ch.hk/pr/res/801015.htmlhttps://2ch.hk/pr/res/801015.htmlhttps://2ch.hk/pr/res/801015.html
>>800935> а теперь мне надо назначить имя этому List<E>, который вернул этот методЧто ты несешь? Ты вообще программировать умеешь?List<E> myList = new Anon().readList();
Репостну тутЧем заменить parse.com?Нарыл много статей со списками альтернатив, но реальных отзывов как-то не много. Я бы и простой бэкенд запилил на пыхе, но клиент хочет подешевле.У кого есть отзывы по таким бекендам? Может какие-то подводные камни.Ествественно хотелось бы подешевле, побольше бесплатных записей в базе данных, максимально простую конфигурацию, чтоб хуяк, хуяк и работалоВот наверно самая большая конпиляция https://github.com/relatedcode/ParseAlternativesИ обсуждение на реддитеhttps://www.reddit.com/r/webdev/comments/435teq/parse_is_shutting_down_what_are_good_alternatives/https://www.reddit.com/r/iOSProgramming/comments/436kcd/parse_alternatives/