Этого треда уже нет.
Это копия, сохраненная 19 июля 2017 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
785 Кб, Webm
Android Development Thread 2.2.0 #992478 В конец треда | Веб
Android Development Thread 2.2.0

> Хочу вкатиться в разработку под Android! С чего начать?


Большинство приложений написано на Java, выучить её на хорошем уровне — это первое, что необходимо сделать. Рекомендуемую литературу см. в Java-треде.
После этого можно установить Android Studio, открыть официальную документацию http://developer.android.com/training/index.html и попробовать создать по туториалам своё первое приложение.
В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.

> Мануалы?


- Официальная документация: http://developer.android.com/
- Полезный гайд для начинающих и продвинутых: http://guides.thecodepath.com/android
- Бесплатный видеокурс от Google для новичков: https://www.udacity.com/course/android-development-for-beginners--ud837
- Два ресурса, единственный плюс которых — русский язык: http://startandroid.ru/ и http://developer.alexanderklimov.ru/android/
- Классика, способная дать ответ на почти любой вопрос "Как сделать xyz?": http://stackoverflow.com/

> Не хочу писать на Java!


- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. С 17 мая поддерживается официально.

> Есть что-то кроме нативных приложений на Java/Kotlin?


- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы). Спрашивать в C++ треде.
- Xamarin — кросс-платформенный фреймворк на C#. Представляет из себя обёртку над Android API. Куплено Microsoft. Теперь есть бесплатная версия. Спрашивать в C#-треде.
- PhoneGap/Ionic/Titanium/ReactNative — имя им javascript, принципы у них разные, первые три попытка в кроссплатформенность одного кода, ReactNative проповедует другой подход, а именно написание разного кода но на одном языке. Популярность у них разная как и размер комьюнити. Вопросы по ним — в js-тред.
- BugVM — кросс-платформенный фреймворк, написанный на Java. Форк невинно убиенного RoboVM.

> Хочу писать игры!


LibGDX или Unity. Спрашивать в /gd/.

> Что нужно, чтобы взяли джуниором? Что учить в первую очередь?


Нужно хорошее знание Java, понимание базовых принципов Android (жизненный цикл activity/fragment, что такое Context, intents, services, UI thread, support library, shared preferences, SQLite), знание популярных библиотек типа Retrofit + Glide/Picasso. И хотя бы оно готовое приложение.

Предыдущий тред: https://2ch.hk/pr/res/974849.html (М)
#2 #992480
>>992478 (OP)
Начнем с новостей: Kotlin on Android. Now official

https://blog.jetbrains.com/kotlin/2017/05/kotlin-on-android-now-official/
#4 #992488
Уберите уже всраху из шапки.
Фигурки андроида были интереснее.
992490992605
#5 #992490
>>992488
Пусть хоть начнет раздевать, мне интересно, квизы проходить не хочется.
мимопроходил
992492
#6 #992492
>>992490

>квизы проходить не хочется.


Чет проиграл.
994530
#7 #992561
992599992617992629
#8 #992599
>>992561
Браво, гугол!
#9 #992603
>>992480
>>992481
Слава Андроду, Котлину слава.
Наконец-то.
В последние пару месяцев пилил свои поделки на котлине, писать на нем легко и приятно, именно такого сахарка жаве очень не хватало.
#10 #992605
>>992488
Двачую, первая пикча должна ассоциироваться с технологией, иначе в каталоге не найдешь тред.
992612
#11 #992612
>>992605
Трейчую, мне уже давно от этой стремной телки бонбит.
#12 #992617
>>992561
Насколько сосет, или это преальфа?
#13 #992629
>>992561
+:
Есть подержка rxJava2 без ссаного интеропа;
Тайп конверторы;
Миграции;
-:
Сикель ручками в квери без подстановки параметров, какого блять хуя? Сделают как в ретрофите тогда можно сказать малаца.
992635
#14 #992635
>>992629
Ещё сам паттерн Dao - странные выбор, все давно уже репозитории использует.
992638
#15 #992638
>>992635
Ну никто не запретит тебе спрятать их дао-хуяо внутри твоего репозитория.
#16 #992704
Как вкатиться в Котлин и Андроед после Синьёр-ХТМЛ-архитектор-девелпмент? С чего начать?
992791
#17 #992791
>>992704
Не лезь блядь.
Скачиваешь новейшую студию с canary chanel'а. А дальше с помощью New->Project выставив галочки.
#18 #992858
Двачик, что-то совсем плохо с поиском работы Android и Java-куну. Совсем
#19 #992877

> таки просто добавили котлин плагин в студию, ничего более


> РЯЯЯЯ КОТЛИНОПЕРЕМОГА



Как вы заебали, просто пиздец. Хотя журнашлюхи еще больший пиздец высирают, уже чуть ли не лично сколачивая гроб джаве.
Когда саппорт либо перепишут на котлин, тогда и приходите.
992889992957993050
#20 #992889
>>992877

>перепишут на котлин


Зачем? Зачем выкидывать рабочий код?
где покодить #21 #992921
аноны, подскажите опен сурс проекты или какие-то стартапы где после работы можно пару часиков покодить для себя. Не сильно сложные, с мердж реквестами например.
993052
#22 #992957
>>992877
Зачем переписывать-то? Просто новый код можно писать на нём, легаси на джаве никому не мешает.

Олсо, не понимаю ослоёбов, которые мучают себя пейсанием на жаве. Это же как смазывать ослу жопу маслом вместо вазелина — нагревается, быстро растекается и просто воняет.
#23 #993050
>>992877

> таки просто добавили котлин плагин в студию, ничего более


> РЯЯЯЯ КОТЛИНОПЕРЕМОГА


Смысл в том что с поддержкой гугла(даже если там по факту просто встроенный плагин) не бояться и использовать котлин будут намного охотнее.

>Когда саппорт либо перепишут на котлин, тогда и приходите.


Вот тут щас пояснил резко свой вскукарек.
#24 #993052
#25 #993071
сап аноны я как студент с энтузиазмом изучал андроид разработку пол года (каждый день по 2-24 часа) кто может подсказать какой стек нужен и как охотно берут джуниоров
PS сам из харькова
993417995625
#26 #993254
>>992480
Я вот только не понял, теперь поддержка котлина там официально, а поддержки golang нет (плагинами, неофициальна)??
993290
#27 #993290
>>993254
Зачем на андройде golang если есть jni и плюсы?
Лишь бы корутинок да побольше?
993322
#28 #993322
>>993290
Ты, мой боевой друг, не понял. Я к тому что гугл прикрутил котлин, а на го болт ложит?
993334993550
#29 #993334
>>993322
Это ты, все знающий друг, не понял. Котлин прикручивать был смысл. Для го в андройде юзкейсов вообще нет. Ну и хуле что го язык гугла и они его пиарят? Они там еще не настолько ебанаты чтобы пилить поддержку языка, который там нахуй не всрался. Хотя дело скорее в деньгах, если бы им это почти ничего не стоило то навернаяка бы прикрутили, специально для долбоебов, которым ЛИШЬ БЫ МОЙ ЛЮБИМЫЙ ЯЗЫЧОК БЫЛ. [spoilerИ это я не на тебя намекаю, на случай если захочешь триггернуться[/spoiler]
993337993376
#30 #993337
>>993334

>Они там еще не настолько ебанаты


Ебать ты наивный оптимист.
993345
#31 #993345
>>993337
Все таки не настолько чтобы тратить кучу бабла на это.
993349
#32 #993349
>>993345

>Все таки не настолько


Мальчик, сколько тебе лет такому наивному?
993420
#33 #993376
>>993334
Блядь, боевой дебил ты, я другое спрашивал
993420
#34 #993417
>>993071
https://habrahabr.ru/post/328888/
Вот тут неплохо расписано про требования к джуну. Не обращай внимание на название статьи.
#35 #993420
>>993349
Хех, школьник-ценник все пытается свести к возрасту, ничего нового.
>>993376
Поддержки там нет и я тебе написал почему это глупый вопрос. А тебя так рвануло, что аж семенить начал.
#36 #993427
Тут братушки бульбаши есть? Сколько можно просить андройд джуном в Минске? За 700 уе кто-нибудь возьмет?
994110994665
#37 #993436
>>992480
Что это вообще под собой подразумевает? Что значит first-class citizen? Это чисто политическое решение типа барин даёт добро?
993542
#38 #993445
Ни кто не сталкивался с таким? Использую в приложении chromium web view версии 58.0 на Android 6. Загружаю в него локальную страницу с формой, скриптом на js и рекапчей. В рандомный момент (иногда сразу иногда через пару часов работы приложения) после загрузки страницы перестают работать кнопки (input) и не нажимается галочка на рекапче. При этом нет никаких сообщений в logcat и консоли JavaScript. Обновление страницы или повторная загрузка не помогают. Пересоздание webview тоже не помогает. Баг исчезает только после полного перезапуска приложения.
993669
#39 #993542
>>993436
Там же написано всё. Тулкиты запилят, сдк обняшат, будут учавствовать в жизни языка (собираются создать комитет по развитию как в жаве) и тд.

Вообще, они давно испытывают симпатии к продуктам жб (тот же переход с эллипса на хуитку основанную на идеи как б намекает) и просто пугают в край ахуевший от хорошей жизни оракл. В любом случае для нас это зрелище и ништяки с барского стола.
#40 #993550
>>993322
А нагую гуглу прикручивать го? Абсолютно несовместимый я жявой язык (вот представь, как ты там жабье сдк хотя бы будешь прикручивать на структурки и функции), с абсолютно другой целью (утилизировать ядра процессоров), которому сначала надо ещё хотя бы компилятор в жвм байт-код запилить, после чего перехуячить половину вм чтобы запилить корутины (которые прям супер лайтовые и с динамическим резайсом стёков и прочей хуитой), потом портировать его сборщик (который, напомню, жрёт цпу как не в себя ради низкого латенси в расчете на серверное железо) и... заставить кого-то на этой хунте писать. Ну рили, местные аборигены даже котлина боятся. Я таких только в своём пту видел, только там они как пять лет сидели на седьмом вб так и седят
993551
#41 #993551
>>993550

> нагую


> хунте


>седят


Ебучий автокомплит работает как обычно только когда не надо.
993619
#42 #993619
>>993551
Не переживай, твой высер все равно никто не прочитает
993681
#43 #993654
Кто как использует Rx? Я лично использую его только для реквестов. Но тут посмотрел один код, где им ловили онскроллы, и хуярили пагинацию. Но ведь юзать вью, как источник событий - ебаный оверкод? В презентере будут одни сплошные цепочки Observable, тестировать и читать это будет очень тяжело. Паблик методов почти нету, только внутренние конфигурации цепочек типа
view.onButtonXPressed()
.flatmap((Object o) -> loadData())
.subcribe(..)
Или я не прав, и принято хуярить на Rx всю логику?
993699
#44 #993669
>>993445
Бамп
#45 #993681
>>993619
Да в курсе я что мой пост слишком сложен для местной фауны аборигенов.
#46 #993699
>>993654

>принято


Принято хуярить везде где есть асинхронное говнецо. Может быть со скролом лучше обойтись subjectои или relayем, что бы не городить flowable для блока.
12111 Кб, Webm
Help. #47 #993763
Анон, помоги.
Есть идея сделать небольшой проектик в качестве практики. До этого ничего сам не создавал и поэтому хочу попросить помочь разобраться со структурой. Будет одно активити с VideoView и Button. Сразу возникает вопрос по поводу по поводу макета. Какой макет выбрать (RelativeLayout/LinearLayout?) и как сохранить нормальный внешний вид при повороте экрана? Кнопка выходит за границы экрана, скролл в таком положении не уместен. Так же интересно, как закастомить контроллер видео (как на YouTube, например)?
993774993904
#48 #993774
>>993763

>>RelativeLayout/LinearLayout


какой удобней

>>как сохранить нормальный внешний вид при повороте экрана



отдельно сверстать для лэндскейпа

>>как закастомить контроллер видео


а от это хуй знает, ни когда не работал с этим. Если с ютубика будешь видео крутить, то у гугла есть библиотека со своим плеером
#49 #993788
Бля сосаны, я запутался. Они на конфе сказали что теперь можете забить на мульти апк, мол маркет сам порежет и разложит ресурсы/бинарники и пользователю будет выдавать хорошо оптимизированный апк. Но как тогда быть с мультиоконностью или сменой dpi. Там же размерчики меняются, а у меня могут быть специфичные ресурсы. Или эта услугу плей маркета по оптимизации апк опциональна?
993820
#50 #993820
>>993788

> мультиоконностью


Лейауты думаю резать не будет.

> сменой dpi


Ты можешь только xxxhdpi ресурсы добавлять в апк, ведроид тебе в рантайме сам отскейлит под нужный dpi.
993823
#51 #993823
>>993820
Хуево он отскейлит, но я послушал внимательней, лэйауты резаться не будут, а для всего остального есть svg и webp
#52 #993904
>>993763

>Какой макет выбрать (RelativeLayout/LinearLayout?)


PercentRelative, PercentFrame, ConstraintLayout.
Не нужно будет верстать 70% экранов.
993910
#53 #993910
>>993904
Я не шибко уверен, что до таких масштабов проект дорастет. Мне бы на свой телефон макет сверстать и уже хорошо. Про первые два не знал, чем от мною указанных отличаются?
994089
#54 #994089
>>993910
очевидно, названием и тем что там можно задавать высоту/ширину в процентах
#55 #994110
>>993427
бамп
#56 #994142
ДА ЕБАНЫЙ В РОТ БЛЯТЬ КАКОЕ ЖЕ ВСРАТОЕ УГРЕБИЩЕ ВАША СТУДИЯ И ВЕСЬ ВАШ ТРАХОМУДИЧЕСКИЙ БЛЯДОПРОЕБАНИСТИЧНЫЙ АНДРОИД-ДЕВЕЛОПМЕНТ-ЕБАНОИД-ГОВНОБЛЯДИМЕНТ И ВСЯ УЕБАНСКОЕ ЖАБЬЕ БОЛОТО ПЕРЕПОДНАПОДВЫПЕРДНУТЫХ КУСКОВ ГОВНА. СКИНУЛИ СУКА БЛЯТЬ НАХУЙ СЫРЦЫ ЗАТАРЕННЫЕ, ПОПРОСИЛИ ДОДЕЛАТЬ, Я КАК УМНАЯ МАША БЛЯТЬ РАСПАКОВЫВАЮСЬ ГОВОРЮ ДЕЛАЙ СУКА ПРОЕКТ ИЗ СУЩЕСТВУЮЩИХ СЫРЦОВ, А ЭТА ЗАЛУПА БЛЯТЬ НЕ МОЖЕТ ДАЖЕ С ЗАВИСИМОСТЯМИ САМА РАЗОБРАТЬСЯ, ПИЗДОС БЛЯТЬ НАХУЙ ДВА ЧАСА В СРАЧЕЛЬНИК ПРОГАНДОШИЛСЯ ИЗ-ЗА ТОГО ЧТО БЛЯДОЕБАНОИД-ХУЕМУДИЯ НЕ УМЕЕТ БЛЯТЬ САМА ДУБЛИРУЮЩИЕСЯ ЗАВИСИМОСТИ УБИРАТЬ, НУ ОХУЕТЬ ТЕПЕРЬ. ЛАДНО ХУЙ С НИМ, ГОВОРЮ ЭТОМУ ПОДЗАЛУПНОМУ СЫРУ ЗАПУСТИТЬСЯ И ТУТ БЛЯТЬ БАТТЕРНАЙФ ДРИЩЕТ ПРЯМО СЕБЕ В ШТАНЫ ЭКСЕПШНОМ, ЧТО НЕ МОЖЕТ НАЙТИ ВЬЮХУ ПО АЙДИШНИКУ, НУ ОХУЕТЬ ТЕПЕРЬ БЛЯТЬ. ПОШЕЛ РАЗБИРАТЬСЯ, ТУДА-СЮДА, ХУЯКС - В ЖИДКОМ ДИНАМИЧЕСКИ СГЕНЕРИРОВАННОМ ДРИСТОПШЕНЕ ЕБАНАЙФА АДИШНИК ВООБЩЕ ХУЙ ПОЙМИ ОТКУДА ВЫСРАТЫЙ, В R АЙДИШНИК ДРУГОЙ, ПОСТАВИЛ ЛОГИ - ВЫВОДИТСЯ ВООБЩЕ ТРЕТИЙ НАХУЙ БЛЯТЬ. АХУЕННО БЛЯТЬ. ПОМЕНЯЛ ЛЭЙАУТ, СМОТРЮ - А ЭТОТ МОЧЕГЛОТ ГОНДУРАСНЫЙ R НЕ РЕГЕНЕРИРУЕТ НИХУЯ БЛЯТЬ, ПОЭТОМУ И АЙДИШНИКИ ЕЩЕ ОТ ЧУЖОГО БИЛДА ТАМ ОСТАЛИСЬ И НИХУЯ НЕ РАБОТАЕТ. НУ ОХУЕННО, ДУМАЮ, ЩАС УЗНАЮ, КАК ЕГО СГЕНЕРИРОВАТЬ. И ТУТ ХУЯКС БЛЯТЬ - НУЖЕН ГРАДЛЕ-ОБЪЕБАДЛЕ. А ХУЛЕ ТЫ, ГНОЙНАЯ ТРЕЩИНА НА ЗАЛУПЕ, НЕ МОГ СРАЗУ МНЕ СВОЙ ГРАДЛЕ ЗАПИЛИТЬ КОГДА Я ЕЩЕ ТОЛЬКО ПРОЕКТ ПИЛИЛ? ЛАДНО БЛЯТЬ, ХУЙ С ТОБОЙ, СОЗДАЛ НОВЫЙ ПРОЕКТ С ОБЪЕБАДЛЕ, СКОПИРОВАЛ ТУДА СЫРЦЫ, МОДУЛИ-СРАКОДУЛИ, ХУЕ МОЕ БЛЯТЬ. НАЧАЛ СОБИРАТЬ - ЕБАТЬ МОЙ НЕЖНЫЙ ХУЙ ВАЗОЙ ВРЕМЕН ДИНАСТИИ МИН, ДУПЛИКЭЙТ КЛАСС БЛЯТЬ НАХУЙ СУКА НАХУЙ ЕБАНЫЙ В РОТ БЛЯТЬ. Я УЖЕ НЕ ЧЕЛОВЕК БЛЯТЬ, Я ДЕВЕЛОПЕР НАХУЙ
996220996225996272
#57 #994145
io 2k17 прямо праздник какой-то, сначала котлин теперь вот архитектуру для iq 24 даунов обещают, например.
https://www.youtube.com/watch?v=FrteWKKVyzI
994339994451
239 Кб, 990x1426
#58 #994148

> АЙДИШНИКИ ЕЩЕ ОТ ЧУЖОГО БИЛДА ТАМ ОСТАЛИСЬ

994155
#59 #994155
>>994148
ЧЕ ТЕБЕ НЕПОНЯТНО, ПЫНЯ? МНЕ СКИНУЛИ СЫРЦЫ ЦЕЛИКОМ, ВМЕСТЕ С УЖЕ НАГЕНЕРИРОВАННОЙ ДО МЕНЯ ДРИСНЕЙ
994160994697
#60 #994160
>>994155

> СКИНУЛИ СЫРЦЫ ЦЕЛИКОМ, ВМЕСТЕ С УЖЕ НАГЕНЕРИРОВАННОЙ ДО МЕНЯ ДРИСНЕЙ


Ну так а хуле ты хотел? В приличном обществе за такое убивают сразу нахуй.

Ну и сам ты явно ванек-долбоебок, если не знаеш какие файлы относятся конкретно к проекту, а какие генерирует градл, сам андройд, студия и т.д. Для таких валенков специально есть gitignore файлы, в которые добавлено все то, чем ты не должен срать в репозиторий. Ах да, ты навреное просто взял и папку с проектом с чужого компа скопировал.
12 Кб, 280x340
#61 #994162
Какое приложение запилить для показа на собеседованиях? Изучил все основы, сейчас клепаю по туториалам всякую фигню. Что нужно написать, чтобы взяли самым простым джуном, тысяч на 35-40 в Москве?
994163
#62 #994163
>>994162
клон клиента телеграмма
994181994201
#63 #994181
>>994163
Со встроенным кейлогером.
994191994201
#64 #994191
>>994181
Естественно. Тогда и выбор вакансий побольше будет.
#65 #994201
>>994163
>>994181
Остряки мамкины подъехали.
994214
#66 #994214
>>994201
А что ты собрался им показывать todolist? Приложение заметок или прогноз погоды? Поржем потом с тебя в "мы вам перезвоним" треде.
994235994265
#67 #994235
>>994214
Поэтому я и спрашиваю, что написать. У меня то работа есть и я получаю 50к, мне норм в плане денег. Андроид разработкой хочу заниматься для души и перспективы роста зп.
#68 #994265
>>994214
Почему бы и нет. Если твоя цель написать именно для резюме, накидать этот тудулист на чистой архитектуре и в хуй не дуть.
#69 #994339
>>994145
Ну а хули, действительно не плохо и можно даже без фреймворков и кучи либ делать нормально. Они же про Instant Apps затирают, а там все должно быть супер мелко.
994451
#70 #994347
Сап. Насколько сложно сделать приложение-книгу? Даже не ридер, а просто 1 текстовый файл просматривать, как в читалке. ViewPager'ом листать можно, а как разделить весь текст на страницы лол, как сделать поиск? Не тупо же одной строкой хранить файл в преференсах? Как бы вы делали?
994369
6 Кб, 864x419
#71 #994369
>>994347

>Как бы вы делали?


В былые времена на потоках и сообщениях делали.
#72 #994451
>>994145
>>994339
Годный коммент с Хабра:

Попробовать то обязательно стоит, может взлетит. Но если посмотреть их мастер-классы и доклады на предыдущих I/O, то можно заметить примерно такое:
— ребята, используйте AsyncTask
— а не, удобнее использовать пустой Fragment с setRetainInstance(true)
— короче, используйте фоновый сервис и ServiceConnection/ResultReceiver
— погодите, мы вам Loader и LoaderManager запилили
— всё фигня, теперь у вас есть JobScheduler!

Хотя, возможно, я утрирую. В любом случае «MVVM» + Data Binding должны хорошо дополнить друг друга.
994456
#73 #994456
>>994451
Да, видел, но мне кажется с Room все будет норм, там просто нечему особенно портится, ну кроме быстродействия.
#74 #994483
>>992478 (OP)

>Build an Android App faster than you can FAP w/ CodeBabes!


Чёт привстал. Перекатываюсь на андроид/;жаву

Мимо_жс_пограмист
994486994502
sage #75 #994486
>>994483

> Перекатываюсь на андроид/;жаву


> Мимо_жс_пограмист


Не стоит.
994536
#76 #994502
>>994483

>Мимо_жс_пограмист


З А Ч Е М ?
994536
32 Кб, 669x229
#77 #994530
>>992492
Бля, я серьезно. Я вообще по фортрану и не хочу андроида. Неужто ваш оп дальше первого урока не ходил?
994569
#78 #994536
994546
#79 #994546
>>994536
Тому что если ты не целишь в кровавый интерпрайз то менять вебпарашу на андроид - "шило на мыло.".
254 Кб, 627x459
#80 #994562
Лол (х2)
1233 Кб, Webm
#81 #994569
994682996218
#82 #994665
>>993427
а хотелка не обсрется? умеешь хоть что?
994667
#83 #994667
>>994665
Я не вкатывальщик после уроков.
Умею в андройд, лол, щетаю на хорошом уровне. Пользовался и знаю все йоба либы, упоминавшиеся в треде. Есть 3 самолично написанных приложения, среднего уровня. Одно юзает opengl и opencv. Остальные без выебонов, в рамках фреймворка.

>а хотелка не обсрется


Неа, я с рубипараши и 300-500 бачей могу получать хиккуя дома и макакируя по ночам 4-5 часов. Если на 600-700 бачей в Мск джунов в принципе никто не берет, то оно мне и нахуй не нужно.
996270997580
#84 #994682
>>994569
Ебёт же кто-то.
#85 #994697
>>994155
gradle clean
#86 #994703
Доброго времени суток!
Как сделать ограничение доступа(отключение Wi-Fi,интернета,связи) под пароль?
Заранее спасибо.
994731
#88 #994801
С чего начать вкат в Rx? Хочу перевести пару ублюдочных асинков на него сейчас. Просто сделать какой-то класс типа HuitaFetcher и добавить в него методов, которые будут испускать потоки данных?
ФП более-менее знаю.
#89 #994810
Как обновить приложение,если забыл/потерял ключи?
994836
#90 #994836
>>994810
Никак. Только заливать с новым айди
#91 #995110
А почему гугл вдруг сейчас MVVM использовать предлагает? Большинство разработчиков вроде пишут MVP. Какие преимущества у MVVM? Её ведь наоборот тестировать сложнее: вьюху можно просто замокать и удобно и легко протестировать презентер, а ViewModel будет иметь много зависимостей от андроидовских классов, да ещё data binding там.
В чем смысл?
996153
#92 #995144
Где можно почитать про то, как устроить лучше работу с базой данных? Сейчас у меня отдельный класс со статическими методами, в которые я передаю бд и вызываю равквери
995399996584
#93 #995399
>>995144
тоже ща на этом этапе. Дальше, полагаю, обёртки-хуёртки типа Realm, stor io, итд. Гугл вот недавно выкатил Room, но у гугла обычно все игрушки деревянные и прибитые к полу.
#94 #995625
>>993071
Только изучал? Что-нибудь запилил?
1001825
#95 #995752
>>992478 (OP)
сап чатик, тут это js макака не может avd запустить, вроде выхлоп консоли в гугл писал, но ниче дельного не нашел
порядок действий:
cd ~/Android/Sdk/tools
./emulator
=> zsh: exec format error: ./emulator
знаю что не очень информативно, только хз откуда логи брать шоб показать
995986995993
#96 #995986
>>995752
по-моему, юзать реальный девайс даже лучше.
#97 #995993
>>995752
file emulator и разрядность твоей системы.
#98 #996020
Поясните: правда ли, что в ДС на рынке ведра голод, и джун с приложением на актуальных технологиях может претендовать на 60к и выше?
Куда не гляну, у всех какая-нибудь хуйня под ведро написана. Только у IOS-господ ещё бывают рассказы про вкатившихся студентов на 80-100к.
sage #99 #996024
>>996020
На рынке нехватка квалификацированных кадров. Среди ничего не умеющих джунов большая конкуренция. Чем больше таких вкатывальщиков, тем сложнее будет найти место или стажировку.
996040
#100 #996040
>>996024
Да ну нахуй, ты хочешь сказать что джуну с приложением в маркете с вторым рексом, ретрофитом, гсоном, тестами и MVP/Clean вместо мешанины во фрагменте надо идти на стажировку?
Где же мой ламповый 2013, когда мне сами предложили джуна за кривой хеллоуворлд из активити со списочком. Почему я тогда зассал и остался учиться в шараге?
996046
#101 #996041
>>996020
Да никто в рашке-дегенерашке ничего не пишет под Андроид, весь софт иностранный, а банк-клиенты давно написаны. Добро пожаловать, это глобальный рынок.
#102 #996046
>>996040

> вторым рексом, ретрофитом, гсоном, тестами и MVP/Clean вместо мешанины во фрагменте


> джун



Ты просто ссыкло и не пытаешься в нормальную вакансию.
#103 #996105
>>996020
да, можно, как я
#104 #996153
>>995110
Поясните нахуй вообще тестировать презентеры/вью (MVP view)?
Смотрел какую-то ебалу от гугл где они тестрируют используя мокито, хуито итд.
Натурально, вызывают showHuy в презентере и проверяют вызвал ли он showHuy на своей вью.
Нахуя это тестировать, скажите мне? Може у меня просто laba1 говноподелки без сложной логики? Приведите тогда пример сложной логики в презентере, которую есть смысл тестировать.
996167
#105 #996167
>>996153
Бро, не все приложения это хеллоу ворды. Порой на один экран приходится делать по несколько презентеров на несколько разные фрагменты. Тестирование это хорошо и это выпрямляет руки. Но зависит опять же от приложения и ваших возможностей. Тестирование это не строгая политика которой надо придерживаться - это просто удобный инструмент в умелых руках.
#106 #996218
>>994569
блять ну почему амриканки такие охуенные сууууууууууука эх почему я не всша родился
#107 #996220
>>994142
бро, как я тебя понимаю. когда с эклипса год назад перешёл (ибо не поддерживают больше, а совсем извращаться заебало), до сих пор кровь из глаз от студии.

ещё jack-n-jill ссаный ввели для совместимости с 8й. охуеть просто. proguard'а + gradle мало же, нужно больше костылей.

ещё нихуя и не обновляется корректно и ворнинги и рекомендации по любой ссаке банальной, которые заебёшься сначала все отключать чтобы норм было.
9962251008609
#108 #996225
>>994142
>>996220
Вы два дегенерата просто, которые не могут освоить инструменты, которыми пользуетесь. У андроида самые приятные инструменты для разработки. Такой же уровень удобства разве что у Qt есть.

Попробуйте ради интереса под ксамарин что-нибудь написать, вот где ад и пиздец.
996255996257
#109 #996236
>>994160
не, студия неок хотя бы потому что генерирует каждый раз .iml-файлы с мусором на 5к строк для каждого модуля проекта.
а вообще можно перечислять долго даже что с ходу в голову приходит.

gitignore это конечно норм костыль, но зачем мне к примеру, ЗАЧЕМ?!, два параллельно проекта вести - gradle и iml?
зачем мне почти каждый раз вручную ребилдить всё при каждом движении, чтобы конфликтов не было с исходниками и xml'ами?
(у меня же автоматика, студия ведь 'за меня' всё понимать должна, онаж intelligent дофига)
#110 #996238
>>994160

про интерфейс самой ide тут конечно вне конкуренции если у тебя экран 3,5 дюйма, чтобы всё уместить.
для больших мониторов (не дай бог нескольких) вообще не приспособлена. почему я не могу одновременно показать список проектов и projects и android и gradle?
а нипочему, потому что пошёл отсюда, вот почему
нафига мне грейдл спамит одновременно в три окна примерно одно и то же при сборке?
как , мать его, log-cat можно было сделать с настолько убогим интерфейсом даже на фоне э-клипса?
я же не могу даже свой символ таба вместо ссаной стрелкидля окна редактора текста поставить - он жёстко в бинарниках вшит.

единственное что норм сделали - нормальный UI-дизайнер. остальное всё - люто тормозящая некондиция (неспроста рекомендуют только на ssd гонять).
#111 #996241
>>994160
про грейдл вообще молчу - стойкое ощущение - что он мне напихивает в первом значении перевода из urban dictionary.
#112 #996245
>>994160
я (был молодым и глупым) раньше думал, что у меня в эклипсе проекты долго собираются. (10 секунд на 20+ проектный воркспейс) студия теперь греет процессор на четыре ядра две минуты для полной сборки этого же списка.

и это ещё не развиваю тему, что студия как и идея не может в нормальные многомодульные воркспейсы.

но выбора-то нет, яж андроид девелопер теперь.

>Ну и сам ты явно ванек-долбоебок, если не знаеш какие файлы относятся конкретно к проекту, а какие генерирует градл



напоследок скажи, вот нафига мне постоянно заниматься тем чтобы чистить то что студия с грейдлами-хуейдлами срёт?

онижеж еще в ProgramData срут активно индексами всех файлов и подобным г
#113 #996255
>>996225
не сомневаюсь, что есть инструменты ещё хуёвее чем студия. но тут не в этом вопрос. от ide, которая позиционирует себя как ОФИГЕТЬ КАК СУПЕР ЙЕЕ удобная и умная - ожиданий больше, хотя бы по кастомизации под себя.

я не хочу работать как 'дядя сказал будет хорошо, я всё', я знаю про каждое говно, которым она срёт на мой диск, я настроил всё до чего смог добраться. но всё что осталось (и \того дофига) меня всё равно очень печалит. особенно при отсуствии альтернатив.
#114 #996257
>>996225

>У андроида самые приятные инструменты для разработки


Давно так не смеялся.

Эти инструменты приятные и удобные ровно до того момента пока ты пишешь хелловорлды в два клика точно по гайду.

>Вы два дегенерата просто, которые не могут освоить инструменты, которыми пользуетесь.


Ты как раз путаешь целевую аудиторию гугла и его ide.
Всё удобство в ней заточено на тех кто НЕ УМЕЕТ ей пользоваться, взаимозаменимых кодомакак, хуярящих MVP, MVVP, MVC и подобное с интерфейсиками на автомате и без мозгов признай это.

Эти инструменты, конечно, скрывают, сложность, причём часто необоснованную, и делают за тебя что-то. пока тебе похуй на это - всё норм.

Но в какой-то момент они начинают делать не то, что тебе нужно, или ты хочешь чего-то ОСОБЕННОГО, да хотя бы не особенного. И тогда всё, пизда. Студия может только по-прямой.
996269
#115 #996261
>>994160

>Ну и сам ты явно ванек-долбоебок, если не знаеш какие файлы относятся конкретно к проекту, а какие генерирует градл, сам андройд, студия и т.д. Для таких валенков специально есть gitignore файлы, в которые добавлено все то, чем ты не должен срать в репозиторий. Ах да, ты навреное просто взял и папку с проектом с чужого компа скопировал.



Кстати, собеседовал недавно на мидла по андроиду. На основании того что они мне напиздели, что дофига все знают и умеют, отправил примерно двадцати тестовое задание и смотрел на результаты.

Угадай, сколько из них прислали мне проект без дрысни с бинарниками и .iml и дистрибутива грейдла, включенным в сборку?

Answer: ОДИН НАХУЙ. И ты думаешь, что кто-то из них знает, что нужно, а не нужно. Да им же всем удобно, радугой ссут просто от студии, не иначе.
996269
#116 #996265
>>996020
Голод только на мидлов и выше.
Джунов, вкатывающихся в айти в 16 лет, бывших автослесарей, решивших поклепать окошечки на фрилансе и прочего скама хоть жопой жри.

Тащемта, если ты закончил вузик по IT-специальности и хуи там не пинал, в андроид на норм уровень вкатиться можно примерно за полгода дрочева гайдов (если норм на Java - ещё быстрее) и ваяния приложений. Во всех остальных случаях у меня для тебя плохие новости.
996534
sage #117 #996269
>>996257
>>996261
Ога, ты не смог освоить самые простые вещи в инструментах, которыми пользуешься, но это оказывается просто мы тупые макаки, а ты неебацо умный и творческий, студия не подходит к твоим высоким стандартам.
996272
#118 #996270
>>994667
Тут, понимаешь ли есть некоторый разрыв inb4: жопы:

Джунов, готовых работать даже за 300 бачей даже в ДС охуеть как много. Если в конторе овер9к бабла течет и есть человеческие ресурсы их обучать - возьмут их, тк дешевле, а шансов что не съебут после обучения - мало. От фрилансеров больше пользы.

А мидлов охуеть как мало, и они все при делах давно. Соответственно мидл андроида может рассчитывать при одинаковой конкуренции уровень зарплаты сеньёра интерпрайзной java. И либо ты качаешься сразу на мидла, либо ты нахуй никому не сдался.

Сеньёрам андроида, по-видимому, дают сразу инвайт в гугл, и 300кк/сек, как приз за то что со всем этим смогли разобраться.
996506
#119 #996272
>>996269

>ты не смог освоить самые простые вещи в инструментах, которыми пользуешься


Я-то как-раз это говно освоил и второй год на нём работаю почти еверидей, в отличие от >>994142

Попизди мне ещё про простые вещи. Грейдл это же так просто. Ко-ко-конвеншн овер конфигурейшн - раздался пронзительный голос со стороны параши. Но пацаны, как всегда, не обратили внимания на это визгливое кукареканье. Пусть кукарекает, что с него взять?

>но это оказывается просто мы тупые макаки


Обобщаешь, я говорил только о тех, кто ссытся радугой от 'удобств' студии. Не уверен, что здесь все такие.

>, а ты неебацо умный и творческий


А-то
#120 #996291
В фш и симуляторе одни, а на девайсе другие(более светлые) Хуевый экран девайса?
996292996295996368
#121 #996292
>>996291
цвета одни*
#122 #996295
>>996291

> Хуевый


Не обязательно. Просто прими как факт.
#123 #996368
>>996291
Цветопрофили, страдай, на каждом экране по разному, в версии 26 завезут менеджмент, но до этого только забивать.
#124 #996506
>>996270
Еще бы узнать разницу между мидлами и джунами в ведре. Знание либ? Проекты?
996567
#125 #996526
Тут сидят гуру, которые отбирают джунов на позицию.
Какой бы вы хотели увидеть проект на гитхабе от джуна?
Чтобы не лепить очередной прогноз погоды
996582
#126 #996534
>>996265
Эти автослесари сливаются после десятой ошибки компилятора через три дня обучения. Это если они победят установку анроид студиои пердолинг с переменными в java7 и
#127 #996564
Какие есть либы для работы с графиками. Использовал lecho.lib.hellocharts - работало все хорошо пока не захотел положить весь констренйтлайаут в скроллвью и после этого графики пропали и не показываются, если не прописать конкретные начения ширины и высоты вместо матчпарент или врап контент
#128 #996567
>>996506
Структура базового фреймворка, общее представление о Dalvik VM, понимание как код превращается в apk (т.е. пояснить за каждый файл проекта, в т.ч. в билде), инструменты сборки и анализа из SDK (хотя бы знать какие зачем нужны и используются), аналогично про базовые классы (сходу мочь перечислить возможные решения под задачу).

Проекты - аргумент только когда они долго поддерживаются, а не за пару вечеров на коленке. Также по чистоте кода исходников и пониманию ООП почти всегда адекватно видно уровень (если не по Android, то точно по Java).
#129 #996582
>>996526
Да похуй же что там будет в целом (или проект, подходящий под текущую хотелку конторы - но это не угадаешь). Если тебе не захочется скачать и начать этим пользоваться самому, то и всем остальным, очевидно, тоже. А если захочется, то наверное догадаешься заморочиться про способы монетизации и распространения.

Для проекта в резюме главное - как. Чистый код, только необходимые библиотеки, продуманный UI, если ты претендуешь пилить фронтенд.
#130 #996584
>>995144
Мидлы/синьорыхуидлы/хуисиньоры как вы организовываете работы с бд?​
997579
4 Кб, 329x165
#131 #996673
Что еще за content_main.xml в макетах типа Drawer'a? От части стало ясно, что это взаимосвязано с main_activity.xml. Но почему-то в разметке не встретил похожей строчки, что одно дополняет другое. Как вообще эта система работает? Что делать, если я хочу переключать пункты в моем боковом меню? Делать это на фрагметах, вставляя в content_main.xml фрейм? Или при нажатии пункта вызывать новое активити с названием макета content_main_2.xml и т.д?
996986
10 Кб, 315x429
#132 #996976
Сори за тупой вопрос, вообще никогда не занимался андроидом, но захотел поклацать рандомный проект с гитхаба.
И собственно вопрос - какой файл надо запустить чтобы посмотреть прогу в действии? Я не понимать
996986
#133 #996978
Реально ли обновить приложение ,зная ключ и пакет,но не имея файла ключей?
996986
#134 #996986
>>996978
В каком виде у тебя ключ? Файл это и есть ключ.

>>996976
Нужно собрать апкашку, потом установить ее на телефон (просто в файлы засунуть и руками установить с телефона или через консольку). Потом опять же руками запустить либо через консольку.

>>996673
Ищи include, он там есть.

>Что делать, если я хочу переключать пункты в моем боковом меню?


Почитать гайды епт, все расписано.
Да будешь менять фрагменты в контейнере. Вызывать новое активити бессмысленно и противоестественно в некотором роде если ты решил делать боковое меню.
997052
#135 #997052
>>996986
Ключ выдает в Google play,когда загружаю с другим ключом и мне выдает старый (ошибка о том,что данный ключ не совпадает со старым)
997056
#136 #997056
>>997052
Это не ключ, а отпечаток, не подойдет.
997200
#137 #997200
>>997056
Что делать?
997217
#138 #997217
>>997200
Искать файл. Если не найдешь нужно новое приложение с новым packageId заливать.
997329
#139 #997329
>>997217
А обновить уже загруженное нельзя?
997370
#140 #997370
>>997329
нет, нельзя.
т.к. это нужно для защиты что злоумышленники взломают аккаунт разработчика и будут туда вирусню заливать в виде новых версий.
#141 #997392
ТОВАРИЩИ
Мне очень нужен Ваш совет. Собираюсь ноут прикупить, да вот не знаю хватит ли его для студии. Dell на i3 5005u, с ддр 4 памятью, фулл хд и 920м. В этом конфиге меня смущает только i3. Есть ли у кого-то опыт работы на таком железе и советуете ли вы его к покупке ? Буду очень благодарен за ответ.
997398997483
#142 #997398
>>997392
Надо чтобы было не меньше 8 гигов оперативки и ssd.
997408
#143 #997408
>>997398
Это уже позже докину. Да и проц бы свапнул, но он впаян
2 Кб, 448x64
#144 #997483
>>997392
Ноут 2013 года, стоит ССД, без дискретной видеокарты. Студия + эмулятор работают, но наблюдаются фризы во время сборки. Оперативка забивается под 100%. Собираюсь докупить еще 4ГБ планку и юзать дальше.
997521997578
#145 #997492
Анон, куда нужно копать, чтобы организовать воспроизведение видео файлов с сервера? Собираюсь проигрывать .webm формат. Простое videoView.setVideoPath работает медленно и записывает видео файлы в память телефона. Интересно, как это организовано на Youtubе.
997494
#146 #997494
>>997492
используй ExoPlayer, там можно нормальный DataSource использовать.
997506
#147 #997506
>>997494
Получается с помощью него смогу не только загрузку контента организовать, так еще и внешний вид кастомный сделать?
997510
#148 #997510
>>997506
Сможешь. И кеширование сможешь.
#149 #997521
>>997483
Спасибо !
997553
#150 #997548
>>992478 (OP)
Призываю знатоков Kotlin. Что это такое? То есть он исполняется JVM или какой-то надстройкой? Просаживается ли производительность из-за оверхеда? Поддерживаются ли из коробки старые версии SDK?
997551
#151 #997551
>>997548
Это мультипарадигменный язык программирования, позиционирует себя как прагматичный язык для JVM. Сейчас есть реализации для JVM, JS и вот потихоньку пилят нативный LLVM.
В случае JVM все те же самые байткод инструкции что и в джаве/скале/груви/цейлоне и тд. Никакого особенного оверхеда нет, просто иногда генерируются больше байткода так как этого требует более красивый код.
Конечно, котлин не зависит от ведра никак, изначально он только в 6 версию джавы компилился, так что все версии ведра поддерживались, вроде бы сделали компиляцию в байткод 8 джавы, что конечно повысит его эффективность, но это не про ведро, ну только если ты конечно не только 24+ апи поддерживаешь.
997554
#152 #997553
>>997521
Только один момент уточнить по поводу процессора нужно. Возможно мой ай3 2330М более производительный, чем 5005u, т.к. второй более урезанный, для экономии энергии. 2330М сильно греется.
#153 #997554
>>997551
Спасибо! А самая модная и молодёжная версия всё так же поддерживает компиляцию в Java 6?
997557
#154 #997557
>>997554
Конечно, зачем ее убирать? Ну точнее поддержку джавы 6-й могут теоретически убрать, но сейас это очень важно для котлина, так как ведро.
997577
#155 #997577
>>997557
Окей, спасибо. Отлично, значит стоит в него вкатываться, потому что кода предстоит генерировать действительно меньше.
#156 #997578
>>997483
Оперативка. 8гб кстати не особо легче делают
997603
#157 #997579
>>996584
Как миддлы и синьоры, очевидно же
#158 #997580
>>994667

>андройд


Вкатывальщик после уроков. Съеби к хуям.
#159 #997583
Аноны, может кто-нибудь дать годную инфу по VKSDK. В частности, как получить уже по годовому реквесту имя и фамилию авторизовавшегося пользователя. Нужно полученное имя с фамилией поместить в TextView. Вот код:

request.executeWithListener(new VKRequest.VKRequestListener() {
@Override
public void onComplete(VKResponse response) {
super.onComplete(response);
VKApiUserFull user = ((VKList<VKApiUserFull>)response.parsedModel).g;

}
});
997877
#160 #997603
>>997578
А что? 16 ставить?
997642
#161 #997642
>>997603
Да.
3 гб студия + 4 гб градл, если у тебя не хэллоуворлд
997654
#162 #997654
>>997642
Ещё 4 гига - эмулятор.
#163 #997791
шалом бандиты, скажите пожалуйста, https://facebook.github.io/react-native/docs/getting-started.html#1-download-and-install-android-studio
мне тут пишут что надо android studio ставить только ради эмулятора/sdk а что отдельно оно не поставляется ? Ибо лишних 400 мб для моего ссд стресс
997830
1 Кб, 949x35
#164 #997830
>>997791

> только ради эмулятора/sdk


а нафига тебе студия без sdk?

если 400мб для твоего SSD стресс - то ты не туда зашёл
997833
#165 #997833
>>997830
да не, sdk то я поставил, я о том, что мне эмулятор нужен, т.к. хочу react-native потестить, а android-studio мне вообще не пригодится
998089
#166 #997877
>>997583
Тебе не приходило в голову, что вот у этого VkApiUserFull есть там поля, методыи т.д.? Охуеть у вас тут уровень, конечно
#167 #998089
>>997833
дак и норм sdk без студии. это студия без sdk не нужна, а наоборот ок, и качается отдельно.

https://developer.android.com/studio/index.html

в самом низу по ссылке же архивы. а внутри образы для конкретных версий ей самой докачиваешь.
998344
#168 #998141
Пацаны, там от мыло ру какой-то университет для андроид девов запускают. Че думаете? Стоит того?
998195998917
#169 #998195
>>998141

>mailсру


Нет хз на самом деле
#170 #998295
Поясните: в mvp (и его вариациях) один view может иметь несколько презентеров? А один презентер - несколько вьюх?
998306
#171 #998306
>>998295
Если экран слишком сложный, то можно сделать несколько презентеров, но сам презентер всегда связывается только с одной-единственной view.
998348
#172 #998329
>>992478 (OP)
Анон выручай, как рутировать android sdk via adb? уже перепробывал всё что мог не рутирует и всё
998330
471 Кб, 2730x1280
#173 #998330
998856
#174 #998344
>>998089
спасибо анон
#175 #998348
>>998306
Нет. Презентер управляет вьюхой через интерфейс, ему можно подсунуть любую и сколько угодно реализаций. А вот вьюха, как правило, управляется лишь одним презентером, поэтому его и не нужно выделять в интерфейс.
#176 #998579
>>992478 (OP)
Есть один удаленный трек с саунклауда. Аппликуха андроида может его проигрывать из закладки History. В браузере там его нет. Как достать этот трекич из кэша апликухи? В папке

>\Android\data\com.soundcloud.android\files


Пусто. Где он может хранится?
998835
#177 #998835
>>998579
В /data/data/<ID приложения> посмотри, но нужен рут.
1000549
#178 #998856
998925
#179 #998917
>>998141
Это же какая-то хуита, аффилированная с geekbrains. Надо смотреть с осторожностью
2029 Кб, 358x272
#180 #998925
>>998856
по первому методу дошел до "плз, скачайте убунту" толком и не понял, что он хочет? Чтобы я скачал убунту и через его консольку дальше что делал?
по второму методу при исполнении ./psneuter получил ответ:
./psneuter
sh: ./psneuter: not executable: magic 7F45
Половина анрут апк тупо не работает =(
998937999024
#181 #998937
>>998925
Анон, денег заплачу, только скажи как рутировать android sdk, у меня уже горит
999024
58 Кб, 604x604
#182 #999024
#183 #999348
Правильно ли я понимаю, что контекст нельзя удерживать только в объектах которые живут дольше активити? Т.е., если я, например, передам и сохраню контект в адаптере, то утечки не будет, потому что адаптер создаётся из активити. А если мне например надо передавать контекст в синглтон, то лучше его там хранить в WeakPtr?
999358
#184 #999358
>>999348

> Т.е., если я, например, передам и сохраню контект в адаптере, то утечки не будет, потому что адаптер создаётся из активити.


Да.

> то лучше его там хранить в WeakPtr


Нет, лучше использовать getApplicationContext, который живет всегда.
#185 #999973
Если удалю приложение из консоли разработчики и загружу новое,то у пользователей оно обновится?
1000256
#186 #1000256
>>999973
нет, в постах выше было об этом, поищи.
#187 #1000549
>>998835
Ок, спасибо.
40 Кб, 916x575
#188 #1000551
Эмм, это нормально? Я ведь не вернусь случайно из внешнего flatMap?
10005591000584
#189 #1000559
>>1000551
Эти ретурны вложенные просто пиздец. И тип после имени тоже пиздец. Еще и ебля с вложенными it охуенная. А документацию к языку писал какой то шизик, по которой описание фичи языка разбита по нескольким фрагментам в вообще разных пунктах.
В рот ебал этот котлин.
1000560
#190 #1000560
>>1000559
А мне норм.
#191 #1000584
>>1000551
Ты как-то неправильно пользуешься rx...
1000586
#192 #1000586
>>1000584
Почему? Если коротко - то я делаю функцию которая будет отправлять запрос на сервер, получать ответ и если в ответе сказано, что сессия умерла - делать релогин, после чего повторно отсылать реквест с новым айди сессии.
1000590
#193 #1000590
>>1000586

>почему


Потому что тело колбека пиздецки огромное. А релогин лучше бы где-нибудь внутри фабрики запросов сделать (ну если у тебя ретрофит), или вообще не делать и выкидывать юзера на логин-скрин, как тот же пейсбук.
#194 #1000784
Госопода, можете накидатьс писок требований мидла для ведра, а сеньйора? Вообще бывают ведроидо-сеньйоры? Могу представить в их качестве только чуваков, которые по взгляду на девайс определяют баги в железе и силой мысли шлют репорты вендорам, и этой же силой ебут ндк что бы выдавать на этой говняшке 60фпс. Но мне кажется это слишком далеко от истины. Вот в EE сеньор знает как все настроить, где накосячат джуны, как лучше организовтаь архитектуру, составить запросы и тд. А в мобилках что?
1000831
#195 #1000831
>>1000784
Если ты не понимаешь, что требуется от сеньиора, значит тебе еще далеко до него.
1000881
#196 #1000881
>>1000831
Ну а про мидла епт.
#197 #1001294
Допустим есть ссылка на видео, например http://URL/video.mp4

Как заставить ведроид открывать её во внешнем видеоплеере и проигрывать, как сетевой поток?
1001509
#198 #1001505
Как реализовать приложение,которое запрещает доступ в сеть?
1001508
#199 #1001508
>>1001505
гугли device admin
#200 #1001509
>>1001294
I N T E N T
N
T
E
N
T
1001510
#201 #1001510
>>1001509
А код показать можешь? я гуглил поинтент, если шо
1001519
#202 #1001514
Приветствую!
Подскажите как решить следующую задачу:
В идеале, чтобы пользователь мог запускать на устройстве только одну программу.
Или закрыть доступ в интернет всем, кроме этой программы, и удалить все развлечение, и запретить их ставить.
Или дать ограниченные права учетной записи и дать пользоваться только ей.

В общем, чтобы устройство использовали только для работы с этой одной единственной программой.
10015211017342
#205 #1001523
Скачал студию вместе с сдк, создал пустой проект, выбрал 4.0 в настройках платформы (у меня телефон на 4.4.4), сбросил апк на телефон, вылетает при запуске с ошибкой. Это, пожалуй, мой первый холлоу ворлд из каропки, который не заработал.
10/10 ПОПРАГРАМИРАВАЛ
1001550
#206 #1001550
>>1001523

>сбросил апк на телефон


>вылетает при запуске с ошибкой


Какая религия запрещает использовать отладку по usb ?
10015541001648
#207 #1001554
>>1001550

>APK не нужен!


Ясно.
1001572
#208 #1001572
>>1001554
Видишь ли, ты мог собрать апкашку которая нормально запустится только с проводом, какая-нибудь хуйня из под инстант рана. Бывала так что у меня через провод норм стало, а после пересылки файла хуйня и главный класс не найден, так что пеняй на себя.
1001577
#209 #1001577
>>1001572

>пеняй на себя


Я создал апк по гайду отсюда https://stackoverflow.com/a/16709979/8022879
Что-то я не вижу здесь упоминаний провода и отадки по USB.
1001586
#210 #1001586
>>1001577
Может ты попробуешь начать с офф. гайдов а не кусочков раскиданных по интернету? Особенно учитывая что такие детали как функционал ИДЕ там не раскрыты. Если хочешь можешь на хабре найти статью посвященную собиранию через консольку.
1001648
#211 #1001625
Как драйвера отлаживать на Андройде? Каждый раз собирать image и шиться?
15 Кб, 946x150
#212 #1001648
>>1001586

>Может ты попробуешь начать с офф. гайдов


>>1001550

>Какая религия запрещает использовать отладку по usb ?


Ок, подключил по юсб, поставил ADB драйвера, выбираю при запуске свой телефон (кстати, гугловский нексус) и вот результат. Мне начинает казаться, что андроид разработка это не программирование, а правильная расстановка костылей и тогда возможно всё заработает. А ведь это всего-лишь чистый проект из темплейтов.
sage #213 #1001651
>>1001648

> андроид разработка это не программирование, а правильная расстановка костылей


Очень интересно слушать мнение эксперта, собирающего хэлоуворлд.
1001657
#214 #1001654
>>1001648
А ты в телефоне режим отладки включил?
1001657
#215 #1001657
>>1001654
Да.

>>1001651
Успокой свое траханье, я уже загуглил ошибку и нашел решение, однако сам факт этой еботни для запуска хеллоу ворлд уже как бы НАМЕКАЕТ. И только слепой не заметил бы эти намеки.
112 Кб, 840x328
45 Кб, 965x140
#216 #1001725
В оф туториале сказано, что нужно привязать именно так, в реальности это так не работает. Господи, какое же уебанство.
1001758
#217 #1001758
>>1001725
Ты просто не умеешь его готовить. Констрэйнт лаяут охуенен.
1001760
#218 #1001760
>>1001758
Я-то сумел его приготовить. Но читать офгайд после этого западло, пускай для начала ошибки исправят, а не путают нуфагов.
#219 #1001825
>>995625
кто может подсказать как в action bar добавить несколько спиннеров и как с ними потом работать?
#220 #1001885
>>1001648
ну чтобы ты понимал всю глубину - так оно и есть. особенно если дойдёшь до support-библиотек.

андроид - не для энтрилевела. андроид - это калека на костылях, которого постоянно подклеивают пластырями чтобы он не сломался. а тебе нужно знать дохуя, чтобы толкать этого калеку туда куда тебе нужно.

с хэлоуворлдами у них ещё со времён плагина для эклипса такая беда. но альтернатив на нативный андроид - нет.
#221 #1001895
>>992478 (OP)

>- Qt — кросс-платформенный фреймворк на C++. Используется в основном для игры и для приложений с высокими требованиями к производительности (обработка изображений, звука, ГИС-системы).


Есть у кого примеры реальных приложений на куте?
1001917
#222 #1001912
>>1001648
Нет, андроид - это вполне себе программирование. Просто тут работает один из принципов на выбор:
1) читаешь выбранный гайд, делаешь по нему.
2) понимаешь глубокие процессы, делаешь самостоятельные движения.
Иного не дано
1002122
#223 #1001917
>>1001895
На его сайте была галерея с примерами. Ссылку не кину, но нагуглить легко.
#224 #1002122
>>1001912
Что делать для продвижения по второму пути?
10028691002900
#225 #1002418
Клиент утверждает что на его девайсе (говно лж с киткатом) не сохраняется бекстек, схематически:
Активити 1(Ф1 -> Ф2 -> Ф3 -> Ф4, после бекпреса вдруг на 1 фрагменте оказывается)

Вторая ситуация:
Активити 1 (Ф1 -> Ф2) со второго фрагмента переходим на новое активити, без очистки стека активитей, после финиша оказываемся на Ф1 вместо Ф2.
Пробовал включить уничтожений активитей в режиме разработчика, не повторяется.

Может ли вообще такое быть? Мне казалось саппортные фрагменты нормально работают. ( В бекстек я все добавляю, даже с тегами, делаю реплейс)
10024631002470
1 Кб, 22x438
#226 #1002455
как убрать эту дрисню?
10024961006829
#227 #1002463
>>1002418
Смотри внимательно код. Возможно, ты где-то заюзал не тот фрагментменеджер (там есть баги, и для определенных версий во вложенных кривые child и support) Алсо, гугли баг на 4.2 с вложенными фрагментами.
#228 #1002470
>>1002418
Ты же чекаешь saveInstance перед работой с фрагментами? Проверь через dont keep activities.
1002652
#229 #1002496
>>1002455
никак, увы
1002507
#230 #1002507
>>1002496
убрал уже
1002518
29 Кб, 762x405
39 Кб, 940x494
#231 #1002518
>>1002507
и правда, завезли в последних версиях.
давно не обновлял.
1002577
2 Кб, 82x496
#232 #1002577
1002892
#233 #1002652
>>1002470
savedState чекаю, короче этот пидоран под главной понимал экран где есть дровер.
А вот с фрагментами я думаю в другом залупа была, я нашел в приложении кнопку которую давно надо было выпилить, но она дает похожий эффект.

Вротебал эту контору сука.
#234 #1002840
Почему андроидовский API ощущается как что-то совершенно разнородное, сотканное и разных, кое-как приклеенных друг к другу кусков.
Пока писал десктопную хуитку на swing и на gtk, эти библиотеки воспринимались как что-то единое, посвященное единой цели. Андроидовский же апи воспринимается скорее как swt - неведомая ебаная неудобная непродуманная хуйня.
10028661002903
#235 #1002866
>>1002840
Потому что легаси хуегаси. Обмазанное тонной хотелок и метаний гугла и опенсоса. Может быть андромеда приде - порядок наведе, но я уже ни на что не надеюсь.
1002904
#236 #1002869
>>1002122
бамп
#237 #1002872
Стоит ли ради аттрибута высоты на версиях до 21 оборачивать все виджеты в CardView?
1002873
#238 #1002873
>>1002872
Нет, уже менее 30% по оценкам гугла <21
#239 #1002892
>>1002577
дак да, пиздато, могут ведь спустя 3 года после первой стабильной версии.
бесил тоже этот гуттер давно тем что сантиметр экрана жрал пустотой, спасибо тебе.
#240 #1002900
>>1002122
1) Учишь линукс, как работает система, где крутятся контексты, и куда нельзя лезть чтобч не ёбнуло
2) Разбираешься с тем что навертели поверх - далвик, зигота, контексты, хуё-моё
3) Ссышь на всех кто говорит что андроид это стильно-модно-молодёжно.
...
SON YOU ARE DEVELOPER NOW
10031661003322
#241 #1002903
>>1002840

>как что-то единое, посвященное единой цели


Дак это цель гугла поддержать свою почти монополию на мобильных устройствах ну и не только, хром жи.
Поэтому и хуяк-хуяк продакшен (особенно на саппорт либах) с непроверенными решениями с кучей багов, пока конкуренты не опередили.
#242 #1002904
>>1002866
Её пидорнули же, на этой неделе новость была.

кто бы сомневался
1003040
#243 #1002975
Реально ли отобразить текст в statusbar как например - текущее время, но при этом слева, а не справа?
Как это делается?
1002981
#244 #1002981
>>1002975
Включи в настройках арабский язык.
1002983
#245 #1002983
>>1002981
Мне нужен арабский и справа-налево мне тоже не нудно писать.
1003053
#246 #1003040
>>1002904
Ну заебись. Маневрируем к fuchsia
1003060
#247 #1003053
>>1002983
*не нужен
#248 #1003060
>>1003040
Её тоже пидорнут, не беспокойся. Это лишь вопрос времени.
#249 #1003139
Хочу советов мудрых.

Есть ли возможность дождаться завершения bindService, и только после успешного байнда продолжить выполнение?

GUI, если что, вообще нет.

Интриги добавляет я хочу подождать байнда в сервисе, который создаёт ОС и ОС вызывает колбеками все выполняемые методы (HostApduService). Поэтому ждать там через sleep и wait - не вариант, ибо всё встанет.

-----------------
И вообще, какого хуя bindService не синхронный?
10031441003150
#250 #1003144
>>1003139
уже пробовал запихнуть bindService в onCreate, всёравно он дохуя медленный и не успевает подключиться к нужному моменту.
1003150
#251 #1003150
>>1003139
>>1003144
Эммм, а почему не использовать ServiceConnection? он специально для этого существует.
1003157
#252 #1003157
>>1003150
Ты не понял, я и так вызываю bindService( intent, serviceConnection ... ).

Так смотри что у меня происходит по шагам:
1. Андроид дёргает onCreate, в котором я вызываю bindService().
2. Андроид дёргает processCommandApdu, в котором мне уже нужен готовый сервис, а его ещё нихуя не подконнектилось.
3. Где-то после андроид дёргает наконец колбек onServiceConnected и у меня подключается.

Всё это он дёргает из одного потока последовательно, поэтому любой wait в том же processCommandApdu не даёт андроиду дернуть onServiceConnected.

-------------------
Короче, не прокатит так, написал в итоге синглтон, к которому оба мои сервиса будут долбиться вместо того чтобы один подключался к другому.
1003370
#253 #1003166
>>1002900
Cпасибо, Анон.
#254 #1003216
Привет.
Есть ли возможность программно выводить Linear Progress Activity indicator вверху экрана, не добавляя при этом progressbar на каждую activity?
В идеале было бы иметь какой-нибудь глоабльный статический класс, с функцией show hide, который будет просто выводить на экране полосу с загрузкой,
1003319
#255 #1003319
>>1003216

> не добавляя при этом progressbar на каждую activity


Нельзя.
Но зато можно добавлять ее грязно прямо в DecorView.
1003548
#256 #1003322
>>1002900
Первый пункт можно раздобыть в книге Таненбаума по ОС? Если нет, то где можно?
1003453
#257 #1003370
>>1003157
Твой выход - сохранять значение в ApduService, до бинда.
Либо пихать его в Behaviour/ReplaySubject, а сам биндинг обернуть в Observable. Потом каким-нибудь флетмапом подписывешь сабжект на обсервабл, а после флетмапа вызываешь свой метод со значением с сабжекта и готовым сервисом
#258 #1003421
Пытаюсь импортировать библиотеку в свое приложение. В гайдах говорится что нужно прописать репозиторий в файл build.gradle, но их там два. Один module:app, второй project:appName. В какой файл вносить изменения?
1003423
#259 #1003423
>>1003421
модуль
#260 #1003453
>>1003322
Да, других вариантов-то и нет чтоб начать.
#261 #1003462
>>992478 (OP)
Сука... извините, не хочу метариаться.

Б-же, какие же американки красивые, АААААА!!!!!!!!!!!!!!!!!!!!!!!!!!
#262 #1003548
>>1003319
Короче, сделал так:
Создал класс BaseActivity с наследованием от Activity.
Переопределил setcontentview, чтобы всё пропихивалось в framelayout, которые содержит вверху intermediate progress bar, в невидимом состоянии и определил 2 метода showloading и hideloading.
Всё, в ходе работы программы, когда надо показывать активность, вызываю showloading, после выполнения hideloading.
#263 #1003854
simpledateformat с System.currenttimemills() возвращает время по gmt 0
как отобразить время со своего часового пояса
на других версиях работает
10038891003927
#264 #1003889
>>1003854
На каких других версиях? Добавь сам недостающее время.
#265 #1003927
>>1003854
Используй Calendar/Date. А то ты взял время в UTC и удивляешься почему без часового пояса.
1004121
#266 #1004100
Как вывести текст в строку статуса?
1004110
#267 #1004110
>>1004100
Можешь вывести под прозрачную строку.
Можешь насрать уведомлениями с генерируемой иконкой уведомления в букву.
#268 #1004121
>>1003927
Никогда не используй time api из джавы ниже 8. Есть threetenabp - бэкпорт, порезанный для андроида, вроде даже календарь саппортит.
#269 #1004132
>>1004121
Зачем мне что бы показать текущее время/отформатировать дату тащить целую зависимость?
10041711004258
#270 #1004171
>>1004132
Чтобы потом с мультидексом ебаться, очевидно же.
10042001004258
#271 #1004200
>>1004171
Че ебаться, вписал в билдскрипт и добавил зависимость, все.
#272 #1004258
>>1004171
>>1004132
Ведроидовский бекпорт ужат же. А так, я не представляю ситуации без мультидекса в 2к17.
Стандартный стек теперь включает RxJava, Retrofit, OkHttp, GSON, даггер, роболектрики-хуектрики для тестов, AutoFactory (которая тянет гуаву(!)). Плюс всякие моки сервера, плагины для рхведроида, всякие MaterialDrawer и FastAdapter частенько юзаются, мосби я уже начинаю видеть в вакансиях. Да что уж там, если гуаву многие юзают и отдельно (вместо маленьковго Apache Commons).
1004268
#273 #1004268
>>1004258
С чего это вдруг стандартный стек? Сам придумал?
#274 #1004898
Хороший тред, отпишусь пожалуй тут
#275 #1004909
Кто-нибудь смог завести PackageInstaller на лоллипопе? Пилю киоск, нужно в фоне обновлять приложение. Пока кроме рута не вижу вариков.
#276 #1004911
Каким образом собираются gps-данные об объектах, местоположение которых мне нужно выводить пользователю по запросу на карте?
10049901005024
#277 #1004990
>>1004911
бамп же
#278 #1005024
>>1004911
из gps-приёмника, очевидно же.
или уточни вопрос.
1005113
#279 #1005113
>>1005024
Я имел в виду организационную часть. Допустим, у меня есть адреса объектов, которые я должен отобразить на карте, но нет координат. Как удобнее получить координаты, чтобы потом записать их в базу и хранить там?
10051231005417
#280 #1005123
>>1005113

> Как удобнее получить координаты


Надежнее всего самому загнать все координаты.
Можно использовать GeoCoder, можно гугловое апи.
#281 #1005417
>>1005113
А айдишников в PlacesAPI у этих мест нет?
#282 #1005651
Сап, андроидач.

Хочу как-то проверять что приложение потенциально не хакают.
Наткнулся на SafetyNet Attestation API (https://developer.android.com/training/safetynet/attestation.html). Кажется лучшим вариантом чем всё проверять вручную.

Вроде обещает кучу защит, но тока минус что чето гоняется в интернеты.
Кто-нибудь использовал/пытался обмануть? Насколько годно проверяет?
12 Кб, 723x320
#283 #1005754
Такая проблема: дублируется сервис, хотя перед запуском по кнопке делаю stopService. В итоге параллельно работают несколько экзекуторов. Кусок кода из метода onStartCommand на пике. Оболочка - MIUI 8.
1005950
#284 #1005950
>>1005754
проставь Log.d везде и разберись что после чего запускается (и не запускается).

очевидно, что твой stopService скорее всего не отрабатывает, т.к. доделывает какую-то задачу.
#285 #1006149
привет.

unrelated вопрос: Хамарина хватит для фриланса, чтоб на еду хватало?
#286 #1006266
Кто-нибудь из местных пользовался интент апи mx player для запуска потока с субтитрами/нескольких потоков?
440 Кб, 540x960
2305 Кб, 1080x1920
#287 #1006381
Как сделать иконку с текстом в статус баре, как на этом скриншоте?
1006653
#288 #1006653
>>1006381
Ты же в иконку битмапу суешь, что хочешь, то и рисуй на ней.
#289 #1006660
Начал тут перекатываться с первой на вторую rxJava и заметил, что при ошибке цепочка observable больше не вызывается. Получается, при ошибке происходит unsubscribe? И как теперь это обрабатывать, если я, например, хочу кинуть исключение где-нибудь в flatMap, но при этом хочу, чтобы цепочка продолжала получать и обрабатывать observable?
#290 #1006661
>>1006660

>при ошибке


при исключении
#291 #1006706
>>1006660
Так давно кажись было, onError всегда был терминальной стадией. Ответ прост НЕ КИДАТЬ ошибки, это же какой-то изврат, возвращай значение позволяющие узнать что произошла ожидаемая ошибка. Например в том же ретрофите можешь использовать Response<T>(не http ошибки свалятся в error) или Result<T> (в error по-хорошему ты не попадешь вообще, содержит либо Response<T>, либо Throwable). Ну или вообще свой Try<T> используй.
1006715
#292 #1006707
>>1006660
Ах да, про передавать налы забудь.
1006710
#293 #1006710
>>1006707
Да, про null я уже заметил.
#294 #1006715
>>1006706

>Так давно кажись было, onError всегда был терминальной стадией.


Только что проверил и да, оказывается так было с первой rxJava. Странно, а мне всегда казалось, что это не так.
#295 #1006825
>>1006660
.onErrorделатьвсякоедерьмо
Набор методов такой
#296 #1006827
>>1004121
Как насчет JodaDate?
1006846
#297 #1006829
>>1002455
А зачем?
#298 #1006846
>>1006827
Joda Time стал частью Java 8 time api. Библиотека выше - оно же, но оптимизированное для ведра.
#299 #1007001
Как изменить функционал уже существующего андроид-приложения? Другими словами, мне нужно, чтобы после установки моего приложения, приложение, которое делало А, начало делать Б. Это технически возможно, и если да, то как?
10070551007086
#300 #1007055
>>1007001
Што простите?
Берешь код текущего приложения, меняешь функционал, устанавливаешь поверх старого.
45 Кб, 200x149
#301 #1007086
>>1007001
наркоман штоле? что ты затеял?
#302 #1007112
>>1004121

>Никогда не используй time api из джавы ниже 8


Почему?
1007115
#303 #1007115
>>1007112
Нет, его как раз и нужно использовать в и делать. Но оно доступно только начиная с sdk 24.
Поэтому вместо него можно использовать thee ten abp.
10071191007126
#304 #1007119
>>1007115
Не, я про то почему нельзя использовать time api из джавы ниже восьмой?
1007127
#305 #1007126
>>1007115
Потому что

> оно доступно только начиная с sdk 24.


Если ты ставишь в проекте minSdkVersion = 24, то всё хорошо. Ели меньше - приложение будет падать на устройствах со старым ведром с Class not found exception
#306 #1007127
>>1007119
А, понял, о чем ты.

Потому, что оно идиотское и неудобное. Поэтому все использовали joda Time, а в Java 8 его добавили в JDK.

То есть использовать-то ты его конечно можешь, но это будет как AsyncTask, евпочя.
10071301007189
#307 #1007130
>>1007127
Окей, понял.
#308 #1007189
>>1007127

> То есть использовать-то ты его конечно можешь, но это будет как AsyncTask, евпочя.


Не будет. Нехуй тащить целую зависимость, если тебе не нужны какие то сложные расчеты дат. Календарь хоть и не очень удобен, но если нужно посчитать сколько осталось до полудня или какая дата будет через 7 дней, то смысла в джоде нет.

К тому же джода тащит свои часовые пояса с собой, а не использует те, что зашиты в андроиде. На старых девайсах это может вызвать проблемы, когда показания джоды расходятся со временем в статус баре из-за смены поясов или летнего/зимнего времени.
1007194
#309 #1007194
>>1007189
Я же писал, что нужно не йоду использовать, а three ten, она инициализируется от поясов системы.

Конечно, ради одной операции во всем приложении тащить библиотеку не нужно, но это и так очевидно.
1007209
#310 #1007209
>>1007194
Тащемта, есть йодовский бекпорт под ведро.
У йоды плюс в том, что есть возможность вычислять пересечения интервалов. Но она и сама больше по размерам, особенно в сравнении с abp
1007215
#311 #1007215
>>1007209

> есть йодовский бекпорт под ведро.


Который крайне неэффективно использует память
http://blog.danlew.net/2013/08/20/joda_time_s_memory_issue_in_android/

Поэтому ThreeTenABP и появилась.
#312 #1007269
>>992478 (OP)
Анон, нужна твоя помощь.
Я пилю меню настроек. Унаследовал свою Activity от PreferenceActivity, написал ее, а дальше ступор. Я почитал гуглодоки но так и не понял пару моментов:
1) PreferenceActivity сам сохраняет выбранные настройки в свой SharedPreferences или это надо ручками прописывать?
2) Если он все-таки сохраняет в них, то как мне передать сохраненные настройки в другой SharedPreferences?
1007417
#313 #1007274
Саб двач. Есть одна проблема... Делаю 2д платформер. Застрял на том что не знаю как сделать так, чтобы персонаж поворачивался в сторону в которую идет. Помогите
1007446
#314 #1007361
К черту детали. Есть какой-нибудь годный тутор замутить скажем веб-сервис и апликуху с регистрацией через гугло\вк\фб-акк, авторизаций через короткий пинкод и отпечаток пальца, с асинхронным подтагиванием какой-нибудь статистиски с сервера. Только не такой, что надо перечитать полтыщи страниц бесполезной хуйни, чтобы найти несколько нужных, а чтобы прям по делу.
1007414
sage #315 #1007414
>>1007361
А может за тебя ещё написать?
1007452
#316 #1007417
>>1007269
1) Сохраняет в свой;
2) Ставишь кооблек на изменение преференса, а там пишешь в свой.
#317 #1007446
#318 #1007452
>>1007414
Нет, достаточно будет тутора.
1007453
#319 #1007453
>>1007452
Так что бы одного по всему этому, то нет. Собирай по частям.
1007456
#320 #1007456
>>1007453
Меня и по частям туторы устроят. Даже просто тупо примеры на гитхабе. Разобраться не проблема, проблема найти.
1007480
#321 #1007480
>>1007456
Могу только по ведру подсобить.
Регистрация:
https://developers.google.com/identity/sign-in/android/start-integrating
https://vk.com/dev/android_sdk
https://developers.facebook.com/docs/android/
хм, где же быть офф семплам хммм

Для работы запросов: http://square.github.io/retrofit/ (семплы на гитхабе). Но если у тебя нулевые знания ведра, то это все как мертвому припарка, начни с офф гайда.
1007500
#322 #1007486
Что можно хорошего почитать по паттернам клиент-серверных приложений? Как хранить сессию, какое количество и в каких случаях надо кешировать данные, стоит ли использовать бесконечный список с подгрузкой данных из базы или правильнее ограничить количество ~10 экранами и выдавать данные строго по фильтрации и тому подобное.
9622 Кб, 300x281
#323 #1007500
>>1007480
Благодарю, поручик.
#324 #1008037
Анон, помоги разобраться со StaggeredGridLayoutManager для RecyclerView. Решил в свободное время под андроид пописать, думал простой прототип за пару часов наколбашу, в итоге уже в сумме дня три ушло на ОДНУ БЛЯТЬ поебень.
Суть в следующем есть StaggeredGridLayoutManager для RecyclerView, адаптер для которого заполняется урлами гифок с giphy, из этих урлов скачиваются гифки и получается главная страница. Ширина всех гифок одинаковая, разная высота.
Так вот: при первоначальной загрузке - грид заполняется в рандомном порядке. Если после загрузки пару раз вверх-вниз поскролить - все становится нормально, кроме того, что последние 3 гифки периодически меняются местами. До этого я дохуя часов ебался с тем, чтобы ВСЕ гифки рандомно не перемешивались. Как заставить эту адовую хуйню работать по-человечески? 3 года назад забил на андроид именно из-за этой анальной ебли с костылями, очень печально, что до сих пор всякая залупа осталась.
Текущий код адаптера https://pastebin.com/fV8Z8mky
Активити https://pastebin.com/nb5mumUD
Остальное, думаю, не так важно.
10080441008056
#325 #1008044
>>1008037
Потому что ты сам пытаешься динамически считать высоту и изменять высоту вьюхи, и очевидно делаешь это неправильно.

Почему этим вообще занимается адаптер? Зачем он хранит мапу с их размерами? Это вообще не его ответсвенность. Что за херня к тебя в onCreateViewHolder и createView творится? Ты вообще понимаешь, зачем ViewHolder нужен?
1008045
#326 #1008045
>>1008044
эти костыли появились потом, после часов разборок. Про холдер я рили не понимаю. Везде это тупо холдер - хранилка вьюхи и всё. У меня так же. Чего я не понял?
1008050
#327 #1008050
>>1008045
ну и я динамически хочу создавать все сьюхи, без говна в виде xml.
1018501
#328 #1008056
>>1008037

> До этого я дохуя часов ебался с тем, чтобы ВСЕ гифки рандомно не перемешивались.


Ничего ты с этим не сделаешь. Проблема вроде бы лежит в корне, что LayoutManager не запоминает позиции проскроленных элементов и из-за этого начинается перемешивание на ходу.
1008063
#329 #1008063
>>1008056
https://github.com/csdodd/GiphyTest
тут перемешиваний нет, я даже клонировал и поменял простой грид на Staggered - нихуя не поменялось. Делал всё аналогично - нихуя не работает. Я не понимаю, какую магическую залупу нужно сделать, чтобы это работало по-человечески. В нормальных приложениях же работает. Или андроид это всё еще лес из костылей?
1008087
#330 #1008087
>>1008063

> GridLayoutManager


Так у него этой проблемы нет, ему же не надо пустые участки заполнять. Перемешивание именно на Staggered.
Можешь сделать свой Staggered, который будет запоминать, как он слейаутил предыдущие элементы, но боюсь ты не осилишь.
1008089
#331 #1008089
>>1008087
так я на Staggered менял, говорю же. И после смена на Staggered там все равно все стабильно.
1008092
#332 #1008092
#333 #1008342
На выбор дают корпоративный ноут - с маком, виндой и убунтой. Сам всю жизнь на винде и линуксе, с маком не работал, но хочется сильно. Есть ли подводные камни и прочие геморрои, если сходу на него пересесть?
В целом для ведройд разработки оно годится? вроде студия под мак есть, хз, что там еще нужно
1008405
#334 #1008405
>>1008342
Никаких подводных, так еще и в придачу получаешь нормальную поддержку скетча, а не костылем в виде зепелина.
10084191008435
#335 #1008419
>>1008405
F I G M A
I
G
M
A
#336 #1008435
>>1008405

> sketch


Проприетарное говно не нужно. Если дизайнер его использует, то пожалуйста. Но экспортировать он его должен в удобный для разработчика формат (разные dpi и т д)
1008444
#337 #1008444
>>1008435

> Проприетарное говно не нужно


У тебя дизайнер пользуется гимпом?

> Но экспортировать он его должен в удобный для разработчика формат


Ты хочешь получать готовые ассеты от дизайнера? А если твоя реализация компоновки не будет совпадать с его? Размеры текста на пнгшках будешь высматривать?
1008448
#338 #1008448
>>1008444
Я не знаю, чем он пользуется и не хочу знать.

https://m.habrahabr.ru/company/e-Legion/blog/263303/
1008471
#339 #1008471
>>1008448
К тебе пришли иконки с отступом, тебе нужны без (или наоборот). Вместо того, чтобы в скетче/фотошопе/любом говне нажать 1 кнопку экспорта ты пишешь своему дизайнеру перерезать и ждешь, когда он это сделает. Что-то такое себе.
#340 #1008587
Поясните за перекат на Kotlin. Конвертнул один файлик, в итоге получаю невнятный NPE на onCreateLoader. Откатил обратно - все работает. Что за беда такая?
1008589
#341 #1008589
>>1008587
Вангую, что второй параметр должен быть обозначен как nullabale, т.е:
fun onCreateLoader(id: Int, args: Bundle?)
10085931008662
#342 #1008593
>>1008589
Хм, спасибо бро, завтра попробую.
#343 #1008609
>>996220
Ну вот уж нахуй
Ебал этот эклипс куда можно и нельзя
Этот ебучий кусок ебанины по два раз в день проебывал зависимости из проекта и отказывался хоть как то работать.
Слава студии
#344 #1008662
>>1008589
Ты был прав. Но при этом сразу следующа трабла:
Было
Cursor previousUpdatedOne = (Cursor) view.getTag(R.id.updated_cursor);
if (previousUpdatedOne != null)
previousUpdatedOne.close();
Стало
val previousUpdatedOne = view.getTag(R.id.updated_cursor) as Cursor
previousUpdatedOne?.close()
Ругается
kotlin.TypeCastException: null cannot be cast to non-null type android.database.Cursor
Я хз че ему надо, помогач.
1008668
#345 #1008668
>>1008662
Сам спросил, сам отвечаю
as? Cursor
#346 #1008726
Как реализовать звуковой скремблер телефонных разговоров?
или просто запись звука и передача на другой телефон?
1008871
#347 #1008871
>>1008726
1) Записываешь звук микрофоном в сервис
2) Сбрасываешь записи на сервер

Или тебе разговоры записывать?
1008903
#348 #1008903
>>1008871

>Или тебе разговоры записывать?


This.
1008934
#350 #1008986
>>992478 (OP)
Задаю:

> Qt, Xamarin, PhoneGap/Ionic/Titanium/ReactNativ, BugVM, LibGDX


На этом всем можно писать полноценные годные проги, игры, етц, ничем не хуже жабных/котлиновых или это все квадратноколесные велосипеды? При отсутствии у фреймворка требуемой возможности, можно ли из него обратиться к родному API ведра?

И еще: как у ведра обстоят дела с работой с фингерпринт-сканерами? Можно получить "фотку" отпечатка или хотя бы инфу о том, что "степень совпадения отпечатка А и отпечатка В равна С процентов"? Есть какой-нибудь гайд по хеллоуворлду с фингерпринтом (например, локскрин)?
#351 #1008988
>>1008986
На Xamarin под Android никаких проблем, есть все что в стандартном SDK под Java. Про iOS не знаю, никогда не писал и не тестил.
#352 #1009006
А со Swift сейчас какая ситуация? Что-нибудь можно уже писать?
1009037
#353 #1009037
>>1009006
Можно. Под iOS.
1009083
#354 #1009057
>>1008986

> полноценные годные


Нет. Работающие - да.

> Можно получить "фотку" отпечатка или хотя бы инфу о том, что "степень совпадения отпечатка А и отпечатка В равна С процентов"?


Нет.
1009153
#355 #1009058
Посоны, какую пекарню надо чтобы не тормозило? Чтобы быстро собиралось и эмулятор не тормозил.
1009059
#356 #1009059
>>1009058
8 оперативки и ссд.
1009060
#357 #1009060
>>1009059

> 8


16. Студия 2.5 отожрет, градл 4, браузер еще полтора.
#358 #1009083
>>1009037
Гугл год назад обещал, что будет Swift для Android, и где?
10090971009128
#359 #1009097
>>1009083

> Гугл год назад обещал


Пруфы будут? Желательно не от журнашлюх.
#360 #1009128
>>1009083
Есть уже давно Swift для Android. Kotlin называется
1009141
#361 #1009141
>>1009128
Когда это пидорашье говно научится собирать под iOS - приходите.
1009157
#362 #1009153
>>1009057

>Нет. Работающие - да.


ФонеГап, Титаниум, ксамарин и кьют чем неполноценны?

>Нет.


А что можно тогда, и как это работает?
sage #363 #1009157
>>1009141
Что ж ты так сразу-то порвался
#364 #1009180
Котаны, вам не кажется, что вся вот эта ебань, типа RxJava - это творения заигравшихся в ООП людей, когда для простейших асинхронных операций нужно шел SUBSCRIBER через OBSERVER а там FLATMAP?
10091821009212
#365 #1009182
>>1009180
Собственно и от callback hell оно не спасает.
#366 #1009212
>>1009180
Заглянул сейчас на их гитхаб. Субъективное ощущение - хипстота пытается сделать, чтобы можно было легко и непринужденно ебошить ту же асинхронную колбэковую лапшу, что и в любимом жс.
1009373
#367 #1009373
>>1009212
В js это сделано существенно компактнее и лаконичнее.
10093821009384
86 Кб, 749x547
534 Кб, 1323x900
#368 #1009382
>>1009373
Что может быть лаконичнее.
#369 #1009384
>>1009373
А главное - в жс лямбда это просто функция, а не ебаный анонимный класс, который обходится в дохуиллиард раз дороже. Но хипстоте похуй, ведь память - не ресурс.
1009409
#370 #1009394
>>1008986
Б.а.м.п
#371 #1009405
>>1008986
Кучу раз уже обсуждали. Писать можно, но будет кривое, лагающее и трудноподдерживаемое говно. Попробуй найти в google play приложение, написанное на этой параше, у которого будет больше 10к установок и рейтинг выше 4.

Единственное исключение — Qt, но смысл на нем писать есть только для сложных приложений, где нужна работа с 3D, обработка звука/видео, гис-системы и т.д.
1009409
#372 #1009409
>>1009384

> ведь память - не ресурс


80% твоего потребления памяти будет все равно приходится на byte[], а не ссаные лябды/колбэки.
>>1009405

> Попробуй найти в google play приложение, написанное на этой параше, у которого будет больше 10к установок и рейтинг выше 4.


Твиттер на реактнативе.
1009415
#373 #1009415
>>1009409

>80% твоего потребления памяти будет все равно приходится на byte[], а не ссаные лябды/колбэки.


Дело не в этом, а в том, что новый анонимный класс на каждую лямбду - это же пиздец, товарищи. А эти пидоры из rx предлагают их хуярить буквально на каждый чих.
Вообще, люди, которые проектировали жабу, тоже так думали - а похуй, все равно 80% памяти будет занято полезной нагрузкой, ну и их любимое "RAM is so cheap nowadays". И что мы получили в итоге? Вопрос риторический.
117 Кб, 734x438
#374 #1010042
котаны, почему не запускается эмулятор ?
там вывод uname еще, если есть еще какие то логи где-то, то скажите как найти, пробовал это
https://stackoverflow.com/questions/43648473/android-emulator-throws-error-cannot-execute-binary-file-exec-format-error
ноль реакции
10101291010141
#375 #1010129
>>1010042
сам спросил, сам ответил, двач хули...
Android/Sdk/emulator => Android/Sdk/tools/emulator
-forse-32bit => force-32bit
алсо так и не получилось эмулятор запустить нормально, дебажу на реальном девайсе
#376 #1010141
>>1010042

> котаны, почему не запускается эмулятор ?


Потому что Ubuntu.
1010202
#377 #1010202
>>1010141
ути-пути, ну могу на арче запустить, так он тоже 32 битный что за снобизм ?
838 Кб, 1024x577
#378 #1010216
Посоны, halp. Нихуя не понимаю, как с этим ебучим гитом студию подружить.
По разному пытался, и просто гитом из консоли:

>git clone }JvvANUSbitb$}BucketPUNCTUMoreO+g/sychov/mokrayapiska.git" target="_blank" rel="nofollow noopener noreferrer">https://sychn|povANUSbitbucket"b{PUNCTUMor;l@g/sychov/mokrayapiska.git


>cd mokrayapiska


>echo "# My project's README" >> README.md


>git add README.md


>git commit -m "Initial commit"


>git push -u origin master


Потом в этой директории пытаюсь студией новый проект создать, она, какого-то хуя делает проект в папке mokrayapiska\mokrayapiska
Всё снёс, заново пытался сделать при создании проекта clone projecе from version control system, создаётся тупо пустой проект, с одним ридми файлом.
Жопа бля полная, какого хуя так сложно всё?
1010455
#379 #1010455
>>1010216
А зачем ты создаешь новый проект, если ты уже скопировал готовый проект?
#380 #1010465
Вкатываюсь в андройд-разработку, посмотрел на апворке, какие зп и количество работы. Правда, количество разработчиков пугает тоже.
Уже скачал андройд студию!
10104811010812
155 Кб, 300x300
#381 #1010481
>>1010465
Держи в курсе
#383 #1012172
Как думаете, какими контролами делается вот такое
https://www.youtube.com/watch?v=DpUCfG1UdoI
Т.е. лист с которым можно взаимодействовать, увеличивать его как фотографию растягивая двумя пальцами, перемещать и тд.
10121871012220
6171 Кб, Webm
1192 Кб, 768x1280
#384 #1012187
>>1012172
Вот еще видео и картинка в большем разрешении.
1012199
#385 #1012199
>>1012187
Дивы обыкновенные, а можно и табличную вёрстку, всё едино.
Погугли inner html
1012211
#386 #1012211
>>1012199
Да вроде не гуглится...
1012215
#387 #1012215
>>1012211
Как же не гуглится, когда:
document.getElementById('cell-a-4').innerHTML = '...';
Выдаёт сотни линков. Так оно и работает, и ничего сложного там нет.
1012216
#388 #1012216
>>1012215
А хотя подожди подожди подожди...
Андроид? Ява?.. У вас там HTML'а нет поди.
1012218
#389 #1012218
>>1012216
Ну мы как бы в андроид дев треде находимся.
1012219
27 Кб, 200x331
#390 #1012219
>>1012218
Кое-что нашёл по запросу android table layout
1012220
#391 #1012220
>>1012219
Я знаю, как делать таблички, лмфао. И спрашивал о совсем другом. Надеюсь кто-то знающий ответит на мой вопрос >>1012172
1012262
#392 #1012262
>>1012220
Приблуда с игровым движком? Ну или кастомная вьюха в которой хендлятся все эти тачи.
1012295
#393 #1012295
>>1012262
Точно, про игровой движок я чёт и не подумал. А ведь я могу немного в Unity, попробую создать нечто в нём. Спасибо, но вопрос объявляю пока открытым, может кто ещё подскажет.
#394 #1012894
Почоны, а где хранятся ключи из AndroidKeystore?

того что KeyStore.getInstance( "AndroidKeyStore" )

Чет в гугле забанен, нихуя найти не могу, хочу с рутом их достать.
#395 #1012946
Есть что-нибудь типо вордстата или кейтула для Google play?
1012972
#396 #1012972
>>1012946
Есть.
1013008
#397 #1012994
тупой вопрос, да-да знаю в шапке ответ, но все же.
То есть чтобы адекватно писать в Android studio программы хуеграммы, нужны высокие знания жабы? или все же можно попутно и то и то дрочить или слишком много стульев и я сяду на хуй и лучше сперва на жабе сфокусироваться?
1013014
#398 #1013008
>>1012972
Поделись,пожалуйста
#399 #1013014
>>1012994
слишком много стульев. два языка считай учить будешь.

жава как язык и так не особо юзер-френдли для начинающих.
андроид с его эксемелями в разных папках еще менее.

по опыту могу сказать что без жавы вообще лучше в андроид одному не лезть, и лучше лезть уже с опытом любого UI-фреймворка жавы, хоть того же свинга.

но если твоя цель хуяк-хуяк две кнопки и копипаст со стековерфлоу или 100уроковандроид, то впринципе можно, но понимать будешь примерно нихуя что происходит.
10130181013028
#400 #1013018
>>1013014
ты прав, может есть какой-то более практичный путь, чем просто долбить жаву, а как-то по особенному чтобы побыстрее к Студии Ведер перейти?
#401 #1013028
>>1013014

>но понимать будешь примерно нихуя что происходит.


Да блять все равно нипонятно нихуя будет. Более менее понятно, в легких ферймворках под винду, ну там getmessage, по хендлу екземляр класса нашли, передали, хуяк вот и нажатие кнопки случилось, или отрисовать нужно что-то. А в адроиде этом пиздос просто, ад наворотили, эксемельки блять какие-то, нихуя непонятно. Мне проще было с шаблонами на С++ в WTL пердолится, чем с этой хуйней разбираться.
1013161
#402 #1013161
>>1013028

> Мне проще было с шаблонами на С++ в WTL пердолится, чем с этой хуйней разбираться.



Всё верно говоришь.

>>1013018
Так смотря что ты хочешь. Если на бекенде сосредотачиваться - жава мастхев на уровне чтобы даже не задумываться. Конкретно андроидовские фичи бекенда помимо базовой жавы осваиваются за пару месяцев на хорошем уровне, короче тут всё более-менее и жить можно. Помимо тебе понадобятся алгоритмы и байтоёбство, тут без жавы никак.

Отдельная тема - качаться в UI глубже чем хелловорлд - пиздос. Тут у тебя два основных пути:
1. ебёшься с фреймворками.
2. ебёшься с кривой Support-библиотекой, которая суть тот же фреймворк на костылях.
А потом всё равно придётся ебаться и с тем и с другим одновременно.

На базовых концептах типа вью, лайаут, лиснеры-хуиснеры итп далеко не уедешь, чтобы выдавать что-то сложнее хеллоуворлда на паре кнопок - быстрее долетишь до марса на жопной тяге и утонешь в спагетти-коде. Чтобы вышло что-то годное - надо начинать думать не столько в жаве, сколько в ООП.

В процессе освоения - за каждым вопросом чуть глубже базовой разметки лайаута будешь лезть в гугол и охуевать, и охуевать, и охуевать насколько всё неочевидно и оверархитектура.

Даже когда освоишься, особенно ничего не изменится - будешь примерно вспоминать по каким ключевым словам искать решение проблемы, и всё равно лезть в гугол. Разве что добавишь очередной фреймворкнейм себе в резюме, и будешь рассказывать на какие его грабли натыкался на собеседованиях.

Без жавы будешь понимать, верно говорит анон - ещё меньше чем нихуя.

Неспроста вилка зарплат такая-то.
1013172
#403 #1013165
>>1013018
долбишь сначала хед-фёрст книжку по жаве, потом хед-фёрст книжку по андроиду.

чето в голове после останется - начинаешь долбить самые популярные фреймворки (смотришь по вакансиям)

и счастье. или нет, джуны по андроиду ща никому нахуй не всрались
1013172
#404 #1013172
>>1013165>>1013161
а может шаришь, просто из любопытства, почему джуны по андроиду не нужны сейчас? алсо, вообще до 4ого числа мне нужно сделать задание тестовое на джуна, лол и оно ни разу сложным мне не кажется, как минимум хочу его сделать, просто потому чтобы сделать, вернее почему бы и нет. я понял за книги, спасибо всем кто помог и ответил, буду стараться вкатиться, вот.
и да, есть не большая законченная прога написанная для универа, но все равно думаю жабу подзадротить и параллельно просто делать какие-то маленькие проги, чтобы просто руку набивать, такой вот план, короче спасибо анон
10131871013188
#405 #1013187
>>1013172
Джуны вообще никому не нужны.
#406 #1013188
>>1013172
Банальный пример - допустим нужно быстро закрывать проект, в котором уже дохуя всего есть, и надо ещё допиливать, а рук чтобы имеющимися силами всё сделать не хватает.

Представим варианты (утрирую):
1) Взять 4х джунов скажем за 40к каждого, и въёбывать время и силы на то чтобы их доучивать фреймворку/ооп/токостям жавы или андроида, да и вообще программированию
2) Взять одного сеньёра-помидора за 160к+, с опытом андроида год-два который сразу начнет приносить результат. тут тоже кстати поискать ещё придётся, т.к. все при делах давно

Подучившиеся джуны могут съебать без всяких гарантий чуть ли не через пару месяцев на зарплату в два раза больше в другую контору, и т.д. по нарастающей.

Джуны ок в больших фирмах, где много свбодных ресурсов на обучение и удержание типа яндекса, это по сути долгосрочный актив. В таких местах тебя будут отбирать из десятка потенциальных кандидатов, ибо на программирование сейчас хайп, особенно на андроид - т.к. у любого школьника телефон, поэтому тех кто хочет вкатиться в программирование - овер9к.

Курсы/уроки/гайды по программированию за 24 минуты, которые проходят вчерашние школьники по сути дают мало, а на чистом энтузиазме далеко не уедешь. Да и кто гарантирует, что у джуна через 2 месяца работы даже этот энтузиазм не перегорит (особенно поебавшись с андроидами)?

Короче риски - пиздец, затраты - пиздец, а гарантий - никаких.
#407 #1013199
>>1013018
Есть один путь короче. Качаешь с гитхаба исходники софтинки, которая ближе всего к тому, что собираешься запилить. Далее конвертишь в котлин, правишь косяки после конвертации, заодно разбираешь как что работает. Я к тому моменту как все на котлин переведу планирую уже осовить его на уровне запиливания собтвенных фитч. Ну дальше на маркет сразу.
#408 #1013326
Скучно на работе, задач нет, предлагайте, что бы такого с нуля запилить.
1013328
#409 #1013328
>>1013326
мне нужно запилить кнопку которая будет находить 4 картинки относительно гео локации пользователя и чет я на этом моменте туплю, да-да я знаю за гугловский API для поиска по местности, но все равно как грамотно связть с кнопкой туплю.
нажатие кнопки==>показывает картинки рядом с геолокацией где ты сейчас и берет 4 штуки и из них делает коллаж, вот.
1013329
#410 #1013329
>>1013328
Звучит весело, буду пилить.
10133311013347
#411 #1013331
>>1013329
тестовое задание на джуна дали. а я ебаклак сделал только поиск геолокации и все.
#412 #1013347
#413 #1013378
У джавы есть класс, который позволяет открыть html в дефолтном браузере вне зависимости от платформы?
Desktop работает только на пека же?
1013403
#414 #1013403
>>1013378
да, в жаве есть, т.к. java.awt.Desktop, в андроиде иначе -
подразумевается что ты через интенты будешь делать.

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
startActivity(browserIntent);
#415 #1013801
Анон, появился вопрос про МВП. Когда создаётся презентер? В гугл примере https://github.com/googlesamples/android-architecture/tree/todo-mvp/todoapp он пересоздаётся каждый раз в onCreate активити и там же к нему крепится фрагмент. Но тогда мы сталкиваемся с вечной проблемой поворота экрана. Вот тут, например https://github.com/googlesamples/android-architecture/blob/todo-mvp/todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksPresenter.java ,124 строчка, индусы из гугла после загрузки данных извне и их мэппинга тупо смотрят, работает ли текущая вьюшка и если она была проёбана, то они тупо сливают свежескачанные данны в унитаз. Может я что-то не понимаю? За такое даже джунов пиздят, а тут вроде гугл и примеры правильного кода.
Что если делать все презентеры синглтонами, а вьюшки к ним подключать по мере надобности? Если какая-то наркоманская архитектура, когда в один момент времени существует куча разных вьюшек, связанная с одним и тем же типом презентера, то в этом случае можно так же сделать презентер-синглтон и крепить к нему все эти вьюшки в виде листа и одновременно их обновлять.
10139161018500
#416 #1013916
>>1013801

> Что если делать все презентеры синглтонами, а вьюшки к ним подключать по мере надобности?


В Moxy примерно это и реализовали. Презентер живет в статик мапе, пока вьюха окончательно не закроется.
#417 #1014762
Анон, как сделать меню как в гугл плее: с табами и поиском?
1014899
#418 #1014899
>>1014762
перешь такой аппбар, пизхаешь в него эдитТекст/серчВью и таблэйаут. А дальше вилкой.
#419 #1015540
Дроидач, а кто-нибудь здесь понимает, нафига нужны кастомные пермишены? Прочитал гуглогайды и всёравно не вижу профита.

Вот создам я их, даже буду спрашивать - пользователь мне даст из моего доверенного приложения. Также пользователь его даст и приложению злоумышленника inb4: не даст 0.003% пользователей, которые поймут что происходит.

Априори если человек установил что-то сомнительное - то проебался. Как в такой ситуации спасут пермишшны? Ответственность за принятие пермишшна волшебно перенесётся с разработчика на пользователя? Но ведь всёравно по сути нет, т.к. это задача разработчика защищать пользователя.

Короче, объясните плес, нужно ли мне вообще это говно, и зачем?
10156231015745
#420 #1015623
>>1015540
Чтобы пользователь мог знать уже на шаге установки приложения, какие именно действия будет совершать приложение.
#421 #1015745
>>1015540
Позволяет задать взаимодействие с твоим приложением другим приложениям. А защитить ты можешь по подписи например.
301 Кб, 482x735
#422 #1015892
Котаны! Есть 2 стула: Unity и Android. Что профитней если заняться всерьёз, почему? Помогите не проебаться.
#423 #1015906
>>1015892
Профитней выкатываться нахуй из айти.
1015907
#424 #1015907
>>1015906
Это не вариант для меня
#425 #1015925
>>1015892
ну хуй знает, если игоры делать хочешь юнити, если дрочить клиент сервер из приложения в приложение то андройд
1015929
325 Кб, 431x407
#426 #1015926
Я нашел новую Богиню!!!
https://youtu.be/ShTziZvko8k?t=50
1015933
#427 #1015927
>>1015892
а щито вам по душе, молодой человек? пробуй два стула.
1015929
#428 #1015929
>>1015925
>>1015927
Игоры, конечно, интересно, но можно ли на них так же поднимать как и на андроиде? У юньки вакансий мало, срезняя зп ниже. Короче очкую я ей заниматься
1017075
#429 #1015933
>>1015926

>макбук


крякнул
#430 #1016784
Сап дроидач. Есть желание потыкать этот ваш Андроид, не собираюсь вкатываться, но как получится.
В Джаву умеюв котлин нет. Сам пишу на сях/крестах и пистоне.
С какого курса из шапки лучше начинать? Udacity или Codepath? Не хочется читать много воды. Спасибо.
1017873
#431 #1017075
>>1015929
у меня ощущение, что всему нативному ios/android говну не долго осталось, жаваскрипткросплатформенные всех заменят
2 Кб, 506x34
#432 #1017330
Мне линупс ставить нужно, чтобы на рузене эмулятор работал? Почему на шиндовс свм не поддерживается?
#433 #1017342
>>1001514
Гугли режим киоска на андроид.
#434 #1017699
Нужно посмотреть https-трафик одного андроид-приложения. Как это можно сделать?
Пробовал через прокси с подменой сертификата, браузер работает, а приложение нет. Там наверное какая-то своя проверка сертификата я так думаю. Я в этом не силен.
Ну так вот, можно ли в принципе как-то посмотреть этот трафик? Ну там, например, пропатчить где-нибудь, подключится дебагером, все дела
10177391017852
#436 #1017852
>>1017699
Fiddler.
#437 #1017859
Дроиды, появилось желание вкатиться к вам
Взял сегодня книгу Ретабоуил С., Android NDK: разработка приложений под Android на C/C++. Сильно ли я проебался с выбором первой литературы и актуальна ли информация из книги?
10179071017913
#438 #1017873
>>1016784
C

https://developer.android.com/training/index.html

Зачем тебе мусорные курсачи для домохозяек?
#439 #1017907
>>1017859
Да, это сильно не то. Если ты не делаешь очередную накладывалку рожи собаки на свою, или супер-охуенный плеер, то это тебе ни к чему.
#440 #1017913
>>1017859

>Ретабоуил С., Android NDK: разработка приложений под Android на C/C++



Если игоры писать собрался разве что и ОПТИМИЗИРОВАТЬ. И надеюсь, что ты уже бог С++, иначе ты делаешь что-то сильно не так.

По андроиду впринципе проёб с книгами с актуальной информацией, т.к. слишком быстро новое выкатывают, тем более на русском языке (+полгода на перевод). Такчто актуальными могут быть (и то не всегда) только гайды от гугла.
#441 #1017942
>>1017739
Спасибо за ссылку, анон! Все получилось через xposed-модуль на genymotion.
Даже приятно, что вот так помог. А то у меня уже опустились руки. Написал в треде так на всякий случай
#442 #1018500
>>1013801

>и крепить к нему все эти вьюшки в виде листа и одновременно их обновлять.


Я примерно так делаю. Но у меня презентер инжектится через даггер
#443 #1018501
>>1008050
Во дебил.
1018876
#444 #1018876
>>1018501
Зато как гейосники!
Есть же анко, с которым делать это довольно удобно но все равно так не надо.
10189051018919
#445 #1018905
>>1018876
я про анко и писал. А почему не надо? xml всегда же для уебков был.
1018916
#446 #1018916
>>1018905
Ну расскажи почему xml для уебков.
#447 #1018919
>>1018876

>Зато как гейосники!


Что гейосники? У них два варианта:
1) Таскать мышкой
2) Хуярить кодом
В ведре есть промежуточный вариант (можно не мышкой) щедрая душа.
18 Кб, 623x259
#448 #1019659
Анон, скачал API-демку, как правильно открыть её в андроид студио, чтобы можно было запустить на устройстве? Открыть всю папку через "import project" не даёт нужного результата.
1019753
#449 #1019753
>>1019659
File -> Open... -> выбираешь папку samples -> OK
#450 #1020236
Хочу ебануть синглтон фрагмента с картой, чтобы держать всю эту хуйню всегда инициализированной. Какие подводные камни?
10202421020245
#451 #1020242
>>1020236
Android нассыт на твой синглтон и пересоздаст фрагмент(с вызовом конструктора без параметров) когда ему будет нужно при рестарте/повороте экрана etc.
1020245
#452 #1020245
>>1020236
>>1020242
вдогонку, такой штукой делай, будет православно:

Fragments are meant to be reusable components of applications. You should not be using them as singletons, instead you should implement Fragment.SavedState or onSavedInstanceState.

public class YourFragment extends Fragment {
// Blah blah blah you have a lot of other code in this fragment
// but here is how to save state
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("curChoice", mCurCheckPosition);
}
@Override
public View onCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// savedInstanceState will have whatever you left in the outState bundle above
}
}
1020253
#453 #1020253
>>1020245
Проблема в том что гуглокарта ебет мозг. Ее проблема в том что у меня есть, скажем несколько фрагментов, которые открываются, которые открываются по порядку сваливаясь в бэкстек. Так вот каждый такой фрагмент с картой заново грузит эту ебучую карту, заполняя память и в итоге вызывая ООМ. Синглтон фрагмента же я могу деттачить в онСтоп и аттачить в каком нибудь онРезюм фрагмента контейнера.
Помимо этого у меня там маркеры с фоточками, которые генерятся в рантайме. У меня в данном вопросе не стоит вопрос о сохранении стейта фрагмента и данных в нем, ибо данные у меня в бессмертном интеракторе/презентере живут.
Так вот основная проблема это ебучая гуглокарта.
1020333
#454 #1020333
>>1020253

>OOM


Прозреваю что ты чето с данными проёбываешь, так что из-за оставшихся ссылок GC что-то не может почистить. И смотреть тебе нужно именно в сторону утечек и их причин.

>Бессметный интерактор/презентер


Ещё гипотеза что проблемы могут быть от того что он у тебя может быть в static-переменных.

Проверься по списку.
http://blog.nimbledroid.com/2016/05/23/memory-leaks.html
10203931020409
#455 #1020393
>>1020333

>Ещё гипотеза что проблемы могут быть от того что он у тебя может быть в static-переменных.


Презентер и интерактор живут в компоненте даггера, который обернут в WeakReference и живет столько сколько ему нужно. Они собственно тут не причем.
1020431
#456 #1020409
>>1020333
Ну и проблема почему то на реальном физическом девайсе. На эмуляторе всё норм.
1020431
#457 #1020431
>>1020393
так говоришь, будто и в даггере утечек не может быть. сходу в гугле найдёшь несколько репортов на утечки с даггером.

>>1020409
потому что на эмуляторе одна реализация андроида (от индусов), а на девайсе другая (от китайцев), и что там каждый из них на своих форках навертел никому не известно.

плюс на эмуляторе у тебя меньше случайного говна из-за левых программ также жрущих память на физическом устройстве.

профилируй, хуле ты, очевидно же что утечка есть.
1020934
#458 #1020934
>>1020431
Я хуй знает с чем это связано. На физическом планшете сасунге 19 апи память так не кушает.
На моём физическом 21 апи валится. На эмульгаторах все норм.
Виноват был mapview, у которого не вызывался onDestroy что приводило к утечке внутри самого mapview. Теперь же я onDestroy переместил в onStop фрагмента своего и все заработало как часы.
10210711021571
#459 #1021071
>>1020934
батя грит малаца.
#460 #1021571
>>1020934
onDestroy хуйня без задач
1021852
#461 #1021852
>>1021571
Скажи это гуглу
1022105
#462 #1022105
>>1021852
Они в курсе, сами пишут что он вообще не гарантированно вызывается. Не один раз рассасывали тут.
#463 #1023900
Ку. Есть чаты по андроиду в телеграме?
1023913
sage #464 #1023913
>>1023900
Нет и не будет. Пошёл нахуй со своим говном.
#465 #1024052
Сап, котаны.
Вопрос по бизнесовой составляющей. Мне предлагают поддерживать и при необходимости переписать проект, который представляет из себя просто адскую концентрацию говнокода и костылей, в котором блеать асинхронность сделана через new Thread(...).start() и сделать это нужно за два месяца. Масштабы проблемы - около десяти экранов с видео, биллингом, сложным UI, загрузкой и проигрыванием левой медиа, поворотами экрана и прочими сменами конфига и прилагающимся. Чтобы вы понимали - те, кого я учил делать приложеньки "для души" и кто знал до этого дай боже паскаль, писали более читаемый код.

В этом пиздеце есть венгерка, js_нижние_ебаные_подчеркивания, ЯШарпПропертиНотация и прочая параша, контексты везде пошли по пиздец и прочее подобное.

Сколько мне стоит запросить за этот пиздец, и стоит ли вообще руки марать? Оцените по меркам ДС
#466 #1024080
>>1024052
Я бы такую хуйню только с нуля переписывать согласился.
#467 #1024092
>>1024052
Берешь, оцениваешь стоимость работы для написания с нуля - тз же перед тобой. И просишь. А будешь ты писать с нуля или дописывать, уже тебе решать. Что проще, построить дом с нуля, или постоянно ремонтировать и достраивать развалившуюся избу.
10242541024420
#468 #1024254
>>1024052
300 кк/секунду.

Чего ты ожидаешь услышать, если объём проекта ты не написал (хотя бы примерно в тысячах строк), не написал используемые фреймворки и вообще нихуя конкретного кроме того что всё плохо.

Проси многа)))) И анон >>1024092
про с-нуля прав, конечно же.
1024406
#469 #1024406
>>1024254
6 экранов нагруженных по самое нехочу
#470 #1024420
>>1024092
пока что предложил полностью переписать, вроде их устроило
#471 #1024829
>>1024052
А что плохого в new Thread().start() с точки зрения асинхронности?
Просто я постоянно делаю такое, если нужно что-то в бэкграунде сделать, а если в ui-треде, то new Handler(Looper.getMainLooper()).post().
1024915
#472 #1024915
>>1024829
Ты подумаешь тред, которому потом умереть вместо того что бы реюзать их, ещё и выглядит как говно.
1024936
#473 #1024936
>>1024915
Так какие альтернативы?

>тред, которому потом умереть вместо того что бы реюзать их


Ты о чём? В джаве нельзя реюзать один и тот же тред.

> It is never legal to start a thread more than once. In particular, a thread may not be restarted once it has completed execution.

1025127
sage #474 #1024985
Привет.
Есть listview с rows разного типа контентом(сообщения в чате, могут быть картинки, вложения и т д).
Как приоритетнее делать adapter в плане производительности:
создавать разные layouts под свой тип и возвращать разные в зависимости от типа сообщения или создавать один layout со всеми возможными данными и убирать ненужное с помощью visibility.gone?
В гугле смотрел делают и так и так
#475 #1024986
>>1024985
сажа приклеилась
sage #476 #1025027
>>1024985
Первый вариант однозначно чище.
1025028
#477 #1025028
>>1025027
Тоже сажа приклеилась
#478 #1025127
>>1024936
Да хоть асинктаск. А вообще ExecutorService, а дальше CompleteableFuture или rx. Можно ещё корутины в котшине.
#479 #1025128
>>1024985
Первый вариант. И почему ListView в 2к17?
1025129
#480 #1025129
>>1025128
Я что-то упустил? Как щас делают?
1025144
#481 #1025144
>>1025129
RecyclerView, ещё с KitKat'а.
10251481025162
#482 #1025148
>>1025144

>RecyclerView


бляяяяя, я уже 70% проекта сделал
#483 #1025162
>>1025144
Ладно, проччитал про отличия, у меня имплементирован реюз элементов, так что по перфомансу должно быть норм. Но в будущем буду recyclerview юзать
1025191
#484 #1025191
>>1025162
В ресайклере ещё удобно как раз создавать разные ViewHolder для разных элементов, что является ответом на твой первоначальный вопрос. Там есть в RecyclerView.Adapter метод getItemViewType, по которому можно вычислять необходимый тип элемента, а возвращает он int'овое значение, которое потом используется при создании элемента листа в onCreateHolder. И по этому значению можно делать разные лэйауты, а потом в onBindViewHolder делать нисходящее преобразование типа и присваивать необходимые значения.
#485 #1025818
Кто-нибудь пользовался https://facebook.github.io/yoga/ для верстки? Или https://fblitho.com/ ?
Хочу пробенчать Relative/ConstraintLayout xml/code/anko против этих штук. Хоть узнаю какие спички крутятся.
#486 #1026011
Привет, анон. Срочно нужна помошь.

Есть старый комп. Ввиду неподдержки последними версиями android-ndk 32-битных ядер линукс (в смысле запуска) поставил арм тулчейн из пакетов и, пообщавшись немного с разработчиком и мейнтейнером ndk, последовал его совету: взять из сдк папку /sysroot и использовать clang из пакетов. Получаю invalid instruction. Если же я собираю древней 10й версией (последней для 32битных линуксов) - то получаю сигсегв. Срочно нужна помощь. Уже неделю ебусь.
#487 #1026027
Понемногу теребил андроид-разработку довольно давно, вот сейчас задумался о стажировке - учусь еще в универе, ну и подумал, что опыт нужно получать. И вот смотрю предложения, и нашел несколько для ios и ни одной для андроида ну только летние, а я уже не успел.
Вопрос вот в чем: стоит ли пытаться еще и в ios или лучше не распыляться и таки долбить андроид? Тем более из отзывов на эти стажировки понял, что туда даже без опыта кодинга на платформе берут и даже без знания языка, знай только си да ооп с алгоритмами.
1026030
#488 #1026030
>>1026027
Я бы взял что есть и не выебывался, существует устойчивое мнение что з айось получаюь больше, а еботни меньше. Но это не верифицированная информация.
1026109
#489 #1026109
>>1026030
на будущей неделе, если время будет, планировал на гейось что нибудь запилить хелоу ворлдовское. Если запилю отпишусь по поводу еботни
мимо другой анон 2года в андройде
#490 #1026373
3D FPS на libgtx с полным разрушением мира попрёт на телефонах?
#491 #1026441
Как заменить Интерфейс Андроид браузера на свой?
1026447
#492 #1026447
>>1026441
Не совсем понятно что ты хочешь сделать. Гугли CustomTabs или берешь WebView и хуяришь вокруг него все что тебе надо.
1026464
#493 #1026464
>>1026447
Надо свой интерфейс с эффектами и фишечками.
1026465
#494 #1026465
>>1026464
Ну тогда делай Активти/фрагмент/вьюху с WebView и ебашь по ней.
1026467
#495 #1026467
>>1026465
Я хотел libgtx припилить, чтобы в опенжл, чтобы графика не тормозила.
1026468
#496 #1026468
>>1026467
Очень странное решение. У тебя игра или что? Пробовал анимируемым вьюхам хадр. ускорение включить?
10264731026477
#497 #1026473
>>1026468
я только вкатываюсь, но у меня там эффекты будут и много элементов, тут явно ускорение железа нужно.
#498 #1026477
>>1026468
это просто альтернативный гуи к браузеру

http://apptractor.ru/develop/google-dal-vozmozhnost-razrabotchikam-ispolzovat-chrome-custom-tabs.html
Кастом Табс работает быстрее самого браузера, спс, а как либгдх припилить, ня? ^^
1026511
#499 #1026511
>>1026477

>а как либгдх припилить


Берешь либждкк, там есть мастер создания новых придожений со своей "другой" струткурой грейдла. Создаешь там проект, всю андроидовскую часть переносишь в андроидовский модуль, а хуевую делаешь внутри чисто-либджксовского модуля. По сути у тебя будет либждксовский активити, но можно фрагментом сделать.
1026527
#500 #1026527
>>1026511
А либгдикс куда сувать?
1026538
#501 #1026538
>>1026527
Давай ты откроешь документацию либждкса.
1027891
#502 #1027891
>>1026538
Что делать по пунктам для смены ГУИ?
#503 #1028154
как переключить developer.android.com на английский? некоторые материалы отображаются на русском и изменить не получается. кто поможет - плюс в карму :з
1028210
11 Кб, 563x377
#504 #1028210
1028268
#505 #1028268
>>1028210
так у меня вот эта хуйня и не работала. вообще, сейчас проверил в файрфоксе, там все норм, потом немного поебался с куками в хроме и теперь все работает. спасибо, анон.
Тред утонул или удален.
Это копия, сохраненная 19 июля 2017 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски