[Ответить в тред] Ответить в тред

02/12/16 - Конкурс визуальных новелл доски /ruvn/
15/11/16 - **НОВЫЙ ФУНКЦИОНАЛ** - Стикеры
09/10/16 - Открыта доска /int/ - International, давайте расскажем о ней!



Новые доски: /2d/ - Аниме/Беседка • /wwe/ - WorldWide Wrestling Universe • /ch/ - Чатики и конфочки • /int/ - International • /ruvn/ - Российские визуальные новеллы • /math/ - Математика • Создай свою

[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 507 | 25 | 166
Назад Вниз Каталог Обновить

Android Development Thread 2.1.1 Аноним 25/02/17 Суб 15:59:22  940781  
androidthread.webm (785Кб, 1280x660, 00:00:04)
Android Development Thread 2.1.1

> Хочу вкатиться в разработку под 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. Есть лямбды, стримы и делегаты. Можно использовать в проекте вместе с кодом на Java.

> Есть что-то кроме нативных приложений на 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/919538.html
Аноним 25/02/17 Суб 18:34:05  940902
>>940781 (OP)
Вкатываюсь, тут же реквестирую способ сделать живые обои. В инете лежат способы через канвас, но они 10% цпу кушают. Видел еще идею через опен гл. Загнать все картинки в массив и крутить
Аноним 25/02/17 Суб 22:58:31  941106
>>940902
Стандартные же есть. Открой исходники и посмотри
Аноним 26/02/17 Вск 01:19:51  941200
Есть варианты отобразить картинку с возможностью приближения/удаления/скролла без ебли с самостоятельной реализацией всей хуйни?
Аноним 26/02/17 Вск 01:35:45  941207
Аноны я слишком тупой что бы вкурить примеры с гита Сторио. В нете туторов не от слова совсем. Кто нить может дать примитивный пример получения данный из провайдера? У меня есть связка из контракта, sqlhelpera и провайдера. Лоадер грузит это и пилит даные в объект. Как все это перевести на рельсы storio?
Аноним 26/02/17 Вск 02:29:17  941221
>>941200
https://github.com/chrisbanes/PhotoView
Аноним 26/02/17 Вск 02:36:10  941224
Как делать репозиторий, если мне помимо круда, надо скачивать хуйню из сущность по url, загружать ее на один из серверов (по выбору), а также получать джоином из базы вместе с другой сущностью
Аноним 26/02/17 Вск 02:40:19  941225
>>941224
Разные dataSource объекты, репозиторий занимается обработкой цепочки. С rx легко и удобно.
Аноним 26/02/17 Вск 05:30:11  941265
Ананасы, как в полноэкранном приложении отключить появление статусбара при свайпе с верхнего края экрана вниз? Ведро 7.1.
Аноним 26/02/17 Вск 09:50:34  941306
>>941106
Смотрел те, где куб вращается, там просто транформация линий, не совсем то что я хочу реализовать. Мне бы или гифку проиграть или массив картинок без нагрузки на цп. Но наверное только и остается сорцы чужие смотреть. Энивей спасибо.
Аноним 26/02/17 Вск 10:59:09  941329
>>941265
Да вроде никак, у юзера всегда должен быть доступ к статус бару.
Аноним 26/02/17 Вск 16:21:10  941569
Пытаюсь убрать овердро в своем приложении, но столкнулся с такой вещью - у меня есть экран, на котором расположены текствью с полупрозрачным фоном, а бэкграунд экрана это изображение. На самом бэкграунде овердро нет, но на этих вьюхах оно >=4. Если я меняю фон с прозрачного на непрозрачный, оно становится =2. С этим можно что-то сделать или такая сильная перерисовка плата за красивый полупрозрачный фон?
Аноним 26/02/17 Вск 17:04:03  941600
>>941569
Прозрачность это дорого.
Аноним 26/02/17 Вск 17:08:11  941606
Могут ли возникнут какие-то проблемы, если использовать внутри rx-операций(которые происходят не в мейн потоке) поля активти/фрагмента, которые инжектятся дагером. Инжектятся в onCreate, а создание всех подписок происходит в onResume, отписываются в onPause?
Аноним 26/02/17 Вск 17:34:34  941643
>>941207
Бамп. Туторов точно нету.
Аноним 26/02/17 Вск 18:48:57  941712
PackageManager.getApplicationIcon() дает иконки разного разрешения в зависимости от текущего разрешения экрана.

Как получить иконки не больше чем xhdpi?
Аноним 26/02/17 Вск 20:33:48  941876
>>940781 (OP)
Сложно ли сделать кейлоггер(с высылкой данных на мой аппарат) для телефона тянки? Какими средствами это можно реализовать?
Аноним 26/02/17 Вск 20:36:59  941879
>>941606
Могут.
Аноним 26/02/17 Вск 20:37:56  941881
>>941876
Пошёл нахуй.
Аноним 26/02/17 Вск 22:17:53  941953
>>941876
>Какими средствами это можно реализовать?
Гугли winapi lowlevel hook, raw input. Еще тебе надо будет написать панель на пхп, куда будут высылаться логи.
>>941881
Сам иди нахуй.
Аноним 26/02/17 Вск 22:22:38  941954
>>941953
>winapi
причем здесь ведро, малохольный?
Аноним 27/02/17 Пнд 16:56:23  942351
Запилите уже нормальную шапку без этой всрахи с сальными волосами
Аноним 27/02/17 Пнд 18:18:30  942403
Андроны, есть одна база , она создалась всё заебись, но когда я меняю в ней данные, они нихуя не меняются.

>"CREATE TABLE IF NOT EXISTS "

Пытался перед этим делать

> DROP TABLE IF EXISTS

Но такое чувство что программе по сути дела похуй на базу. Она как буд-то один раз создалась и всё, потому-что когда удалил/переустановил приложение появилась уже ошибка, что дропать таблицу нельзя и иди нахуй. Какого хуя эта ошибка до переустановки не появлялась?
Аноним 27/02/17 Пнд 18:34:29  942414
>>942403
Вот база - https://github.com/nmimsmpstme/MPSTME_Project_Android/blob/master/13_Voice_Sneha_Sally_Parul_MK/Work%20Space/Project/Voice/src/com/example/voice/DbHelper.java

Активити в котором вызывается - https://github.com/nmimsmpstme/MPSTME_Project_Android/blob/master/13_Voice_Sneha_Sally_Parul_MK/Work%20Space/Project/Voice/src/com/example/voice/QuizActivity.java

Аноним 27/02/17 Пнд 20:03:16  942472
Чопоны. buildToolsVersion, compileSdkVersion и targetSdkVersion нужно ставить в максимальные, когда создаешь новый проект?
Если да, то норм ли будет работать приложение на говноустройствах, если я активно начну угорать по лямбдам и прочей вкусовщине 8 жабы?
Аноним 27/02/17 Пнд 20:09:23  942477
>>942472
> говноустройствах
Только лямбды бэкпортнуты до 8 апи.
Аноним 27/02/17 Пнд 20:54:13  942495
Как сделать чтобы imageView перекрывал кастомный view (линию)?
Тоесть чтобы imageView был сверху и линию не было видно
Аноним 27/02/17 Пнд 20:56:26  942499
Untitled.png (70Кб, 1001x803)
Почему у меня два раза отправляется запрос, хотя я всего один раз вызываю функцию для отправки? Я как-то не так сохраняю observable?
Аноним 27/02/17 Пнд 21:00:03  942504
>>942499
Ой бля, забыл добавить, что это происходит при повороте экрана.
Аноним 27/02/17 Пнд 21:19:15  942511
>>942499
А кеш то твой где валяется? А вообще вроде как тут: https://github.com/NYTimes/Store решили эту проблемку и если запрос еще идет то ты к нему подключишься.
Аноним 27/02/17 Пнд 21:26:17  942515
>>942477
Ты имеешь в виду джек?
Аноним 27/02/17 Пнд 21:29:52  942517
>>942511
mObservablesCache - это синглтон который я инжекчу через даггер.

>и если запрос еще идет то ты к нему подключишься.
Вот мне это в идеале и нужно. Хочу разобраться как делать долгие запросы и при перевороте экрана подключаться к уже существующим, а не создавать новый. Погляжу, спасибо.
Аноним 27/02/17 Пнд 21:35:42  942521
>>942515
retrolambda
Аноним 27/02/17 Пнд 22:26:32  942547
>>942517
Если продолжаешь пилить свой велосипед, то прочти вот это - https://www.captechconsulting.com/blogs/a-mvp-approach-to-lifecycle-safe-requests-with-retrofit-20-and-rxjava
Аноним 27/02/17 Пнд 22:44:40  942566
java.webm (1068Кб, 1280x662, 00:00:04)
>>942351
Аноним 27/02/17 Пнд 22:47:10  942569
>>942547
Да, я видел эту штуку. У меня почти тоже самое, только они юзают cache (preparedObservable = preparedObservable.cache()), а как я понимаю он копирует ответ (или может я не так понимаю?), а мне надо чтобы к тому же самому реквесту можно было подключиться (например когда фотки на сервер заливаешь).
Аноним 28/02/17 Втр 00:25:54  942660
>>942569
Нет, оно создает обсервбл к который будет эмитить тоже самое что и исходный, второго запроса не будет, а результат будет сохарнен и выдан другому подписчику.
Аноним 28/02/17 Втр 13:30:11  942923
>>942566
Чё за лярва страшная?
Аноним 28/02/17 Втр 13:31:16  942925
Untitled.png (48Кб, 902x979)
>>942660
В общем да. Сделал с cache и всё заработало. Единственно что, вместо LruCache заюзал Map обычный, потому что от кеша толку нет - один хуй нужно удалять свой observable из него вручную (в onNext и onError), иначе оно всегда будет его возвращать и запроса нового не будет.
Аноним 28/02/17 Втр 16:05:34  943034
Аноны, подскажите - добавляю в студии на Activity элемент Image Button, убираю фон, устанавливая в Transperent Color и... у кнопки пропадает "анимация" нажатия.
Как с этим бороться?
Если фон не убирать, то при добавлении PNG без фона фон кнопки отличается от фона окна приложения.
Первые шаги в Андроид Деве, делаю по сайту Климова, у него ответа на этот вопрос не нашел.
Аноним 28/02/17 Втр 16:38:09  943063
>>942925
В общем, ты переизобрел store, на который тебе кидали ссылку.
Аноним 28/02/17 Втр 16:41:22  943072
>>943063
Ну бля, чёт не очень хочется подключать ещё одну либу только ради того, чтобы можно было приаттачиться к старому запросу. Да и тупо хотелось разобраться самому как это делается.
Аноним 28/02/17 Втр 18:10:57  943168
>>941207
Вроде всё просто https://github.com/pushtorefresh/storio/blob/master/docs/StorIOContentResolver.md
Аноним 28/02/17 Втр 18:59:37  943227
>>941207
Документация там плохая.
Возможно ли в Store.IO описывать структуру таблиц классами, как в cupboard?
Аноним 28/02/17 Втр 19:37:51  943272
>>943168
Я два дня втыкал пока понял что typeMapping генериться при компиляции.
Аноним 28/02/17 Втр 19:44:56  943275
Есть один метод, он запускает активити, которая вытягивает картинку из галереи. Как описать событие, которое происходит, пользователь закенселил выбор картинки?
Аноним 28/02/17 Втр 20:01:51  943292
>>943275
В onActivityResult resultCode будет RESULT_CANCELED
Аноним 28/02/17 Втр 20:03:58  943295
>>943227
Ага, вижу. Надо самому запросы писать.
В целом Store.IO всё равно страшно хороша.
Аноним 28/02/17 Втр 20:33:35  943326
>>943227
> Документация там плохая.
Открой пул-реквест и улучши её. Или хотя бы issue создай и опиши, что тебе там непонятно.
Аноним 28/02/17 Втр 21:15:56  943370
>>943326
Не подскажешь как запилисть update данных?
Аноним 28/02/17 Втр 21:19:17  943376
>>943370
https://github.com/pushtorefresh/storio/blob/master/docs/StorIOSQLite.md#2-put-operation
Аноним 28/02/17 Втр 21:41:56  943411
>>943376
мне нужен PutResolver же? Или можно как то проще? Тупо в ContentValues запихнуть например айдишник не получиться?
Аноним 01/03/17 Срд 02:01:05  943634
she awesome.webm (9855Кб, 1280x720, 00:00:56)
Сап прогач, скажи как называется язык програмирования/автоматизации для андроида(аналог autoIt для винды), такой язык, которым можно тыкать по эмулированному андроиду через adb в винде, закачивать контакты, и так далее, и тому подобное.
С меня няша видиорелейтед
Аноним 01/03/17 Срд 02:30:27  943647
>>943634
Espresso?
Аноним 01/03/17 Срд 03:33:39  943668
she awesome2.webm (1172Кб, 1280x720, 00:00:04)
>>943647
>Espresso
Добра тебе анончик, вывело на статью на хабре на все остальные языки автоматизации для андроида
Аноним 01/03/17 Срд 03:50:15  943672
>>943668
И что в итоге выбрал?
Аноним 01/03/17 Срд 04:05:49  943677
>>943672
Пока ничего, пойду искать фрилансера, т.к. пишу на шарпах
Аноним 01/03/17 Срд 16:17:45  943879
1477253752.jpg (71Кб, 981x645)
Анон, дай книгу, прочитав все которую, я бы смог собрать приложение на андроид в андроидстудио.
Жаву знаю.
Аноним 01/03/17 Срд 16:42:06  943889
>>943879
https://4pda.ru/forum/index.php?showtopic=159318&st=1120
Аноним 01/03/17 Срд 17:25:06  943903
Зачем нужны приложения на андроид?
Ведь сейчас у каждого сайта есть адаптивная мобильная версия.
Судяьпо новостям, юзеры пресытились аппликухами
Аноним 01/03/17 Срд 17:36:22  943911
>>940781 (OP)
Антуаны, есть вопрос по ретрофиту и интентам.
В общем, есть у меня два Activity. В первом у меня RecyclerView, в ViewHolder этого ресайклера при выборе элемента создается интент и после этого происходит переход на второе Activity. Там в onResume я делаю enque. Когда я возвращаюсь в первое и снова вызываю второе Activity, у меня вместо двух запросов к серверу делается сразу 4, в следующий раз - 6, ну итд. Вопрос: это косяк на стороне ретрофита или интентов? И как исправить, чтобы число запросов не увеличивалось?

Вот первый Activity
https://github.com/TheKlash/MyWeather/blob/master/app/src/main/java/ru/nway/myweather/activities/CitiesActivity.java

Вот второй
https://github.com/TheKlash/MyWeather/blob/master/app/src/main/java/ru/nway/myweather/activities/WeatherActivity.java

Вот их контролер
https://github.com/TheKlash/MyWeather/blob/master/app/src/main/java/ru/nway/myweather/activities/Controller.java

Простите, что без коментов
Аноним 01/03/17 Срд 17:37:32  943912
>>943911
В контроллере находится RecyclerView
Аноним 01/03/17 Срд 23:12:46  944117
Както из адаптера можно выдернуть позицию зная данные элемента?
Аноним 01/03/17 Срд 23:17:34  944121
>>944117
Есть метод getPosition()
Аноним 02/03/17 Чтв 00:23:38  944128
>>944121
как выдернуть все холдеры и получить даные хранящиеся в них?
Аноним 02/03/17 Чтв 00:25:12  944130
>>944128
и когда я найду соответисвие с тем id что есть у меня тогда я из него и вытащу позицию.
Аноним 02/03/17 Чтв 01:03:33  944142
>>943376
А в как сторие решает что вызвать из putResolver?
Аноним 02/03/17 Чтв 01:15:19  944146
>>944128
А ты как холдеры формируешь?
Я тут недавно писал похожую хуйню, так вот я написал метод в дб хелпере, который возвращал мне лист обьектов, которые я заганял в холдер
Аноним 02/03/17 Чтв 01:52:29  944161
>>944146
Я лист заганяю в ресайклр, а в холдоре есть привязаный элемент. Извне я получаю какие то данные, обновляю бд и что бы не перезагружать весть лист в ресайклре я хочу сравнить мои данные с данными в холдерах, найти нужный холдер и наконец получить его позицию.
Аноним 02/03/17 Чтв 02:08:48  944164
>>944146
https://gist.github.com/skyfishjy/443b7448f59be978bc59
Аноним 02/03/17 Чтв 10:31:08  944310
Как правильно пилить коллбэки на системный события типа onClick() в активити/фрагментах - отдельным анонимным классом, или все интерфейсы имплементить у активити? При втором способе можно в иерархии переопределять какой-нибудь клик без проблем, но класс засирается хуйнёй-малафьёй типа onClickXXXX
Аноним 02/03/17 Чтв 10:38:48  944316
>>944310
>иерархия
Старайся этого избегать по максимуму. Композиция наше все.
Аноним 02/03/17 Чтв 16:09:03  944513
>>944316
Почему? Основа ООП - это ведь инкапсуляция, полиморфизм и наследование
Аноним 02/03/17 Чтв 16:12:45  944515
>>944513
Вот и наследуйся от интерфейсов, а в нормальных языках от трейтов.
>Favor 'object composition' over 'class inheritance'.
Читай паттерны.
Аноним 02/03/17 Чтв 16:13:18  944516
>>944513
Это хуевое ООП из 90х. Нормальное ООП - это обьекты и связи между ними.
Аноним 02/03/17 Чтв 16:37:57  944536
>>944515
Интерфейсы реализуют, а не наследуются от них.
Аноним 02/03/17 Чтв 16:42:39  944541
>>944536
проиграл с умника
Аноним 02/03/17 Чтв 16:54:28  944553
>>944536
Бля пиздос как же жить теперь.
Аноним 02/03/17 Чтв 18:11:39  944623
Андроид студио не видит мой говносмарт, процессор не поддерживается для нормального эмулятора в ней. Будет совсем уебством использовать сторонний эмулятор, типа AndyOS или BlueStacks, каждый раз устанавливая в него сбилденный апк?
Аноним 02/03/17 Чтв 18:22:06  944629
>>944623
> Андроид студио не видит мой говносмарт
Драйвер накатил? USB дебаг включил?
Аноним 02/03/17 Чтв 18:41:33  944641
>>944623
Universal adb driver попробуй
Аноним 02/03/17 Чтв 20:05:27  944717
Как вам идея, сосоны:
1) Весь код вьюх ебашить во фрагментах (profit: иерархия и т.д. не дублируется на активити)
2) Юзать одно активити для нескольких разных экранов, которому при вызове передавать в bundle код фрагмента, который надо запустить?
Аноним 02/03/17 Чтв 20:14:04  944732
>>944717
С подключением.
Аноним 02/03/17 Чтв 20:36:06  944774
>>944717
10/10
Аноним 02/03/17 Чтв 21:05:58  944827
>>944641
>>944629
Спасибо, аноны, получилось.
Не передается savedInstanceState Аноним 02/03/17 Чтв 21:12:02  944836
Создаю Intent, создаю bundle, вызываю startActivity, в Activity в метод onCreate не передается Bundle. В чем может быть проблема?
Аноним 02/03/17 Чтв 21:15:50  944843
>>944836
Он в getIntent отсутствует?
Аноним 02/03/17 Чтв 21:23:55  944853
>>944843
Да
Аноним 02/03/17 Чтв 21:30:50  944862
Есть активити с recyclerView, из него я через fab вызываю activityForResult - AddRecord, на резалте обновляю лист, который формирует recyclerView.
Из адаптера я тоже вызываю addRecord, но просто через startActivity.

Если я после того как вызвал addRecord из адаптера вернусь на активити с RecyclerView то сработает ли метод onActivityResult в нем?
Аноним 02/03/17 Чтв 21:37:27  944870
>>944862
Если нет, то есть ли метод, который сработает, когда я возвращаюсь к активити из любого другого?
Аноним 03/03/17 Птн 00:29:12  945010
>>944870
старт резюме рестарт
Аноним 04/03/17 Суб 12:01:49  945932
Следите за руками:
Приложение без упоминания камеры в манифесте просит запустить камеру для захвата все ок.
Приложению добавляется пермишен камеры в манифесте, потому что в другом месте нужен прямой доступ к камере, в том месте добавляется запрос на пермишен и все хорошо, теперь если в том месте где просто запускается интент нет полученного пермишена на камеру, то кина не будет и НИКАКОЙ ОШИБКИ ТОЖЕ НЕ БУДЕТ, НИ В ЛОГЕ НИГДЕ, БЛЯТЬ ЧТО ЗА ХУЙНЯ НАХУЙ ПРОСТО. Это вообще хоть где-то задокументировано, может это конечно хуйня специально от MIUI, но у меня есть неприятное ощущение что нет.
Аноним 04/03/17 Суб 13:00:15  945984
>>945932
а теперь внятно.
Аноним 04/03/17 Суб 13:22:23  946015
>>945932
Умерьте свой пыл для начала, господин.
> Это вообще хоть где-то задокументировано
https://developer.android.com/reference/android/provider/MediaStore.html#ACTION_IMAGE_CAPTURE
> Note: if you app targets M and above and declares as using the CAMERA permission which is not granted, then attempting to use this action will result in a SecurityException.
Аноним 04/03/17 Суб 13:27:31  946022
>>946015
Спасибо, тогда где эксепшн? Остальные сесюрити эксепшн норм кидались.
Аноним 05/03/17 Вск 00:53:06  946511
У кого есть тестовый проект по реализации апи клиента на ретрофите и, может быть, rx? Сейчас мой клиент написан на голом okhttp с кастомными коллбеками, а это не очень хорошо.
Аноним 05/03/17 Вск 01:49:34  946544
>>946511
А зачем тебе чужой проект? Вот очень понятная статья про основы Retrofit'a https://habrahabr.ru/post/314028/
Аноним 05/03/17 Вск 01:51:57  946547
>>946511
https://futurestud.io/
Аноним 05/03/17 Вск 02:11:05  946558
>>946544
Основы я умею. Мне бы на архитектуру правильную взглянуть.
>>946547
Сейчас почитаю, что там. А у тебя нет этой книжечки? https://futurestud.io/books/retrofit
Аноним 05/03/17 Вск 05:12:12  946590
>>943668
кстати тут найдется хотя бы один анон который шарит в автоматизации тестирования на андроид? заплачу, надо сделать приложку, которую я смогу контролировать через адб
Аноним 05/03/17 Вск 09:34:38  946640
>>946511
Как правильно отменять запросы в ретрофите, чтобы после дестрой сервиса/активити не поймать вызов коллбека.
Аноним 05/03/17 Вск 09:36:42  946641
>>946640
>>946511
Потерял знак вопроса, извиняйте.
Ретрофит подразумевает что ответ от сервера прийдет известной структуры, как быть, если сервер присылает 2 разных ответа и их надо разобрать?
Аноним 05/03/17 Вск 12:58:53  946737
>>946590
А Spoon не подходит?
Аноним 05/03/17 Вск 14:26:55  946831
>>946737
шта такое спун?
Аноним 05/03/17 Вск 14:52:19  946871
Zebra-Regular-B[...].jpg (97Кб, 500x528)
Анон, делаю что-то типа блокнота
Не могу понять, как реализовать печать жирных или кривых символов
Чтобы не весь EditText стал жирным/кривым, а только новые символы
Аноним 05/03/17 Вск 15:00:34  946879
>>946871
SpannableString гугли
Аноним 05/03/17 Вск 15:54:06  946948
>>946641
Свой десериализатор мути.
Аноним 05/03/17 Вск 20:25:14  947112
>>940781 (OP)
Какую полезную библиотеку для ведра можно запилить? Есть какие-нибудь реквесты?
Аноним 05/03/17 Вск 21:35:03  947163
Возможно будет нубский вопрос, который тут задавали миллион раз.

Сценарий:
1. Если юзер не залогинен, то показываем ему форму логина. После успешного логина перекидываем в рабочую область приложения
2. Если юзер залогинен, то показываем ему рабочую область приложения

Вижу несколько путей решения:

1. Делаем все в мейнактивити фрагментхосте. В зависимости от статуса авторизации, показываем фрагмент логина или фрагмент рабочей области
2. Создаем LoginActivity, которая является активити лунхера. Если юзер уже авторизован, то она делает редирект на MainActivity.

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

Может кто подскажет, как это в общем случае делается по феншую?
Аноним 05/03/17 Вск 21:39:24  947168
>>947163
А ты не подумал, что будет удобнее в onResume MainActivity проверять, залогинен ли юзер, а если нет, то отправлять в LoginActivity?
Аноним 05/03/17 Вск 21:43:00  947172
>>947168
А это хорошая идея. Спасябки. Не подумал, т.к. только вкатываюсь и не прорабатывал типичные сценарии.
Аноним 05/03/17 Вск 22:48:46  947217
>>947168
почему в onResume?
Аноним 06/03/17 Пнд 00:22:34  947285
>>947217
Тащемта правильно все. Если в onCreate, то будет фейл, если токен протух, пока ты сворачивал аппликуху.
Аноним 06/03/17 Пнд 01:45:14  947335
kach2.webm (4065Кб, 1280x720, 00:00:13)
Анончик, хочешь заработать пару подорожников за несколько часов?
есть ТЗ:
Необходимо написать приложение, которое будет осуществлять доступ к автоматизациии симулятора (espresso/robotium/UIautomator) андроид через adb. К примеру клик по координатам, отправка текста, удаление/загрузка контактов, изменение build.prop, пролистывание экрана и т.д.
Оче надо держи видиорелайтед для настроения
и мыло на всякий trixter.imd@yandex.ru
Аноним 06/03/17 Пнд 01:59:08  947344
1.png (126Кб, 1501x892)
Нид хелп. Когда юзал активити все было нормально - клава тупо сдвигала все вверх. Перешел на фрагмент - и клава рушит верстку(Релятивка, нижние елементы привязаны к углу, и размер картинки меняеться). Как пофиксить?
Аноним 06/03/17 Пнд 10:59:21  947493
>>947335
А зачем тебе это?
Аноним 06/03/17 Пнд 11:12:53  947498
>>943227
нет, это не орм, то, что там есть маппинг на базе annotation процессоров ничего не значит
Аноним 06/03/17 Пнд 11:55:09  947517
>>947493
Что зачем? Мне нужно что бы пик 1 от клавы просто сдвигался вверх а не менял размери елементов.
Аноним 06/03/17 Пнд 12:01:25  947522
>>947517
Это был вопрос на пост выше
Аноним 06/03/17 Пнд 12:07:39  947525
>>947344
Поставь что эти значки под последним инпутом, тогда их спрячет, а не поднимет.
Аноним 06/03/17 Пнд 12:21:29  947534
>>944836
В том что его нужно из getIntent брать...
Аноним 06/03/17 Пнд 12:44:18  947543
>>947522
сори, в глаза ебусь
Аноним 06/03/17 Пнд 12:45:02  947544
>>947525
трабла в том что ещё картинка меняеться
Аноним 06/03/17 Пнд 12:51:15  947548
>>947544
Поставь ей фиксированный размер и не будет менятся, можешь вообще в ScrollView хуйнуть и поставить ему fillViewPort=true
Аноним 06/03/17 Пнд 13:02:11  947554
>>947548
1 - низя. Картинка не фиксированая тянеться пикасой и хоть как то подгоняеться. 2 - попробую отпишусь
Аноним 06/03/17 Пнд 13:48:52  947584
>>947554
Поменяй скейл тайп и пикасса срать не будет.
Аноним 06/03/17 Пнд 13:57:47  947600
>>947554
>тянеться
>подгоняеться
Ты ведь специально, да?
Аноним 06/03/17 Пнд 14:21:13  947606
>>947493
чтобы ты анон спросил, хочу управлять андроидом через винду, ботов там писать
Аноним 06/03/17 Пнд 15:10:31  947637
>>947600
Простыл малось - жопой думаю и в глаза с утра ебусь. Прошу извинения
Аноним 06/03/17 Пнд 15:49:00  947667
Господа, а есть ли где-нибудь гайдик по оптимальному парсу курсора для комплексных (вытянутых с кучей join-ов) сущностей ?
Аноним 06/03/17 Пнд 15:50:01  947670
>>940781 (OP)
Подскажите, что под андроид можно написать дельного, кроме игрушек.
Хочу вкатиться, но так он мне как говно без зодач.
Аноним 06/03/17 Пнд 16:07:10  947679
>>947670
Мобилки вообще говно без задач, лучше учи хаскель.
Аноним 06/03/17 Пнд 16:11:56  947684
>>940781 (OP)
Соус шебм.
Аноним 06/03/17 Пнд 16:18:40  947692
>>947670
Напиши клиент для какого-нибудь апи. Для твиттера, вкашечки, гитхаба, редтьюба.
Аноним 06/03/17 Пнд 16:49:59  947727
>>947692
Прямо весь клиент? Или, например, смотрелку фоток?
Аноним 06/03/17 Пнд 16:53:30  947736
14870153640070.webm (13963Кб, 1280x720, 00:00:59)
>>947335
БамП
Аноним 06/03/17 Пнд 16:54:07  947737
>>947727
Смотрелка фоток - это 2 главы в учебнике Big Nerd Ranch. Хош вкатиться - пили монстра. Игрушки к андрои деву не имеют абсолютно никаго отношения.
Аноним 06/03/17 Пнд 16:59:09  947743
>>947737
Да ты угораешь? Авторизация + запросы к сети + архитектура + сохранение стейта + либы.
Почти у всех знакомых ведроид-разрабов на гугл-плее висит всякая залупа вроде крестиков-ноликов и погодного сервиса.
Аноним 06/03/17 Пнд 17:29:25  947760
>>947606
Нахуй проследуй.
Аноним 06/03/17 Пнд 18:55:39  947807
>>947670
> но так он мне как говно без зодач.
Так и есть. Если есть на примете что-то более интересное, то лучше не вкатывайся вообще сюда.
Аноним 06/03/17 Пнд 19:00:59  947808
>>947743
лулз в том что можно и без этого. А можно запилить крестики и погоду со всем этим. Эти знакомые могли стать девами в славные времена когда все что нужно было - это сказать да на "знаешь яву?". Сейчас же у нубов все в реактивщене и юзаньи апишников соц сетей. Вкатыванье становиться сложнее и правельно.
Аноним 06/03/17 Пнд 20:02:39  947846
Есть вопрос к тем, кто работал с vk sdk. Нужна реализация поиска юзверей, похожая на ту, что есть на самом сайте. Т.е. по городу, универу и тд. Есть какие либо готовые реализации этой ебалы? Или самому пилить нужно будет?
Аноним 06/03/17 Пнд 20:54:56  947891
>>947760
мамашу свою нахуй проведи, долбаеб
Что тут нет анонов, которые за хуйню работы, денег получить не хотят?
Аноним 06/03/17 Пнд 21:32:37  947946
>>947891
Я тебя в рот, ебал, скотина обоссаная. Съеби нахуй из треда.
Аноним 07/03/17 Втр 11:49:15  948336
>>947667
UPD: так же ищу всевозможные оптимизации. Из того, что уже есть - использование кэша для индексов курсора, дабы не искать каждый раз индекс для названия колонки. Ориентировочно, каждый ответ от бд (каждая сущность) выходит на примерно 150-200 строк (спасибо, joinы...), так что ориентир по большей части на эффективный парсинг join-курсора.
Аноним 07/03/17 Втр 12:09:22  948344
>>948336
Какой нахуй парсинг курсора? Что ты несешь, наркоман?
Объясняй нормально, что ты хочешь и код показывай.
Аноним 07/03/17 Втр 12:17:39  948349
>>948336
Делаешь один раз getColumnIndexOrThrow для каждой колонки и потом по этим индексам тягаешь, а вообще не надо там курсор дрочить по углам, шабить SQLiteHelper, что в общем одно и тоже.
Аноним 07/03/17 Втр 13:41:27  948401
Замена синглтона:
Service vs Компонент даггера с аннотацией Singleton?
Аноним 07/03/17 Втр 14:17:05  948421
>>948401
Сервис будет жить после закрытия приложения, а компонент - нет.
Аноним 07/03/17 Втр 14:22:22  948423
123.png (41Кб, 992x738)
Антоны, а как такое может быть? Уникальных пользователей 57 , а купили всего 19 человек. Не значит это что где-то апк слили?
Аноним 07/03/17 Втр 15:06:08  948445
>>948344
Парсинг сложных данных в курсоре в сущности (читай POJO с кучей списков)
Аноним 07/03/17 Втр 15:12:36  948449
Как сделать колапсинг тулбар как в гугл плее? Сначала он прозрачный, а потом становится солид.
Аноним 07/03/17 Втр 17:32:12  948512
quest.PNG (7Кб, 257x235)
При каждом создании проекта появляются одни и те же файлы.
Как их окончательно выпилить??
Аноним 07/03/17 Втр 17:44:44  948519
>>948512
Не знаю что за первый файл, но второй для планшетов. Поставь себе нормальный вид проекта и поймешь - project вместо android
Аноним 07/03/17 Втр 17:52:48  948526
DeitelOrange.png (788Кб, 512x512)
>>948519
Пикрелейтед.
Я добавлял эту картинку в папке res, правой кнопкой new->image assets
Она теперь постоянно импортируется и вызывает ошибки.
Аноним 07/03/17 Втр 17:59:27  948533
Сам разобрался
Удалил файл по ссылке C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidModule\root\res\mipmap-xxxhdpi
>>948526
Аноним 07/03/17 Втр 18:17:00  948552
>>947335
бамп
Аноним 07/03/17 Втр 19:45:12  948670
А кто какие исключения отлавливает, делая http запрос ? Из очевидного только UnknownHostException всеми нами любымый приходит :)
Аноним 07/03/17 Втр 22:07:49  948767
>>948670
Любой IOException - чек ер конекшн
Какой-нибудь ParseException - bad response try later
404 - нахуй с пляжа
401 - тут надо смотреть детальней, много чего может быть
5xx - извините у нас бекендщик поц, мы работаем над этим
2xx - лайкайте ваших котиков дальше
Аноним 07/03/17 Втр 23:22:41  948810
>>948767
Именно касательно исключения (коды ответа то могут быть любыми, это отдельно отрабатываю). Волнует - что нужно отлавливать по исключениям для отдельной обработки
Аноним 08/03/17 Срд 10:04:52  948987
Поясните, как использовать fragment shared elements transitions при условии, что шейред элементом является подгруженная из интернета пикча? У меня сначала открывается новый фрагмент, а потом только лишь подгружается пикча. Использую glide.
Аноним 08/03/17 Срд 11:58:00  949050
>>948987
Обе должны отображать уже загруженную картинку, то есть ты вначале показываешь в обоих мелкую УЖЕ загруженную картинку. Ну и можешь паралельно фетчнуть норм размера.
Аноним 08/03/17 Срд 12:27:14  949071
Аноны, подскажите по InterstitialAd.
В соответствии с рекомендациями гугля сделал что-то такое, с проверкой, готово ли к показу объявление:
> if (mInterstitialAd.isLoaded()) {
> mInterstitialAd.show();
> } else {
> Toast.makeText(this, R.string.cantload, Toast.LENGTH_SHORT).show();
> reverseTimer(60,mTimer);
> }
Ну т.е. если есть реклама - показать, если нет, то мы ждем минуту и пробуем снова.
А есть ли какой-то способ проверить, была ли реклама пользователем загружена и, желательно, какой-нибудь идентификатор, чтобы понять, какую именно рекламу он смотрел?
Вижу в описании класса метод
> boolean
> isLoading()
> Returns true if the ad is loading.
это оно или нет?
Ну и по поводу айди:
>public AdListener getAdListener ()
>Returns the AdListener for this InterstitialAd.
Вроде оно?
Аноним 08/03/17 Срд 12:35:48  949080
И вдогонку, самое главное - есть ли какой-то способ понять, был ли клик по рекламному объявлению?
Аноним 08/03/17 Срд 16:17:33  949257
Поздравляю тред с днем рождения, ведь ему уже 2 года
Давно я в тред не заходил. Вижу шизик-дрочер оп так и у руля со своей поехавшей нумирацей.

мимо-первый-оп


>>947670
Я даже хуй знает что тебе сказать. Мобайл сейчас топ на рынке веб контента, и популярность еще растет. Потому все что имеет под капотом запросы в интернет можно делать на телефоне. Другое дело что со временем через лет 5 я думаю, разработку начнут переводить на прогресив веб апликейшены.
Добавь до этого стенделон клиенты типа будильников, калькуляторов и прочего.
Добавь управление любыми девайсами типа телевизоров и прочего.
Спектр юзабилити настолько большой что пиздец.
В общем мобайл ну никак не говно без задач. Не слушай долбоебов. Просто, как и везде, 90% разрабов месят говнокод в говнопроектах, но повторюсь, так везде.
Аноним 08/03/17 Срд 16:33:11  949271
>>949257
> поехавшая нумерация
Разработчик, не слышавший про semantic versions?
> мимо-первый-оп
Пошёл нахуй со своим вниманиеблядством.
Аноним 08/03/17 Срд 18:59:33  949362
Есть gridView, который заполняется FrameLayout'ами. А внутри каждого FrameLayout'а несколько ImageView, которые проигрываю анимации.
А теперь вопрос - как настроить z-order этих imageView относительно друг друга в во всех FrameLayout?

Сейчас анимация предыдущего FrameLayout'а всегда перекрывается анимациями следующего, а нужно чтобы они сохраняли свою иерархию. Чтобы ImageView на верхушке FrameLayout'а не мог быть перекрыт ImageView со дна другого FrameLayout'а.
Аноним 08/03/17 Срд 19:11:28  949364
>>949362
Я так понимаю, там в итоге формируется что-то вроде

<LinearLayout>

-<GridView

--<FrameLayout
---ImageView1
---ImageView2
-->

--<FrameLayout
---ImageView1
---ImageView2
-->

--<FrameLayout
---ImageView1
---ImageView2
-->

-</GridView>
</LinearLayout>



И последний всегда выше в иерархии. Куда вот копать и возможно ли это вообще, чтобы ImageView1 никогда не мог перекрыть ImageView2? Или он всегда будет ниже по оси z и это никак не изменить?
Аноним 08/03/17 Срд 19:43:25  949392
Задамка тут вопрос.

Подскажите как мне поступить, чтобы убрать в WebClient-е "Proxy-Connection" при подключенном прокси.. С джавой знаком слабо. Пробовал декомпилить rt.jar чтобы изменить класс HttpURLConnection(здесь https://leibnizhu.gitlab.io/2016/12/04/%E7%88%AC%E8%99%AB%E4%BD%BF%E7%94%A8%E4%BB%A3%E7%90%86%E6%97%B6%E5%AF%B9HTTP%E8%AF%B7%E6%B1%82%E5%A4%B4Proxy-Connection%E5%AD%97%E6%AE%B5%E7%9A%84%E6%8E%A2%E7%A9%B6/ пишут что это из-за него добавляется этот заголовок), но нихрена не получается, Eclipse после изменения не запускает виртуальную машину. Как правильно распаковать и запаковать rt.jar чтобы нормально потом воспринялся java-ой ?


Аноним 08/03/17 Срд 20:11:47  949420
>>949271
>Разработчик, не слышавший про semantic versions?
Поехавший долбоеб решил выебнуться, но обосрался. Рад за тебя.
Мало того что версии должны быть намертво привязаны к флову разработки, и для именования треда может выступать лишь в роли шутки, даже андроид апликуха подписывается реальной целочисленной версией, так у тебя еще и 2.0.5-2.1.0-2.1.1, что вообще хуй пойми как работает. В общем я не знаю что именно ты долбишь, но нумерация у тебя поехавшая просто в край.
>Пошёл нахуй со своим вниманиеблядством.
Хочу и буду. Ну хоть не бугурти пожалуйста, а то засрал шапку своим говном и рад. Самая всратая шапки на всей тематике нахуй. Хотя вон шиза и на дажватред перекинулась.
Кстати, даже в блядском джава треде лучше поясняется за вкатывания в андроид. Ебучий позор нахуй.


>>949364
Странно что имейджвью2 не перекрывает первый, увы без воспроизведения в живую хуй разберешься. Но по логике имейджвью 2 должна перекрыть первую всенда.
Также мб вариант просто поменять их местами? Или они начинают менять позицию после того как начнут проигрывать анимацию? Мб также юзаешь какие-то имейджлоадеры и прочее?
Но как вариант можешь сделать кастомный фреймлейаут, у которого будут два чайлда и переопределенный getChildDrawingOrder. Тут уже железобетонно все должно срабатывать как сам напишешь. И уже этот фреймлейаут юзай. Но кажется мне, решить задачу можно более тривиальным способом.
Аноним 08/03/17 Срд 20:32:25  949436
Как же заебали говнокодеры.
Аноним 08/03/17 Срд 20:37:13  949438
>>947163
Сядь на стул сплэшскрина.
Аноним 08/03/17 Срд 20:37:25  949439
>>947335
бамп
Аноним 08/03/17 Срд 20:38:12  949441
>>947168
Этого пидора не слушайте. Может у тебя активити вообще стейтом всего приложения управляет? Хранит данные для фагментов, да?
Аноним 08/03/17 Срд 20:38:40  949442
>>949439
Я тебе ебало обоссу.
Аноним 08/03/17 Срд 21:04:17  949456
>>949420
>Но по логике имейджвью 2 должна перекрыть первую всенда.
Но ведь там же строится лэйоут перед отрисовкой, где ImageView1 (1) имеет индекс 5, ImageView2 (1) индекс 6, ImageView1 (2) индекс 7, ImageView2 (2) индекс 8, и тд, например.
То есть, как в xml бы они шли последовательно.

Мне-то всего нужно, чтобы одна анимация гарантированно была над всем.
Может, что-то с ViewOverlay самого GridView сделать, ставить ее над нужной клеткой?
Аноним 08/03/17 Срд 21:16:19  949469
>>949456
Так фреймлейауты у тебя всегда на своей позиции, как они друг друга перекрывать могут?
Аноним 08/03/17 Срд 21:18:10  949472
>>949456
>>Но по логике имейджвью 2 должна перекрыть первую всегда.
Хотя, может дело в том, что каждая последующая клетка тоже проигрывает анимацию. Правда, все равно в днище-ImageView, и эта анимация перекрывает более поверхностную анимацию предшественника.

Надо затестить на более простом примере.
Аноним 08/03/17 Срд 21:19:42  949474
>>949420
проясни про вкатывание тогда уже. Буду копипастить в каждый тред. И да уже нужон дагер да рх
Аноним 08/03/17 Срд 21:20:53  949476
>>949472
>Надо затестить на более простом примере.
Лучший вариант, когда происходит НЕХ начать с простого и усложнять.
По факту гридлейаут должен менеджить позиции чайлдов-фреймлейаутов, а каждый фреймлейаут будет менеджить позиции имейджвьюх.
Аноним 08/03/17 Срд 21:24:27  949485
>>949474
>проясни про вкатывание тогда уже.
https://github.com/qqqlll/Java-Thread/wiki/Android
Это, если что, из старой шапки андроид треда. Хотя бы просто ссылку дай на эту вики.

>И да уже нужон дагер да рх
Думаю да, тогда еще несколько слов про архитектуру добавить и збс единой пока нету, но понятие иметь нужно.
Аноним 08/03/17 Срд 21:27:03  949490
>>949469
>как они друг друга перекрывать могут
Если поставить android:clipToPadding="false" фреймлейоутам, и android:clipChildren="false" самому GridView - то анимации фреймлейоутов могут покидать свои границы.

Сферический абстрактный пример. Адаптер заполняет GridView фреймлейоутами из двух ImageView.
Тот ImageView что на дне это картинка\анимация человечка и кишков, а тот что наверху - анимация\картинка машины, которая едет в сторону правой границы GridView и давит человечков.

По идее машинка должна давить человечков, но получается наоборот. В обратную сторону все работает как надо.
Аноним 08/03/17 Срд 21:27:13  949491
>>949485
Есть годный мануал по даггеру для идиотов?
И может ли тут кто-то в 2 словах пояснить, зачем этот даггер нужен?
Аноним 08/03/17 Срд 21:30:57  949503
>>949490
Хз, как-то вот все это с индексом item'a в GridView связано.
Или с тем, что я в адаптере эти анимации запускаю, то есть когда итоговый layout не отрисован.
Аноним 08/03/17 Срд 21:38:42  949512
>>949491
>Есть годный мануал по даггеру для идиотов?
Есть
первая часть - https://habrahabr.ru/post/279125/
и вторая - https://habrahabr.ru/post/279641/
самая понятная статья которую я находил. Но там правда не все фичи есть, но для начала более чем.

>зачем этот даггер нужен?
DI - dependency injection. Грубо говоря это удобная кодогенерация фабрик, из которых ты будешь получать разные реализации интерфейсов репозиториев, имейджлоадеров, да и чего угодно что сам придумаешь. Руками такое делать как минимум дольше. Хотя удобный DI и руками делать можно. От гугла даже гайды есть.
Но даггер норм. Сам еще только учусь его юзать.
Аноним 08/03/17 Срд 21:40:20  949516
>>949490
Блять только не говори что ты игру на дефолтном ведро-сдк пилишь.
Аноним 08/03/17 Срд 21:42:37  949518
>>949490
Хер знает. Но лучший совет, начинай курить от простого к сложному. Медленно - да, но очень нужный скилл. А то такую комплексную задачу на листике тебе не решат.
Аноним 08/03/17 Срд 21:43:16  949519
>>949516
Нет, но эффект анимаций схожий.
Аноним 08/03/17 Срд 21:56:23  949529
Есть два фрагмента, в них создаются OptionsMenu, код идентичный за исключением XML. Проблема в том, что одно нормально инфлейтится, а в другом видно только первый пункт, на хардварную кнопку меню не реагирует. Может ли такое быть из-за нехватки памяти? Потому что такое наблюдается на старом LG E612, на Redmi 3 всё нормально.
Аноним 08/03/17 Срд 22:40:15  949559
>>949485
Вот только даже Примитивный MVP каждый ебошит на свой лад. Нахуй стандартизация если ее нету. В V у меня все что связано с оными view + билдеры диалогов и интенты(из за чего эти Vразростаються до 250-300 строк), M- тупо примеры обектов да контракты БД, а в P вызовы ретрофита, бизнес-логика да подготовка и выполнение команд БД. ЧЯДНТ?
Аноним 08/03/17 Срд 22:47:23  949570
>>949559
MVP - это паттерн слоя представления. Если у тебя там бизнес логика, то в этом, скорее всего, проблема и есть.
Аноним 08/03/17 Срд 22:54:23  949576
>>949570
Очередная охуительная история от прыщавого гения :)
MVP - это паттерн архитектуры и разделения бизнес-логики. Слой представления в андроиде задаётся фреймворком
Аноним 08/03/17 Срд 23:24:36  949608
>>949559
Ты блять читатьто умеешь?
Я же написал
>единой пока нету, но понятие иметь нужно.

>а в P вызовы ретрофита
Вызов ретрофита должен быть в модели, в какой-то реализации репозитория, чтоб подменять бд на ретрофит можно было легко.
Более того, грамотные парни объяснили что даже работа с медиаплеером - модель. У меня шаблон разорвало от этого не так давно.

Об этом и речь, желательно хоть какое-то представление про архитектуры, потому что чем дольше тянуть тем дольше учится будешь.
Аноним 08/03/17 Срд 23:24:56  949609
>>949503
Все-таки в GridView каждый последующий элемент по оси z располагается в порядке "первый вошел - на днище пошел".
Запилил я обычный GridView из примера документации, а вместо FrameLayout'ов обычные ImageView сделал. Эффект был точно такой же.
Только imageView.setZ(-10f) на том, что не должно ничего перекрывать (или больше 0 на том, что должно) - дает нужный эффект.
Вот только до API 21 setZ() нетъ.
Аноним 08/03/17 Срд 23:25:14  949610
>>949559
Ну и интерны во вью выглядят странно.
>>949608-кун
Аноним 08/03/17 Срд 23:25:39  949611
>>949610
>интерны
интенты
Аноним 08/03/17 Срд 23:40:27  949627
>>949576
Говна поешь, имбецил.
Аноним 09/03/17 Чтв 00:17:26  949655
>>949570
хуйню сказал
Аноним 09/03/17 Чтв 00:19:31  949656
>>949608
Что почитать на эту тему?
Аноним 09/03/17 Чтв 00:22:38  949658
>>949656
Учитывая что все дрочат как хотят, то и пишут по разному. Статей миллионы.
Но советую начать с Uncle's Bob Clean architecture.
И дальше уже смотреть mvvm/mvp/viper.
Viper - сильнее всего бот клин архитекчер заточен, но и кода\абстракций больше в результате.
Аноним 09/03/17 Чтв 00:26:48  949660
>>949658
Унеси вайпер отсюда, рамблеровский петух. Вы там дрочите на него что ли?
Аноним 09/03/17 Чтв 00:36:49  949665
>>949660
Ты какой-то ебанутый. Вайпер это самая адекватная реализация клин архитекчер. Да и на мвп он похож пиздец как сильно. Добавляется только интерактор и роутер.
Аноним 09/03/17 Чтв 00:38:33  949666
>>949665
Я работал в рамблере пару месяцев, такое ощущение, что у них там это религия.
Аноним 09/03/17 Чтв 00:47:16  949674
>>949666
Бля, ну всяко лучше чем кусок говна в виде активити на 2к строк.
Аноним 09/03/17 Чтв 00:52:35  949676
>>949665
А в клин архитектуре от фернадо секаса - сюрприз - вместо роутера навигатор. Очень сильно отличается, да.
Это ещё не учитывая то, что вайпер и clean-сектанты в один голос агитируют за один из самых парашных и недоработанных паттернов - репозиторий. Это в ведроиде-то, где лейзи лоадинг с элементами списка и ручной выбор источника данных встречаются в каждой второй задаче
Аноним 09/03/17 Чтв 01:03:17  949678
>>949674
Из крайности в крайность бросаемся, ей богу!
Аноним 09/03/17 Чтв 01:08:00  949685
>>949666
А куда сьебал потом? Сколько зп? Кулстори?
Это ведь вроде одна из топовых рашкинских контор для мобайлера?
Аноним 09/03/17 Чтв 01:09:03  949686
>>949685
Хуйня, а не контора из-за их вайпера. Надоело, съебал на апворк фрилансить, 3-4к выходит, налоги не плачу.
Аноним 09/03/17 Чтв 01:16:04  949689
>>949676
>А в клин архитектуре от фернадо секаса - сюрприз - вместо роутера навигатор.
Так суть в том что это одни и те же яйца, в чем проблема придурок?
>недоработанных паттернов - репозиторий
Это уже какая-то зелень.
>Это в ведроиде-то, где лейзи лоадинг с элементами списка и ручной выбор источника данных встречаются в каждой второй задаче
Ну так при скролле дергай презентер чтоб получить новую порцию данных и будет тебе лейзилоадинг.

>>949678
Архитектура либо есть, либо ее нету.
Аноним 09/03/17 Чтв 01:39:30  949695
>>949686
>вайпера
Говнокодеры ебаные.
Аноним 09/03/17 Чтв 01:45:55  949697
>>949686
Ой блять, поговорил бы с тобой в живую и про твои архитектурные подходы. Съебал он из-за архитектуры, конечно.
>>949695
Еще один неуч-долбоеб?


Аноним 09/03/17 Чтв 01:46:34  949698
>>949689
В том и проблема, чушок, что онанизм на "вайпер" - суть онанизм на обычное словечко, скрывающее под собой одну из классических архитектур.

>Ну так при скролле дергай презентер чтоб получить новую порцию данных и будет тебе лейзилоадинг.
Да я не про пагинацию, додик. Я про связанные сущности в БД, когда у тебя есть список и Details c соответствующим набором сущностей по клику.
Аноним 09/03/17 Чтв 01:48:06  949699
>>949697
Использую всё, кроме вайпера.
Аноним 09/03/17 Чтв 01:49:05  949700
>>949689
>Архитектура либо есть, либо ее нету.
Архитектура всегда есть, потому что часть её навязана Android-фреймворком. В приложении телеграма чувак хуярит иерархию вью вручную, в другом приложении - она инфлейтится из XML. Это архитектурные решения
Аноним 09/03/17 Чтв 01:54:49  949702
>>949699
Топ зашкваров в мире ведроид-разработки:
Xamarin
PhoneGape
VIPER
Realm
AsyncTask
AsyncTaskLoader
Аноним 09/03/17 Чтв 01:55:49  949703
>>949698
>В том и проблема, чушок, что онанизм на "вайпер" - суть онанизм на обычное словечко, скрывающее под собой одну из классических архитектур.
Ты отбитый даун. Мне как-то похуй называть вайпер вайпером или клин архитекчер от фернандо. Главное что оно значит.
>Да я не про пагинацию, додик. Я про связанные сущности в БД, когда у тебя есть список и Details c соответствующим набором сущностей по клику.
Ты говорил про лейзилоадинг. А то что ты теперь говоришь это отдельная выборка. И все отлично ложится на любую архитектуру.
>>949699
Назови 5 отличий мвп от вайпера может поймешь что это просто екстеншн вресия мвп.
>>949700
>В приложении телеграма чувак хуярит иерархию вью вручную, в другом приложении - она инфлейтится из XML. Это архитектурные решения
Это нихуя не архитектурное решение, это просто грубо говоря переопределение метода метКонтент.

>Архитектура всегда есть, потому что часть её навязана Android-фреймворком.
Ну если говорить что любой кусок говнокода - архитектура, то конечно же это архитектура. Но мы то белые люди и не должны юзать изначально говна которое диктует андроид фреймворк - а именно говном он и является.
9 лет никто не может вкурить как с этим говном совладать, чтоб и работало и удобно писать было.
Аноним 09/03/17 Чтв 02:02:40  949708
>>949702
>AsyncTaskLoader
Единственная рабочая штука в ведре. Курсор адаптер был просто незаменим хуеву тучу времени.
>Realm
Рили? Зашквар? Хоть я ее и сам не юзаю, но чтоб прям зашквар это ты перегибаешь.
>VIPER
Тут уже непонятно мне, а клинархитекчер не зашквар?
Аноним 09/03/17 Чтв 02:14:42  949714
>>949703
Ну начнём с того, что логика смещается из модели в интеректор, а ещё есть энтитиз, которые нихуя не делают. Ну и обязанности по UI перешли в презентер, но без возможности изменения данных.
Ах да, я уже говорил, что нужно будет писать дохуищу интерфейсов для классов с незначительными обязанностями?
Аноним 09/03/17 Чтв 02:15:18  949716
>>949697
>Еще один неуч-долбоеб?
Ты о чем?
Аноним 09/03/17 Чтв 02:19:18  949720
>>949714
>писать дохуищу интерфейсов для классов с незначительными обязанностями?
звучит охуенно.
Аноним 09/03/17 Чтв 02:35:34  949728
>>949702
Добавлю.
rxJava
Retrolambda
Kotlin
Аноним 09/03/17 Чтв 02:39:30  949730
>>949728
>Retrolambda
>Kotlin
Согласен.
А вот за rx ебальник набью
Аноним 09/03/17 Чтв 02:47:38  949732
Вот вчера еще тред нормальный был, а сегодня какие-то говноеды набежали и всё засрали.
Аноним 09/03/17 Чтв 03:14:04  949739
>>949714
>Ну и обязанности по UI перешли в презентер
Не совсем. Презентер только дергает юи. Вся логика по этому дерганию в презентере, вся логика самих дерганий - вьюха.
>а ещё есть энтитиз, которые нихуя не делают
Обычные поджо, в любом нормальном приложении нужно разграничивать внутренние объекты апликухи с тем говном которое приходит из апи. Потому хз к чему ты приебался.

>>949716
>Ты о чем?
А ты о чем?
Ты о чем?
Аноним 09/03/17 Чтв 03:16:53  949740
>>949728
Ну это толсто, ретролямбда вообще помощник.
Rx работает лучше любой многопоточной либы в принципе, хоть за этот минимум ее уже можно любить. Другое дело что это говно сложное и его мало кто толком знает и умеет.
Котлин норм, но проблем он не решает сам по себе.
>>949730
А есть долбоебы кто пишет с rx без лямбд?
Аноним 09/03/17 Чтв 03:18:00  949741
>>949732
А хуя ты думал, уже будучи мидлом тебя заебывает чистый фреймворк и начинается жонглирования архитектурами и rx.
Аноним 09/03/17 Чтв 03:42:55  949744
>>949739
о том что вайпер не осилил и ушел. А концепция годная.
Аноним 09/03/17 Чтв 03:50:32  949745
>>949744
>А концепция годная.
Двачую.
Аноним 09/03/17 Чтв 08:13:20  949775
Кстати, народ, как вы подружили джека и мультидекс на устройствах меньше пятёрки?
Аноним 09/03/17 Чтв 10:04:05  949800
>>949775
А есть какая то проблема?
Аноним 09/03/17 Чтв 10:09:53  949803
>>949775
Чем джек лучше чем ретролямбда? Компиляется быстрей?
Аноним 09/03/17 Чтв 10:13:16  949804
>>949800
Да, на киткате и ниже не встаёт приложение.
>>949803
Да, быстрее. Ну и это полноценная java 8, а не пародия
Аноним 09/03/17 Чтв 10:16:52  949805
>>949804
>полноценная java 8
В каком месте? Дефолтные методы и стримы не будут работать до Nки. Чего нет в ретролямбде?
Аноним 09/03/17 Чтв 10:23:28  949808
>>949804
> Ну и это полноценная java 8, а не пародия
Вообще нет, такой же бэкпорт, как и ретролямбда.

Я как то пытался включить, а он оказывается @Suppress не поддерживает.
Аноним 09/03/17 Чтв 10:23:38  949809
>>949805
Я не про это. Джек позволяет избавиться сразу от 3 плагинов - прогард, мультидекс, ретролямбда
Аноним 09/03/17 Чтв 10:36:52  949815
>>949809
Говно. Датабиндинг не пашет, инстант ран не пашет, работает пока что медленнее.
Аноним 09/03/17 Чтв 11:14:42  949834
>>949529
Бамп
Аноним 09/03/17 Чтв 16:18:10  949957
А можно без танцев с бубнами посмотреть базу на емулятуре? Или хотя бы на девайсе?
Аноним 09/03/17 Чтв 16:43:28  949972
>>949957
на эмуле можно. Заходишь в android device monitor
data->data там находишь свой пакет и там где то бд лежит, экспортируешь ее на ПК и смотришь через че удобно
Аноним 09/03/17 Чтв 16:51:37  949976
>>949957
stetho, и можешь смотреть в браузере
Аноним 09/03/17 Чтв 17:07:58  949984
Ананасы, какой будет бест практисес для следующей задачи: приложение показывает список постов, будучи в бэкграунде обновляет его, и если появились новые - присылает нотификейшен.
Где хранить список постов, которые пользователь уже видел? Я додумался только до sqlite, но стоит ли делать бд, чтобы создать только одну таблицу с одним столбцом из id?
Думал писать в шейред префс последний загруженный пост, но API отдает список, отсортированный по рейтингу, соответственно в теченни дня в любое место списка может вклиниться новый пост. То есть нужно хранить id всех загруженных сегодня постов.
Аноним 09/03/17 Чтв 17:50:00  950004
>>949984
Почему бы тебе не хранить всю инфу о постах в бд, зачем только айдишники?
Аноним 09/03/17 Чтв 19:35:44  950040
Можно как-то узнать, где (в каком класе) вызывается метод?
Аноним 09/03/17 Чтв 19:40:32  950042
>>950040
Alt + f7
Find usages
Аноним 09/03/17 Чтв 20:18:53  950069
>>947335
Bump
Аноним 09/03/17 Чтв 20:24:37  950073
>>950069
Пошёл нахуй, гнида обоссаная.
Аноним 09/03/17 Чтв 20:29:50  950079
>>947684
Удваиваю. Она только по джаве видосы делает?
Аноним 09/03/17 Чтв 20:55:50  950086
glasses.webm (1233Кб, 1280x720, 00:00:05)
>>950079
Аноним 09/03/17 Чтв 21:16:38  950100
>>950086
But what's her name? Or her channel.
Аноним 09/03/17 Чтв 21:17:57  950103
>>950100
Joana Madzestes
Аноним 09/03/17 Чтв 21:20:07  950105
>>950103
Thank you very much. I wish you have girlfriend like this!
Аноним 09/03/17 Чтв 21:25:49  950111
>>950105
suck my member
Аноним 09/03/17 Чтв 21:29:40  950116
>>950111
Member of what?
Аноним 09/03/17 Чтв 21:43:56  950131
>>950116
ya skazal suck my member beach!!!
Аноним 09/03/17 Чтв 22:04:01  950154
>>950131
kakoy naxui plyazh?
Аноним 09/03/17 Чтв 22:33:26  950172
runglish-Dota-c[...].jpeg (62Кб, 600x431)
>>950154
Аноним 09/03/17 Чтв 22:41:06  950179
146365774916280[...].jpg (59Кб, 604x321)
Как обстоят дела с конкуренцией джуников на вакансии джуников в ДС?
Аноним 10/03/17 Птн 07:16:02  950352
>>950179
> вакансии джунов
А такие есть?
Аноним 10/03/17 Птн 13:33:06  950513
Как работают свойства

layout_marginBottomPercent
и
layout_marginRightPercent

в percentrelativelayout?

Какие цифры не ставлю - никакого эффекта нет, элемент прилипает к верху\левому краю и отказывается оттуда уходить. В то время как layout_marginTopPercent и app:layout_marginLeftPercent работают как надо.
Аноним 10/03/17 Птн 17:58:20  950708
Ребят, меня просят написать приложение для интернет магазина, как правильно рассчитать цену, чтобы не продешевить?
Аноним 10/03/17 Птн 18:00:04  950709
>>950708
Узнаешь детали работы до мелочей, устанавливаешь цену за час твоей работы и говоришь сколько приблизительно часов надо потратить.
Аноним 10/03/17 Птн 18:14:06  950722
>>950709
Какие ставки за час актуальны для рф?
Аноним 10/03/17 Птн 20:46:53  950836
>>950722
>>950709
>>950708
>>950513
>>950352
>>950179
>>950172
>>950154
Большинство приложений написано на Java, выучить её на хорошем уровне — это первое, что необходимо сделать. Рекомендуемую литературу см. в Java-треде.
После этого можно установить Android Studio, открыть официальную документацию
и попробовать создать по туториалам своё первое приложение.
В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.
- Официальная документация:
- Полезный гайд для начинающих и продвинутых:
- Бесплатный видеокурс от Google для новичков:
- Два ресурса, единственный плюс которых — русский язык:
и
- Классика, способная дать ответ на почти любой вопрос "Как сделать xyz?":
- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. Можно использовать в проекте вместе с кодом на Java.
- 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. И хотя бы оно готовое приложение.
Предыдущий тред:

>>940781 (OP)
Вкатываюсь, тут же реквестирую способ сделать живые обои. В инете лежат способы через канвас, но они 10% цпу кушают. Видел еще идею через опен гл. Загнать все картинки в массив и крутить
>>940902
Стандартные же есть. Открой исходники и посмотри
Есть варианты отобразить картинку с возможностью приближения/удаления/скролла без ебли с самостоятельной реализацией всей хуйни?
Аноны я слишком тупой что бы вкурить примеры с гита Сторио. В нете туторов не от слова совсем. Кто нить может дать примитивный пример получения данный из провайдера? У меня есть связка из контракта, sqlhelpera и провайдера. Лоадер грузит это и пилит даные в объект. Как все это перевести на рельсы storio?
>>941200
Как делать репозиторий, если мне помимо круда, надо скачивать хуйню из сущность по url, загружать ее на один из серверов (по выбору), а также получать джоином из базы вместе с другой сущностью
>>941224
Разные dataSource объекты, репозиторий занимается обработкой цепочки. С rx легко и удобно.
Ананасы, как в полноэкранном приложении отключить появление статусбара при свайпе с верхнего края экрана вниз? Ведро 7.1.
>>941106
Смотрел те, где куб вращается, там просто транформация линий, не совсем то что я хочу реализовать. Мне бы или гифку проиграть или массив картинок без нагрузки на цп. Но наверное только и остается сорцы чужие смотреть. Энивей спасибо.
>>941265
Да вроде никак, у юзера всегда должен быть доступ к статус бару.
Пытаюсь убрать овердро в своем приложении, но столкнулся с такой вещью - у меня есть экран, на котором расположены текствью с полупрозрачным фоном, а бэкграунд экрана это изображение. На самом бэкграунде овердро нет, но на этих вьюхах оно >=4. Если я меняю фон с прозрачного на непрозрачный, оно становится =2. С этим можно что-то сделать или такая сильная перерисовка плата за красивый полупрозрачный фон?
>>941569
Прозрачность это дорого.
Могут ли возникнут какие-то проблемы, если использовать внутри rx-операций(которые происходят не в мейн потоке) поля активти/фрагмента, которые инжектятся дагером. Инжектятся в onCreate, а создание всех подписок происходит в onResume, отписываются в onPause?
>>941207
Бамп. Туторов точно нету.
PackageManager.getApplicationIcon() дает иконки разного разрешения в зависимости от текущего разрешения экрана.
Как получить иконки не больше чем xhdpi?
>>940781 (OP)
Сложно ли сделать кейлоггер(с высылкой данных на мой аппарат) для телефона тянки? Какими средствами это можно реализовать?
>>941606
Могут.
>>941876
Гугли winapi lowlevel hook, raw input. Еще тебе надо будет написать панель на пхп, куда будут высылаться логи.
>>941881
Сам иди нахуй.
>>941953
причем здесь ведро, малохольный?
Запилите уже нормальную шапку без этой всрахи с сальными волосами
Андроны, есть одна база , она создалась всё заебись, но когда я меняю в ней данные, они нихуя не меняются.
Пытался перед этим делать
Но такое чувство что программе по сути дела похуй на базу. Она как буд-то один раз создалась и всё, потому-что когда удалил/переустановил приложение появилась уже ошибка, что дропать таблицу нельзя и иди нахуй. Какого хуя эта ошибка до переустановки не появлялась?
>>942403
Вот база -
Активити в котором вызывается -
Чопоны. buildToolsVersion, compileSdkVersion и targetSdkVersion нужно ставить в максимальные, когда создаешь новый проект?
Если да, то норм ли будет работать приложение на говноустройствах, если я активно начну угорать по лямбдам и прочей вкусовщине 8 жабы?
>>942472
Только лямбды бэкпортнуты до 8 апи.
Как сделать чтобы imageView перекрывал кастомный view (линию)?
Тоесть чтобы imageView был сверху и линию не было видно
Почему у меня два раза отправляется запрос, хотя я всего один раз вызываю функцию для отправки? Я как-то не так сохраняю observable?
>>942499
Ой бля, забыл добавить, что это происходит при повороте экрана.
>>942499
А кеш то твой где валяется? А вообще вроде как тут:
решили эту проблемку и если запрос еще идет то ты к нему подключишься.
>>942477
Ты имеешь в виду джек?
>>942511
mObservablesCache - это синглтон который я инжекчу через даггер.
Вот мне это в идеале и нужно. Хочу разобраться как делать долгие запросы и при перевороте экрана подключаться к уже существующим, а не создавать новый. Погляжу, спасибо.
>>942515
retrolambda
>>942517
Если продолжаешь пилить свой велосипед, то прочти вот это -
>>942351
>>942547
Да, я видел эту штуку. У меня почти тоже самое, только они юзают cache (preparedObservable = preparedObservable.cache()), а как я понимаю он копирует ответ (или может я не так понимаю?), а мне надо чтобы к тому же самому реквесту можно было подключиться (например когда фотки на сервер заливаешь).
>>942569
Нет, оно создает обсервбл к который будет эмитить тоже самое что и исходный, второго запроса не будет, а результат будет сохарнен и выдан другому подписчику.
>>942566
Чё за лярва страшная?
>>942660
В общем да. Сделал с cache и всё заработало. Единственно что, вместо LruCache заюзал Map обычный, потому что от кеша толку нет - один хуй нужно удалять свой observable из него вручную (в onNext и onError), иначе оно всегда будет его возвращать и запроса нового не будет.
Аноны, подскажите - добавляю в студии на Activity элемент Image Button, убираю фон, устанавливая в Transperent Color и... у кнопки пропадает "анимация" нажатия.
Как с этим бороться?
Если фон не убирать, то при добавлении PNG без фона фон кнопки отличается от фона окна приложения.
Первые шаги в Андроид Деве, делаю по сайту Климова, у него ответа на этот вопрос не нашел.
>>942925
В общем, ты переизобрел store, на который тебе кидали ссылку.
>>943063
Ну бля, чёт не очень хочется подключать ещё одну либу только ради того, чтобы можно было приаттачиться к старому запросу. Да и тупо хотелось разобраться самому как это делается.
>>941207
Вроде всё просто
>>941207
Документация там плохая.
Возможно ли в Store.IO описывать структуру таблиц классами, как в cupboard?
>>943168
Я два дня втыкал пока понял что typeMapping генериться при компиляции.
Есть один метод, он запускает активити, которая вытягивает картинку из галереи. Как описать событие, которое происходит, пользователь закенселил выбор картинки?
>>943275
В onActivityResult resultCode будет RESULT_CANCELED
>>943227
Ага, вижу. Надо самому запросы писать.
В целом Store.IO всё равно страшно хороша.
>>943227
Открой пул-реквест и улучши её. Или хотя бы issue создай и опиши, что тебе там непонятно.
>>943326
Не подскажешь как запилисть update данных?
>>943370
>>943376
мне нужен PutResolver же? Или можно как то проще? Тупо в ContentValues запихнуть например айдишник не получиться?
Сап прогач, скажи как называется язык програмирования/автоматизации для андроида(аналог autoIt для винды), такой язык, которым можно тыкать по эмулированному андроиду чере262
Аноним 10/03/17 Птн 20:47:23  950838
>>950722
>>950709
>>950708
>>950513
>>950352
>>950179
>>950172
>>950154
Большинство приложений написано на Java, выучить её на хорошем уровне — это первое, что необходимо сделать. Рекомендуемую литературу см. в Java-треде.
После этого можно установить Android Studio, открыть официальную документацию
и попробовать создать по туториалам своё первое приложение.
В дальнейшем потребуется базовое знание SQL, понимание XML и JSON.
- Официальная документация:
- Полезный гайд для начинающих и продвинутых:
- Бесплатный видеокурс от Google для новичков:
- Два ресурса, единственный плюс которых — русский язык:
и
- Классика, способная дать ответ на почти любой вопрос "Как сделать xyz?":
- Kotlin — JVM-совместимый язык от JetBrains. Есть лямбды, стримы и делегаты. Можно использовать в проекте вместе с кодом на Java.
- 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. И хотя бы оно готовое приложение.
Предыдущий тред:

>>940781 (OP)
Вкатываюсь, тут же реквестирую способ сделать живые обои. В инете лежат способы через канвас, но они 10% цпу кушают. Видел еще идею через опен гл. Загнать все картинки в массив и крутить
>>940902
Стандартные же есть. Открой исходники и посмотри
Есть варианты отобразить картинку с возможностью приближения/удаления/скролла без ебли с самостоятельной реализацией всей хуйни?
Аноны я слишком тупой что бы вкурить примеры с гита Сторио. В нете туторов не от слова совсем. Кто нить может дать примитивный пример получения данный из провайдера? У меня есть связка из контракта, sqlhelpera и провайдера. Лоадер грузит это и пилит даные в объект. Как все это перевести на рельсы storio?
>>941200
Как делать репозиторий, если мне помимо круда, надо скачивать хуйню из сущность по url, загружать ее на один из серверов (по выбору), а также получать джоином из базы вместе с другой сущностью
>>941224
Разные dataSource объекты, репозиторий занимается обработкой цепочки. С rx легко и удобно.
Ананасы, как в полноэкранном приложении отключить появление статусбара при свайпе с верхнего края экрана вниз? Ведро 7.1.
>>941106
Смотрел те, где куб вращается, там просто транформация линий, не совсем то что я хочу реализовать. Мне бы или гифку проиграть или массив картинок без нагрузки на цп. Но наверное только и остается сорцы чужие смотреть. Энивей спасибо.
>>941265
Да вроде никак, у юзера всегда должен быть доступ к статус бару.
Пытаюсь убрать овердро в своем приложении, но столкнулся с такой вещью - у меня есть экран, на котором расположены текствью с полупрозрачным фоном, а бэкграунд экрана это изображение. На самом бэкграунде овердро нет, но на этих вьюхах оно >=4. Если я меняю фон с прозрачного на непрозрачный, оно становится =2. С этим можно что-то сделать или такая сильная перерисовка плата за красивый полупрозрачный фон?
>>941569
Прозрачность это дорого.
Могут ли возникнут какие-то проблемы, если использовать внутри rx-операций(которые происходят не в мейн потоке) поля активти/фрагмента, которые инжектятся дагером. Инжектятся в onCreate, а создание всех подписок происходит в onResume, отписываются в onPause?
>>941207
Бамп. Туторов точно нету.
PackageManager.getApplicationIcon() дает иконки разного разрешения в зависимости от текущего разрешения экрана.
Как получить иконки не больше чем xhdpi?
>>940781 (OP)
Сложно ли сделать кейлоггер(с высылкой данных на мой аппарат) для телефона тянки? Какими средствами это можно реализовать?
>>941606
Могут.
>>941876
Гугли winapi lowlevel hook, raw input. Еще тебе надо будет написать панель на пхп, куда будут высылаться логи.
>>941881
Сам иди нахуй.
>>941953
причем здесь ведро, малохольный?
Запилите уже нормальную шапку без этой всрахи с сальными волосами
Андроны, есть одна база , она создалась всё заебись, но когда я меняю в ней данные, они нихуя не меняются.
Пытался перед этим делать
Но такое чувство что программе по сути дела похуй на базу. Она как буд-то один раз создалась и всё, потому-что когда удалил/переустановил приложение появилась уже ошибка, что дропать таблицу нельзя и иди нахуй. Какого хуя эта ошибка до переустановки не появлялась?
>>942403
Вот база -
Активити в котором вызывается -
Чопоны. buildToolsVersion, compileSdkVersion и targetSdkVersion нужно ставить в максимальные, когда создаешь новый проект?
Если да, то норм ли будет работать приложение на говноустройствах, если я активно начну угорать по лямбдам и прочей вкусовщине 8 жабы?
>>942472
Только лямбды бэкпортнуты до 8 апи.
Как сделать чтобы imageView перекрывал кастомный view (линию)?
Тоесть чтобы imageView был сверху и линию не было видно
Почему у меня два раза отправляется запрос, хотя я всего один раз вызываю функцию для отправки? Я как-то не так сохраняю observable?
>>942499
Ой бля, забыл добавить, что это происходит при повороте экрана.
>>942499
А кеш то твой где валяется? А вообще вроде как тут:
решили эту проблемку и если запрос еще идет то ты к нему подключишься.
>>942477
Ты имеешь в виду джек?
>>942511
mObservablesCache - это синглтон который я инжекчу через даггер.
Вот мне это в идеале и нужно. Хочу разобраться как делать долгие запросы и при перевороте экрана подключаться к уже существующим, а не создавать новый. Погляжу, спасибо.
>>942515
retrolambda
>>942517
Если продолжаешь пилить свой велосипед, то прочти вот это -
>>942351
>>942547
Да, я видел эту штуку. У меня почти тоже самое, только они юзают cache (preparedObservable = preparedObservable.cache()), а как я понимаю он копирует ответ (или может я не так понимаю?), а мне надо чтобы к тому же самому реквесту можно было подключиться (например когда фотки на сервер заливаешь).
>>942569
Нет, оно создает обсервбл к который будет эмитить тоже самое что и исходный, второго запроса не будет, а результат будет сохарнен и выдан другому подписчику.
>>942566
Чё за лярва страшная?
>>942660
В общем да. Сделал с cache и всё заработало. Единственно что, вместо LruCache заюзал Map обычный, потому что от кеша толку нет - один хуй нужно удалять свой observable из него вручную (в onNext и onError), иначе оно всегда будет его возвращать и запроса нового не будет.
Аноны, подскажите - добавляю в студии на Activity элемент Image Button, убираю фон, устанавливая в Transperent Color и... у кнопки пропадает "анимация" нажатия.
Как с этим бороться?
Если фон не убирать, то при добавлении PNG без фона фон кнопки отличается от фона окна приложения.
Первые шаги в Андроид Деве, делаю по сайту Климова, у него ответа на этот вопрос не нашел.
>>942925
В общем, ты переизобрел store, на который тебе кидали ссылку.
>>943063
Ну бля, чёт не очень хочется подключать ещё одну либу только ради того, чтобы можно было приаттачиться к старому запросу. Да и тупо хотелось разобраться самому как это делается.
>>941207
Вроде всё просто
>>941207
Документация там плохая.
Возможно ли в Store.IO описывать структуру таблиц классами, как в cupboard?
>>943168
Я два дня втыкал пока понял что typeMapping генериться при компиляции.
Есть один метод, он запускает активити, которая вытягивает картинку из галереи. Как описать событие, которое происходит, пользователь закенселил выбор картинки?
>>943275
В onActivityResult resultCode будет RESULT_CANCELED
>>943227
Ага, вижу. Надо самому запросы писать.
В целом Store.IO всё равно страшно хороша.
>>943227
Открой пул-реквест и улучши её. Или хотя бы issue создай и опиши, что тебе там непонятно.
>>943326
Не подскажешь как запилисть update данных?
>>943370
>>943376
мне нужен PutResolver же? Или можно как то проще? Тупо в ContentValues запихнуть например айдишник не получиться?
Сап прогач, скажи как называется язык програмирования/автоматизации для андроида(аналог autoIt для винды), такой язык, которым можно тыкать по эмулированному андроиду чере263
Аноним 10/03/17 Птн 20:48:22  950839
А есть подобная утилита подобно вайперу, только чтобы картинки автоматически в тхреад загружала бы?
Аноним 10/03/17 Птн 21:34:46  950871
>>950838
Зачем ты флудишь тут?
Аноним 10/03/17 Птн 21:49:40  950882
Сука тупая, я уж думал кто то по моему вопросу подсказал и ответил на мое сообщение. Какой же ты жалкий, вайп 2 сообщениями.
Аноним 10/03/17 Птн 22:56:31  950930
>>950839
Шо блять?
Подобна вайперу? Утилита? Архетиктура которая картинки подгружает?
Аноним 11/03/17 Суб 05:03:10  951018
>>950930
Чтоб вайпала не копипастами, а картинками в предварительно указанной директории.
Аноним 11/03/17 Суб 09:08:24  951040
Котаны, есть surfaceview, в потоке отрисовки которого происходит выборка из дерева и отрисовка сотен кругов, залитых полупрозрачным цветом.
Пользователь может скроллить туда-сюда эту картинку.

Как оптимизировать это, чтобы процессор не жрало?
Аноним 11/03/17 Суб 10:53:17  951057
Хотел ебнуть рилм в свой проект, но внезапно жидко обосрался.
Никаких тебе JodaTime, rx2, наследования... Обидненько.
Аноним 11/03/17 Суб 11:50:39  951081
>>951018
Я нихера не понял.
Аноним 11/03/17 Суб 12:40:23  951094
>>951057
>rx2
Есть хоть один проект который с ним нормально интегрирован? Везде интероп, так что терпим дальше.
Аноним 11/03/17 Суб 12:41:58  951098
>>951094
>Везде интероп
Ват?
Аноним 11/03/17 Суб 12:43:43  951099
>>951098
https://github.com/akarnokd/RxJava2Interop
Аноним 11/03/17 Суб 13:02:09  951110
>>951099
Ну так норм, другое дело нахуй пилить свой проект под первый rx.
Аноним 11/03/17 Суб 13:06:17  951114
>>951110
Не хочется подключать еще две либы апк не резиновый (нет конечно можно, но потом).
Аноним 11/03/17 Суб 13:09:37  951118
>>951114
Заебешься потом переводить с первого на второй.
Аноним 11/03/17 Суб 13:14:12  951125
>>951118
А сейчас не заебусь? В любом случае собираюсь летом менять место работы, пусть расхлебывают, а там уже и либы обновятся.
Аноним 11/03/17 Суб 13:37:04  951144
>>951118
> Заебешься потом переводить с первого на второй.
А можно и не переводить. Работает - не трогай.
Аноним 11/03/17 Суб 13:38:18  951147
>>940781 (OP)
Аслам молекул, котаны.

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

Сам нихуя не могу нагуглить внятного.
Аноним 11/03/17 Суб 13:40:10  951148
>>951144
Он работает хуже кстати, точнее медленнее. Первый уже вроде как должен быть деприкейтед.
Аноним 11/03/17 Суб 13:40:26  951149
>>951144
Он работает хуже кстати, точнее медленнее. Первый уже вроде как должен быть деприкейтед.
Потому новый проект лучше начинать на втором.
Аноним 11/03/17 Суб 13:47:08  951160
>>951149
Конечно новые проект на втором, но кидаться вот так вот старый переписывать с интеропом незачем.
Аноним 11/03/17 Суб 13:48:55  951162
>>951147
REST
JSON
Nginx, Spring, Hibernate
Разницы между тем с кем общаться не должно быть. То есть если в вебе используется какой-нибудь реакт-хуякт, то и для гейоси, и для ведра, и для уеба будет один рест апи, котоырй просто будет выдавать жсон и все довольны.
Аноним 11/03/17 Суб 13:50:13  951163
>>951160
Тут вроде как речь идет о новом проекте и интеграции в него рилма на первом rx.
Потому проект делать на втором, а работку с рилмом пропускать через тот же интероп.
Аноним 11/03/17 Суб 13:52:05  951165
>>951162
Спасибо, анон! Примерно так себе и представлял это.
Аноним 11/03/17 Суб 14:58:50  951211
Возможно ли в SurfaceView как в обычном View: рисовать заново только, если это необходимо?
Решение в лоб приводит к тому, что изображение начинает дрожжать.
Аноним 11/03/17 Суб 20:10:42  951455
Сап. Как реализовать похожий функционал на http://www.guidingtech.com/30551/launch-android-apps-volume-buttons/ https://play.google.com/store/apps/details?id=com.irishin.buttonsremapper&hl=en ? Нужно запускать приложение кнопкой громкости/их комбинацией. Сразу без "нипагайдлайнам/нинужна/етц".
Аноним 11/03/17 Суб 23:08:52  951586
>>951455
попробуй сервис запилить, который будет слушать нажатие нужных кнопок
Аноним 12/03/17 Вск 08:51:31  951741
Чому glide растягивает пикчи под размер плейсхолдера? Можно как-то пофиксить?
Аноним 12/03/17 Вск 11:17:51  951802
14892856834250.png (12Кб, 754x215)
лiл
Аноним 12/03/17 Вск 12:23:49  951828
>>951741
>Чому glide растягивает пикчи под размер плейсхолдера? Можно как-то пофиксить?
Использовать frescolib
Аноним 12/03/17 Вск 12:42:00  951840
>>951741
Параметр scale у твоего ImageView

>>951828
Пошёл нахуй.
Аноним 12/03/17 Вск 15:03:06  951921
>>940781 (OP)
Аноны, а что сейчас для многопоточки актуально использовать, если я подумал и решил, что Rx будет избыточен? Если без левых зависимостей, то в общем есть AsyncTaskLoader, который отлично работает, но слишком много лишнего кода писать требует. Сервисы для всего использовать неудобно, особенного когда результат работы нужно в активити/фрагмент вернуть. Пока пробую библиотеку Chronos и она вроде как то что нужно.

Но может забить и писать все на Rx, которые вроде как часто упоминают в вакансиях. Не будет ли оверхедом тащить его в небольшое приложение, которое всего пару раз дергает сеть и все?
Аноним 12/03/17 Вск 15:22:14  951938
>>940781 (OP)
is that an android phone in your (что за слово?) or you...
Хелп, не расслышал слово.
Аноним 12/03/17 Вск 15:33:16  951948
>>951938
pocket
Аноним 12/03/17 Вск 15:48:24  951958
>>951840
обоснуй
Аноним 12/03/17 Вск 17:57:49  952036
Раз тут зарождается срач на тему имидж лоадинга вброшу свои пять копеек:
1) Picasso - square наше все, норм дефолтные настройки, можно вклинится в процесс загрузки и тд;
2) Glide - больше наворотов чем в пикассе, зато есть BitmapPool и поддержка гифок из коробки, привязки к лайфцайклам, из плохого - несколько другая кастомизация, билдер от нас спрятан, лично у меня недавно случился косяк со статическими урлами, который в пикассе бы решался на раз два;
3) Fresco - клятый фейсбук рррряяя, пользовался один раз, не понравилось что нужно использовать их классы вьюх, из хорошего поддержка гифок и webp, вроде бы даже на старых ведрах с памятью изворачивается через различные костыли;

Ваше мнение?
Аноним 12/03/17 Вск 18:24:32  952045
>>951921
Не будет
Аноним 12/03/17 Вск 18:39:01  952058
>>951921
Я думаю, альтернатив рексу особых нет. Всё, что предложено гуглом:
1) Требует контекста в том, или ином виде
2) Тяжело тестируемо, т.к. android-фреймворк
3) Требует очень много кода, при этом НЕ лишая разраба ебли с поворотами экрана
4) Ходят упорные слухи, что на каких-то версиях работает неправильно
Аноним 12/03/17 Вск 18:49:03  952067
>>952058
>при этом НЕ лишая разраба ебли с поворотами экрана

Лоадеры лишают как раз. Они даже данные возвращают при повороте, если они до этого уже были готовы, а не рестартуют заново.
Аноним 12/03/17 Вск 19:22:47  952102
>>952036
Glide и Picasso оба норм. Вопрос предпочтений, думаю.
А фейсбучное говно - это говно, да.
Аноним 12/03/17 Вск 19:24:16  952103
>>952067
Попробую протестируй лоадеры. А потом посмотри количество открытых багов с ними связанных.
Аноним 12/03/17 Вск 21:37:02  952177
>>951586
Это же батарею убьет быстро, и будет ли работать вне приложения/при заблокированом экране? Самое главное - чтоб из заблокированого состояния в 1-2 клика запустить приложение.
Есть какие-то еще варианты?
Аноним 12/03/17 Вск 21:46:25  952184
http://developer.alexanderklimov.ru
есть слитые уроки его?
Александр Климов 12/03/17 Вск 21:52:49  952191
>>952184
Нет
Аноним 12/03/17 Вск 22:31:14  952215
>>952177
Там может и не сервис проканает, а просто статические ресиверы. Возьми эту приложуху и декомпильни, дальше по манифесту видно будет епт.
Аноним 13/03/17 Пнд 02:16:47  952318
>>952191
Пиздабол.
>>952184
Держи, чувак!
1 месяц _http://yadi.sk/d/jv2JO8uGCkAZk
2 месяц _http://yadi.sk/d/ckvFoi26CkBGx
3 месяц _http://yadi.sk/d/ZmJCcjixCkBHw
4 месяц _http://yadi.sk/d/bM2OyBOBCkBKo
5 месяц _http://yadi.sk/d/yGnjSjaWCkBLi
Аноним 13/03/17 Пнд 08:23:15  952425
>>952177
1% потребляет foreground сервис за 17 часов, который каждые 2 сек пишет в sqlite.
Nexus 5
Аноним 13/03/17 Пнд 08:28:51  952429
>>952425
А, ну заебись тогда!
Аноним 13/03/17 Пнд 10:24:01  952495
Чопоны. Дайте ресурс, в котором хорошо объяснен CoordinatorLayout вместе с AppbarLayout скроллы, вот это все. Чет постоянно натыкаюсь на какую нибудь дичь.
Аноним 13/03/17 Пнд 10:53:07  952506
>>952318
Спасибо браток!

Было бы круто еще слитые уроки вот этого чувака http://www.fandroid.info/
Аноним 13/03/17 Пнд 11:03:25  952508
>>952506
Можем попробовать тут записаться
http://skladchik.in/threads/fandroid-%D0%9F%D1%80%D0%BE%D0%B4%D0%B2%D0%B8%D0%BD%D1%83%D1%82%D1%8B%D0%B9-%D0%BA%D1%83%D1%80%D1%81-%D0%BF%D0%BE-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B5-%D0%B8%D0%B3%D1%80%D1%8B-lunar-rover.31796/
Аноним 13/03/17 Пнд 11:11:55  952513
>>952508
Там libgdx ?
Я бы вот глянул пока лучше на продвинутый флэппи берд, т.к. только вчера глянул ютубный плейлист.
Аноним 13/03/17 Пнд 11:13:19  952515
>>952513
libgdx и box2d.

А есть какие-нибудь гайды по написанию симуляции водички на джаве? Без всяких юнити/хуюнити.
Аноним 13/03/17 Пнд 11:28:45  952529
>>952102
>>952036
Необучаемые хейтеры-неосиляторы.
Аноним 13/03/17 Пнд 12:11:44  952579
>>940781 (OP)
Анон, есть вопрос.
Делаю приложение с прогнозом погоды. Пользователь может получить погоду либо по своему текущему местонахождению, либо вбив название города. При вводе названия города, я хочу сделать, чтобы ему показывался dropdown список с названиями городов, которые соответствуют его запросу. Тиснул с OpenWeather JSON с городами, думал прогнать его через GSON и сделать суффиксное дерево и по нему запилить поиск, но есть два обстоятельсва, которые меня не устраивают:
1) Все названия на латинице. Пидорашки слишком тупы, чтобы знать как ею печатать, поэтому надо сделать так, чтобы поиск можно было вести на языке пользователя.
2) В названиях городов из этого JSON есть ебучие умлауты и прочие символы, которых нет в английском алфавите. Как их вводить знают только носители немецкого\турецкого\других языков, а суффиксное дерево предполагает поиск с точностью до буквы.
3) API, которой я пользуюсь, требует, чтобы запросы делались не по названию городов, а по географическим координатам. Они есть в моем файле, но два предыдущих условия не позволяют им пользоваться.
В общем, что посоветуешь делать? Откуда и как доставать названия городов для dropdown и географические координаты?
Аноним 13/03/17 Пнд 12:12:18  952580
>>952529
Де ты в моем посте увидел хейт, фреско всем хорош кроме выебывания своими вьюхами. Ну какого черта загрузка изображения привязана к вью?
Аноним 13/03/17 Пнд 13:56:07  952746
>>940781 (OP)
Котаны, только начинаю ковырять андроид и еще мало что знаю. Хочу сделать в программе элемент для отображения выбора как в таймере на айос - выглядит как прокручивающийся свайпом вверх-вниз список. Есть ли что-то подобное на андроиде?
Аноним 13/03/17 Пнд 14:00:55  952752
>>952746
Spinner
Аноним 13/03/17 Пнд 14:04:22  952756
>>952752
>Spinner
может конкретнее что-то. Как только не пробовал гуглить со словом спиннер. Мне нужен не выпадающий список, а список прокручиваемый свайпом вверх-вниз с визуаляцией как на айосе - будто элементы нанесены на крутящийся вал, чтоле.
Аноним 13/03/17 Пнд 16:41:04  952865
>>952756
http://guides.codepath.com/android/Working-with-Input-Views#numberpicker
Аноним 13/03/17 Пнд 16:48:00  952870
>>952865
Спасибо. Именно то, что нужно.
Аноним 13/03/17 Пнд 20:27:10  952968
>>951741
Пофиксилось добавлением .dontAnimate() к конструктору глайда.
Аноним 13/03/17 Пнд 22:02:28  953054
>>952580
Потому что ты картинку во вью грузишь. У них свой способ рисовать битмапу во вью со своей реализацией drawable, чтоб избежать утечек. Если ты хочешь отдельную битмапу, постобработку и прочее добро - там для этого дохуя инструментов и обработчиков.
Аноним 13/03/17 Пнд 22:04:04  953058
>>952756
Шел бы ты нахуй со своим "как в айосе", залетный петухан
Аноним 14/03/17 Втр 00:00:23  953158
Анон, как получить
String currentDateTimeString = DateFormat.getDateTimeInstance().format(new Date());
но с указанной мною локализацией?
Аноним 14/03/17 Втр 00:24:23  953172
>>953158
getDateInstance(int style, Locale aLocale)
Аноним 14/03/17 Втр 02:12:52  953229
>>946590
Делаем автотесты на проекте. Какой вопрос?
Аноним 14/03/17 Втр 02:13:31  953230
>>946590
Используем эспрессо
Аноним 14/03/17 Втр 04:14:57  953283
>>953158
Пользоваться JodaTime например
Аноним 14/03/17 Втр 05:29:27  953294
>>952318
О, спасибо тебе, добрый человек!
Аноним 14/03/17 Втр 14:41:26  953545
QuizActivity.PNG (21Кб, 556x341)
Question.PNG (15Кб, 419x456)
textview.PNG (56Кб, 332x622)
Анон, поясни, почему в QuizActivity отображается нулевой элемент массива mQuestionBank ? Ведь question - это int переменная
Аноним 14/03/17 Втр 15:29:06  953576
>>953545
.setText перегружен и может принимать значение ресурса в strings.xml. Это удобно, дабы не вызывать getString(R.string.question_ocean)
Аноним 14/03/17 Втр 15:36:12  953584
>>953545
Big nerd ranch дрочишь? Тоже учился на нем.

Вопрос не совсем понял. mCurrentIndex изначально 0. Ты получаешь первый Question и извлекаешь оттуда id строкового ресурса про океаны.
Аноним 14/03/17 Втр 15:39:00  953585
>>952495
Ответьте на мой вопрос плизики.
Аноним 14/03/17 Втр 15:50:58  953593
Чопоны. Есть вот запрос на сервак с коллбэком: getData(params, new Callback(){....})
Можно ли а главное, нужно ли его переписать в Rx манере? Я что-то тут слышал про то, что Rx можно организовать в некое подобие js promise для обхода лайфсайкла активити/фрагмента. Типо, если повернул мобилку, то при повторном запросе мы получим тот же самый Observable, что запрашивали в первый раз. Поясните за эту хуйню.
Аноним 14/03/17 Втр 16:05:53  953605
>>953593
Совсем как промисы не получится.
Аноним 14/03/17 Втр 22:05:19  953917
Аноны, краем уха услышал что школьник или студент может зарегать аккаунт разработчика в гугл плее бесплатно.Где и как это сделать?В гугле вообще пусто и все ведет на гугл плей девелопер консол, где надо платить 25 зеленых.
Аноним 14/03/17 Втр 22:55:46  953967
>>953585
Шапку читай плизики.
http://guides.codepath.com/android/Handling-Scrolls-with-CoordinatorLayout
Аноним 14/03/17 Втр 23:09:33  953979
>>953967
Спасибки.
Аноним 15/03/17 Срд 02:04:44  954046
Куда лучше совать локализацию данных в CleanArchitecture?
Если у меня куча запросов, и к ним везде подцепляется локаль устройства - имеет смысл полностью скрывать работу с локалью в репозитории, а в сущностях, которые идут от репозитория, никак не указывать локаль?
Аноним 15/03/17 Срд 14:14:12  954326
Котаны, вопрос про игры.
Их кроме как в юнити уже не делают?
Можно ли на раз так замутить в обычной андроид студии с минимумом сторонних библиотек нормальную игруху с графоном и караванами?
Аноним 15/03/17 Срд 14:37:11  954345
>>954326
libgdx
Аноним 15/03/17 Срд 14:59:37  954365
>>940781 (OP)
Сап, котаны. Вкатываюсь по чуть чуть в программирование на ведре на досуге. Вот я прочитал Шильдта Ява для начинающих, потом я прочитал Head First Android. Может кто посоветовать еще что-нить базовое? Не кидайтесь говном, пожалуйста. В гугле рано или поздно что-нибудь нагуглю, просто почему бы не спросить тех, кто уже прошел этот путь.
Аноним 15/03/17 Срд 15:23:00  954386
>>954365
->
>>952318
Аноним 15/03/17 Срд 16:42:27  954448
Ахаха, Jack теперь deprecated
Аноним 15/03/17 Срд 16:44:02  954449
>>954448
Нахуя?
Аноним 15/03/17 Срд 16:46:42  954453
>>954345
можно, но нахуя. Слишком низкий кпд. Юзай для мелочей. Главное никогда не юзай хуюнити
Аноним 15/03/17 Срд 16:47:26  954455
>>954449
Он был мёртв с самого рождения. Хорошо, что гугл это осознал.

https://android-developers.googleblog.com/2017/03/future-of-java-8-language-feature.html
Аноним 15/03/17 Срд 16:50:04  954457
>>954453
> Главное никогда не юзай хуюнити
Ну раз ты так сказал
Аноним 15/03/17 Срд 17:19:16  954476
>>954457
Молодец что согласен
Аноним 15/03/17 Срд 18:24:43  954522
Untitled.png (24Кб, 1115x300)
Анон, что я делаю не так, почему время которое было раньше > чем текущее время?
Аноним 15/03/17 Срд 18:39:34  954536
>>954522
Используй joda time
Аноним 15/03/17 Срд 18:45:32  954548
>>954522
> HH:mm:SS
>>954536
Щас бы ради простейшей операции либу ставить.
Аноним 15/03/17 Срд 18:47:03  954550
>>954522
Знаешь про часовые пояса?
Аноним 15/03/17 Срд 18:47:53  954553
>>954550
Нет
Аноним 15/03/17 Срд 18:48:46  954554
>>954548
Спасибо, няша. Какой же я дебил.
Аноним 15/03/17 Срд 18:49:02  954555
>>954553
Пидора ответ. Подозреваю что ты сравниваешь времена в разных часовых поясах
Аноним 15/03/17 Срд 19:44:37  954591
>>954548
Так нормальная реализация даты и времени появилась только в Java 8 и на ведре недоступна.
Аноним 16/03/17 Чтв 02:11:19  954821
>>954455
Хм. Значит ли это что мы получим жава8 в ближайшие несколько недель, чтобы это не значило
Аноним 16/03/17 Чтв 02:32:47  954829
>>954821
Да. Но опять же, это будет не полная Джава 8, а лишь то, что поддерживает Джек.
Аноним 16/03/17 Чтв 02:34:21  954830
>>954829
Хоть что то.
Аноним 16/03/17 Чтв 07:09:25  954851
>>954821
> Хм. Значит ли это что мы получим жава8
Нет, ты получишь кривой бэкпорт без бинарной совместимости. Скомпиленные под 8 либы не подключатся, только исходники.
Аноним 16/03/17 Чтв 07:37:20  954857
>>954851
Это ещё почему? Если на уровне dx будет осуществляться преобразование, то всё будет поддерживать.
Аноним 16/03/17 Чтв 10:25:35  954891
>>954851
Дебил ебаный.
Аноним 16/03/17 Чтв 13:07:09  954955
У когото есть туторы по oauth?
Аноним 16/03/17 Чтв 13:10:02  954957
>>954955
А что там сложного?
Аноним 16/03/17 Чтв 13:30:29  954961
Как называется view/layout, где карточки прокручиваются, и выходят на передний план, а остальные переходят в задний (и все это без тыкания в них)?
Аноним 16/03/17 Чтв 13:41:21  954965
>>954961
Что-то вот вроде зацикленного барабана, по достижении последнего элемента показывается первый.
Где-то видел, но никак не могу найти.
Аноним 16/03/17 Чтв 14:23:46  954994
>>954955
то что про я знаю только определение. Хочу научиться делать. Туторов под дроид вроде нету.
Аноним 16/03/17 Чтв 14:26:11  954998
Сап, анон. Есть приложение в гугл плей. И есть сайт, который ведёт на страницу скачки этого приложения.
Поступила информация, что пару раз была выявлена следующая проблема: пользователь переходит на страничку гугл плей (один раз переход был точно с сайта, в остальные разы - точно неизвестно), устанавливает приложение и вместе с приложением качается вирус неизвестного содержания, но известного поведения (фейковое приложение, сильно грузит систему). Зависимость от версии андроида неизвестна, точно есть на 23 api. Не воспроизводится. (Судя по отзывам, было не более десятка случаев за 1.5к установок (это если учесть людей, которые бы проигнорировали и не стали бы сообщать, так-то всего два отзыва)) .
Что это может быть, чем может быть вызвано и как отдебажить?
Аноним 16/03/17 Чтв 14:30:10  955002
>>954998
Чекни ссылку, может там фейковый стор. Плюс могут быть изначально инфицированные устройства.
Аноним 16/03/17 Чтв 18:29:56  955108
1.png (20Кб, 302x449)
2.png (20Кб, 306x455)
3.png (35Кб, 801x680)
4.png (36Кб, 489x484)
По клике на 3ий imageView (скрин 1) ему присваивается другой битмап, после этого его пидорасит (скрин 2) по активити. Еще эти imageView как-то смещены в блупринте (скрин 3).

В чем проблема?
Аноним 16/03/17 Чтв 18:33:52  955110
Есть какая-нибудь приблуда для андроид студии, чтобы считать производительность кодомакаки, которая ее пользует?
Например, сколько строк добавлено за сегодня, сколько удалено и тд.

Чтобы унижать\стимулировать себя, говоря "Пидор ленивый", или наоборот, хвалить со словами "Уу, копипастер поехавший", в зависимости от статистики.
Аноним 16/03/17 Чтв 19:00:00  955124
>>955110
Были плагины для Эклипса, вроде.
Аноним 16/03/17 Чтв 19:34:13  955153
>Работаешь в гугле\jetbrains за сотни тысяч баксов, хуяришь имя эмулированного устройства по умолчанию как 4_WVGA_(Nexus_S)_API_21
>Вываливаешь эмуляцию на старте с
>emulator: ERROR: virtual device name contains invalid characters
>emulator: could not find virtual device named '4_WVGA_(Nexus_S)_API_21'
>Получаешь премию
Аноним 16/03/17 Чтв 19:40:48  955158
>>955153
Не просто не смочь в валидацию полей в 2017 в своей собственной среде разработки, но еще и генерировать туда фейловые имена - это пиздец.
Ладно бы васяны, но это же огромная корпорация с гигантскими доходами и кучей сотрудников.
Аноним 16/03/17 Чтв 20:09:06  955199
Не добавляется пикча в Notification, там есть какие-то ограничения?
Если да, то какие?
Аноним 16/03/17 Чтв 20:09:27  955200
>>955199
В кнопки для Notification*
Аноним 16/03/17 Чтв 20:09:55  955201
>>955199
Какой телефон? У меня на хуеми ни в каком приложении не видно, так что может в этом проблема.
Аноним 16/03/17 Чтв 20:11:23  955203
>>955201
Nexus 5x api 25
эмулятор
Аноним 16/03/17 Чтв 20:12:39  955206
>>955199
У меня еще веселее, у меня на некоторых устройствах не видно ШРИФТ. И хз, почему. Заменяется на стандартный. На других все ок.
Аноним 16/03/17 Чтв 20:12:58  955207
>>955203
В кнопки как в RemoteView?
Аноним 16/03/17 Чтв 20:13:57  955208
>>955207
Через addAction добавляю

>>955206
>>955201

Вот что нашел
>Every action must have an icon (32dp square and matching the Holo Dark action bar visual style)
Аноним 16/03/17 Чтв 20:26:29  955221
Посоветуйте интересных опенсурс приложений на "поизучать сорцы". Только не гиганских на 1000 классов типа телеграма, а что-нибудь что можно осилить за пару дней-неделю. Но и не говноподелки васянов, которые сами нихуя не умеют.
Аноним 16/03/17 Чтв 20:58:46  955258
>>955221
Как ты себе представляешь "что-то интересное" в 2 класса, и при этом не шаблонное говно уровня гуглопримеров?
"Что-то интересное" требует написания кучи велосипедов и разгребания зависимостей между ними.
Аноним 16/03/17 Чтв 21:25:28  955275
>>955221
Любую Haskell библиотеку с first-class функторами и морфизмами, например categоry-extras или recursiоn-schemеs. Это действительно интересно. А вот

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

мимо
Аноним 16/03/17 Чтв 21:35:10  955278
Как лучше всего писать чейнджлоги для пользователей?

TextView.setText( длииинная простыня из "бла бла бла \n" +

как-то муторно.
Аноним 16/03/17 Чтв 21:35:11  955279
>>955221
https://bitbucket.org/derekwilson/recommender-android/src
Аноним 16/03/17 Чтв 21:39:21  955281
>>955275
Вообще-то он просил примеры приложений, а не кирпичей.
Обработка которых через "унылый будничный дрочь" и дает в итоге какую-то интересную фичу.
Аноним 16/03/17 Чтв 21:40:50  955283
>>955281
Ну да, ты прав. Но понятия не имею, что там интересного.
Аноним 16/03/17 Чтв 21:54:23  955297
>>955283
Контекст применения, конечно. Итог этого дроча, в реализацию которого можно занырнуть поглубже, пусть даже и местами, если надо.

Не обязательно же читать всю статью "НАСА созвала экстренную комиссию по вопросу инопланетной жизни", достаточно прочитать вывод в конце и вычленить некоторые положения в середине.

Или не обязательно разбираться в физике вплоть до частиц и их отношений, чтобы примерно представлять концепцию Большого Взрыва.

ну вы понели.

А кирпич - ну лежит он, и хуй знает, все ли возможные места приложения ты сможешь придумать. А так ты увидишь, как из кирпича вырезают самотык и тоже захочешь.
Аноним 16/03/17 Чтв 22:21:28  955321
>>955110
Ага. Git называеться. Просто смотришь на чейнджлог коммита.
Аноним 16/03/17 Чтв 22:22:33  955324
Аноны, у меня большие проблемы. В общем выучил я java core. Захотелось изучить бек-энд разработку, посмотрел какие-то туториалы, наткнулся на json. Почитал в интернете- пришел к выводу что необходимо изучить front-end на каком-то уровне. До этого знал основы html, css но не вникал. Тут начал вникать и понял насколько это не мое, все эти формочки, все эти тонны кода сраного, все эти плавающие элементы. Меня уже тошнит от этого. И тут я задался вопросом, как мне это поможет как back-end'ру? Что мне нужно знать из fronta конкретно? Как работает форма и http методы? А Java script и тот же json на стороне front-end'а также необходим? или можно дропнуть это унылое занятие и пойти учить сам back-end?
Аноним 16/03/17 Чтв 22:22:38  955325
>>955321
Я стесняюсь выкладывать свое говно на гитхаб.
Аноним 16/03/17 Чтв 22:25:05  955328
>>955325
Гитхаб!=гит. Есть локальный гит, есть битбакет, гитлаб.
Аноним 16/03/17 Чтв 22:25:20  955329
>>955324
А может ты уйдешь нахуй с треда про андроид?
Аноним 16/03/17 Чтв 22:26:14  955331
>>955329
ебать я наркоман, соре
Аноним 16/03/17 Чтв 22:27:51  955333
>>955278
Создаешь html, загружаешь в WebView.
Html это лучший способ, когда нужно отобразить много текста с уникальными элементами.
В TextView же обычный plain-текст, который ты не можешь форматировать как хочется.
Аноним 16/03/17 Чтв 22:32:10  955334
>>955328
>локальный гит, есть битбакет, гитлаб.
Ооо, это то что нужно тогда. Сяп.
Аноним 16/03/17 Чтв 22:35:56  955342
>>955258
Я не говорю в 2 класса, оф кос я и хочу чето с зависимостями и разгребанием кода, но не совсем жирноту типа официальных клиентов вк, фейсбук или еще какой-нибудь телегохуйни на овер 9000 классов, а чтобы можно было в одиночку относительно быстро осилить.

Вот например недавно изучил https://github.com/iSoron/uhabits Очень годное приложение, которым я и сам пользуюсь, в исходниках 100 ява файлов и автор писал от души. А взять каких-нибудь индусов из фб, у которых 100500 классов и зависимостей, которые героически преодолевают 64к методов, мешают в лапшу js php java - такое сразу нахуй.

Наверняка есть тысячи ламповых андроид приложений, которые будет интересно поизучать и вдохновится.
Аноним 16/03/17 Чтв 23:07:26  955365
Вечер в хату, аноны. Начал пробовать javafx и сразу столкнулся с проблемой. У меня есть GridPanel, в каждой ячейке которого лежит TextField. Как мне достать оттуда значение TextField или его цвет? С помощью метода GetChildren()(я пытался но там возвращает коллекцию и я не знаю как в ней найти моё текстовое поле)?Можно ли обращаться через квадратные скобочки, как с массивом делали? Что то типо grid[0][1]?
Аноним 16/03/17 Чтв 23:24:06  955388
>>955365

-> >>955329
Аноним 16/03/17 Чтв 23:25:13  955391
>>955365
>android
>javafx
ты опять начинаешь, шакал ебучий?
http://stackoverflow.com/questions/20655024/javafx-gridpane-retrive-specific-cell-content
Через квадратные скобочки нельзя, массив одномерный. Индекс в возвращаемом массиве GetChildren можно высчитать самому, если тебе известны столб\строка и общее число столбцов. Например (currentRow * totalColumns) + currentColumn. Enjoy your javaparasha без нормального менеджмента столбцов
Аноним 16/03/17 Чтв 23:31:02  955398
Аноны, приложение работает с неким апи. У апи описан контракт. Ну т.е. какие ответы оно будет отдавать на какие запросы. И нужно замокать эти ответы, т.к. логика сложная. Как это сделать? Мне бы какой-нибудь инструмент типа proxy. Есть такой? Сейчас charles юзаю, но это не совсем то.
Аноним 16/03/17 Чтв 23:31:16  955399
>>955391
ну сорян, я прост сука уебок читать не умею, ты меня с кем-то спутал, я другой даун. Я понимаю, что массив одномерный я не понимаю какие элементы в нем хранятся как их привести к типу TextField, idea на меня ругается, а я не ебу как с этого обьекта вытянуть то, что мне надо.
Аноним 16/03/17 Чтв 23:36:12  955408
>>955398
flavor + okhttp interceptor
Аноним 16/03/17 Чтв 23:42:05  955410
>>955408
Так код писать надо и собирать проект. Было бы здорово, чтобы ещё и тестировщик мог моки писать, чтобы все тест кейсы пррверить.
Аноним 16/03/17 Чтв 23:42:11  955411
>>955399
Берешь документацию, ищешь метод
https://docs.oracle.com/javafx/2/api/javafx/collections/ObservableList.html

>getChildren

>public ObservableList<Node> getChildren()
То есть, метод возвращает список из Node
https://docs.oracle.com/javafx/2/api/javafx/scene/Node.html
А Node это суперкласс для твоих TextField.
Достаешь из результата getChildren() нужный Node.
Node huiNod = достаешь Node
И кастуешь на него (TextField) huiNode. Пихаешь это в переменную или заключаешь в скобки, и вызываешь нужный метод уровня "вытащить текст из TextField"

Ты хуево базис java выучил. В ООП и в областях видимости\пространстве имен вообще ни бум бум.
Аноним 17/03/17 Птн 00:04:23  955424
>>955411
Ну как тебе, сказать, я сука один в один хуярил, но мне выдает ошибку, я понимают что TextField это наследник Node, и я пишу в скобочках тип к которому хочу привести, но мне выдает ошибку, говорит, подчеркивает красным и говорит нельзя приравнять java.awt.TextField и Node. Вот поэтому то я сюда и пришел, думал, мож что-то не так делаю
Аноним 17/03/17 Птн 00:06:22  955427
>>955410
хуеки
Аноним 17/03/17 Птн 00:11:38  955432
>>955424
Давай копипаст этой строчки с ошибкой. И кусок кода, где ты это творишь.
Аноним 17/03/17 Птн 00:29:55  955443
>>955432
А всё уже, спасибо анон, была проблема в пакете.
Аноним 17/03/17 Птн 01:13:34  955468
Как через css совладать с размером шрифта? Чтобы отображался одинаково адекватно на всех размерах экрана.
Аноним 17/03/17 Птн 04:39:48  955525
>>955108
Нахуй иди со своим блюпринтом.
XML сюда
Аноним 17/03/17 Птн 04:41:00  955527
>>955158
>кучей сотрудников.
Такие же Васяны
Аноним 17/03/17 Птн 13:43:39  955706
Всем чики в етом чяте. Есть арчик, в нем android studio. Скажите ньюфажиньке в разработке под ведро как подключить например это https://github.com/odnoklassniki/ok-android-sdk в прожект. Спасибо заранее.
Аноним 17/03/17 Птн 13:45:25  955707
Screen Shot 201[...].png (317Кб, 1846x1536)
>>955706
Аноним 17/03/17 Птн 13:48:32  955708
>>955707
А кнопочками там никак нельзя? Клинкуть куда-то там, вставить адрес репозитория, вот это всё. Пойду гуглить что за Maven.
Аноним 17/03/17 Птн 13:52:31  955709
>>955708
>Пойду гуглить что за Maven
Лолблядь!
Аноним 17/03/17 Птн 14:19:30  955719
>>955708
Можно, но кликать дольше чем взять и скопировать-вставить ОДНУ БЛЯТЬ ОДНУ СУКА ОДНУ СТРОЧКУ БЛЯТЬ. Ты уж попробуй как-то по порядку все учить, а?
Аноним 17/03/17 Птн 14:33:34  955725
>>955719
Мне просто скомпилять надо.
Аноним 17/03/17 Птн 14:44:51  955732
>>955002
Я же говорю, что не воспроизводится ошибка. Как ссылка может быть фейковой для одного девайса и нефейковой для другого? Типа, раз в месяц на один час в ссылку инжектят вредоносный контент? Но тогда он бы не открывался в гугл-плее, очевидно же. А предположение, что и ссылка инфицирована, и ещё и гугл плей на девайсах фейковый отсекается бритвой Оккама.
>изначально инфицированные устройста.
Я тоже надеюсь на это, но нужно проработать все варианты.
>>954998
Бамп, аноны, у кого есть ещё варианты?
Аноним 17/03/17 Птн 14:50:26  955739
>>955725
Добавь строчку:
compile 'ru.ok:odnoklassniki-android-sdk:2.0.2'

в dependencies {...} build.gradle нужного модуля.
Аноним 17/03/17 Птн 16:37:27  955795
Сап, сколько просить джуну в Киеве? Кроме сдк, кор явы, ооп да алгоритмов знаю: Glide/Picasso, Retrofit с OKHTTP, Rx, StorIO, Dagger, GMaps, тестирование Robolectric, плюс куча мелочи типа ButterKnife, EventBus, IcePick и тд. За это стыдно 500 просить? И посоветуй с "роадмапой" что из этого и в каком порядке стоит учить: Firebase, Play Services, Analytic, In-app Billing, Espresso, LeakCanary?
Аноним 17/03/17 Птн 16:46:52  955803
>>955795
Главное котлин не учи
Аноним 17/03/17 Птн 16:59:47  955812
>>955803
Почему? Норм же
Аноним 17/03/17 Птн 17:21:58  955826
>>955221
https://4pda.ru/forum/index.php?showtopic=200537
Аноним 17/03/17 Птн 17:24:03  955829
>>955812
сахарец плюс пиздец зависимы от того что гугел будет делать с джавой. Я не удивлюсь если они запилят свой сфифтgolang
Аноним 17/03/17 Птн 18:31:26  955880
Почему нотификации везде работают по разному, если работают вообще?
Аноним 17/03/17 Птн 18:38:29  955885
>>955880
Вот почему: https://medium.com/russian/почему-мой-телефон-не-обновится-до-нового-андроеда-e4cd5fa3fa85
Аноним 17/03/17 Птн 18:43:59  955889
>>955885
И как с этим жить?
Аноним 17/03/17 Птн 18:51:00  955892
>>955829
> сахарец плюс пиздец зависимы от того что гугел будет делать с джавой. Я не удивлюсь если они запилят свой сфифтgolang
Хз, пол года уже на нем. Норм.
Аноним 17/03/17 Птн 19:06:01  955896
>>955795
Бамп
Аноним 17/03/17 Птн 19:06:43  955898
>>955896
Тебе ебало обоссать?
Аноним 17/03/17 Птн 19:25:41  955905
>>955898
Главное на вопрос ответь.
Аноним 17/03/17 Птн 19:43:34  955916
>>955905
Ответил тебе за щеку.
Аноним 17/03/17 Птн 22:25:35  956035
>>955795
>знаю
А применять то умеешь?
Аноним 17/03/17 Птн 22:53:03  956048
>>955795
500 бачей за этот стек? Неужели у андроид девелоперов такие низкие зп по рынку?
Мимоангуларщик перекатывающийся на андроид, т.к. веб говно на 1.5к
Аноним 17/03/17 Птн 22:58:03  956054
>>956048
У меня 1.5К. Но андроид тоже днище, лучше в iOS закатывайся.
Аноним 17/03/17 Птн 23:03:29  956057
>>956054
Мне похуй на что, айос или андроид. Главное, чтобы приложение было нативным. До этого проработал WPF кодером 5 лет и пришлось перекатываться на веб в силу того, что в вебе меньший порог вхождения на те же бабки, что я получал. Полностью разочаровавшись в вебе, пришел к железному выводу перекатываться обратно на нативщину.
Аноним 17/03/17 Птн 23:43:11  956071
>>956057
Двачую. Нативная разработка - наше всё. Ксамарин и веб-поделки - для говноедов.
Аноним 17/03/17 Птн 23:59:08  956077
>>956035
Как и всякий нуб) В общем да. Но сильно не углублялся. Дрочить скил ещё успею а жрать и за квартиру платить надо.
Аноним 18/03/17 Суб 00:02:15  956080
>>956048
У меня практика уровня своего да чужого диплома плюс всякий треш в духе погодных апп. С рхсом да дагером.
Аноним 18/03/17 Суб 09:11:51  956171
>>955739
gradle этот сам найдет сорцы на гитхабе?
Аноним 18/03/17 Суб 09:21:47  956177
gradle.png (161Кб, 1366x768)
>>956171
Аноним 18/03/17 Суб 09:51:02  956195
>>956048
> 500 бачей за этот стек?
Этот стек за пару недель осваивается, если не быстрее. Тот же rx я вообще не осваивал, просто сел и для меня всё было сразу очевидно, будто так и должно быть; с половиной перечисленных либ также. Платят за опыт, это куда важнее и слабо зависит от знаний технологий.
>>955829
> сахарец
Хороший сахар это всегда удобно. Попробовав котлин или скалу, на джаве уже тяжело становится писать, до того это ущербный язык.
Хотя бы для общего развития стоит поучить, это полезно.
Аноним 18/03/17 Суб 10:45:58  956216
>>956195
дык 500 просить можно или нет?
Аноним 18/03/17 Суб 11:13:44  956236
>>955795
Так ты знаешь, или писал с этим проекты? Тут вроде такая история, что можно написать проект на голых асинктасках с ручной обработкой поворота, и это будет для работодателя более ценно, нежели знание кастомных либ.
Аноним 18/03/17 Суб 11:33:42  956246
>>955795
700-800 проси, базарю. Может и скинут до 500-600, но главное заднюю не давай и не опускайся до уровня "обоссыте но возьмите, готов работать за опыт еду". Если хоть чем то покажешь на собесах такую позицию - инстант фейл.
Аноним 18/03/17 Суб 12:02:54  956258
>>956216
Нельзя
Аноним 18/03/17 Суб 12:03:47  956259
>>956236
>это будет для работодателя более ценно
Маняистории
Аноним 18/03/17 Суб 14:27:21  956318
Вопрос по даггеру2. Не совсем понял хуйни с сабкомпонентнами. Вот, представим, что у нас есть компонент для аппликухи, который мы инициализируем в Application - ок. Я хочу сделать компонент, который будет относится к лайфсайклу активити предоставлять презентер например, при этом переживая повороты. Во всех мануалах, что нашел, посоны или определяют этот компонент в Application что очень сильно продлевает его жизнь или инициализируют непосредственно в активити сокращая срок жизни как минимум в 2 раза, при условии, что будем вертеть мобилку. Но, при этом, во всех этих мануалах, везде пишется, что типо даггер2 обеспечивает ложение хуя на повороты. Я что-то не так понял?

Как пример - вот статьи:
https://habrahabr.ru/post/279641/
http://guides.codepath.com/android/Dependency-Injection-with-Dagger-2#scopes
Аноним 18/03/17 Суб 14:31:57  956322
>>956195
Хуй знает бро. Если сидеть без работы и сычевать дома, то может 2 недели и хватит. А когда у тебя веслание 9.00 - 18.00, то очень мало времени остается. Плюс ко всему, очень лень что-то делать после работы.
Аноним 18/03/17 Суб 15:02:46  956337
>>956177
Там же написан комментарий, что не суй сюда зависимости, а суй их в файл конкретного модуля.
Аноним 18/03/17 Суб 15:06:07  956340
>>956318
Сами по себе скоупы ничего не делают, они служат лишь как идентификаторы. Их время жизни ты должен определять сам.
Аноним 18/03/17 Суб 15:08:17  956342
>>956340
Подскажи тогда, каким образом обеспечить жизнь компонента в пределах жизни активити, ложа хуй на повороты
Аноним 18/03/17 Суб 15:12:35  956345
>>956340
Много вариантов.
Например, использовать onRetainCustomNonConfigurationInstance(). Или хронить в памяти синглтон с мапой, которая хранит различные компоненты (нужно будет вручную заниматься инвалидацией).
Или хранить в retain fragment.

А вообще, твой презентер должен тоже умирать и пересоздаваться вместе с UI, а не сохраняться всё это время.Это не его ответсвенность.
Аноним 18/03/17 Суб 15:12:53  956347
>>956342

-> >>956345
Аноним 18/03/17 Суб 15:30:02  956358
>>956345
> твой презентер должен тоже умирать и пересоздаваться вместе с UI
Почему?
Аноним 18/03/17 Суб 15:33:43  956361
>>956358
Зачем ему переживать поворот экрана?
Чтобы сохранить состоянии представления? Это не его ответственность, этим должно заниматься представление или view state.
Чтобы сохранить выполняющиеся запросы? Это не его ответственность. Это должно происходить на уровне модели.
Если тебе нужно сохранять презентер, значит, он делает у тебя слишком много.
Аноним 18/03/17 Суб 15:45:54  956373
>>956361
Как я себе представляю MVP в андроиде: поправь, если не прав
1) Модель. Тут все ясно. запросы, хуе мое.
2) Вьюха. Взаимодействие с юзером. В этой роли выступает активити/фрагмент.
2) Презентер. Бизнес логика. Штука, абстрагированная от вьюхи, и уж тем более от лайфсайкла. Она тупо привязана к текущему экрану и все. При поворотах, по идее, просто вновь созданная активити/фрагмент должны взять и отрисовать текущее состояние презентера.

В твоих рассуждениях получается, что вьюха должна заниматься состоянием презентера, сохраняя его и передавая следующему презентеру. Слишком по ебанутому, на мой скромный взгляд, звучит.
Аноним 18/03/17 Суб 15:49:11  956375
>>956373
> состояние презентера
Я тебе и говорю о том, что у презентера не должно быть состояния.
Аноним 18/03/17 Суб 15:54:42  956376
>>956375
Смотри. Вот есть у меня некий сформированный фильтр, по которому я вытягиваю данные. На мой взгляд, его лучше сохранить в презентере, чтобы при повороте экрана заного отрисовать его визуальное представление и загрузить данные из модели по этому фильтру возможно закешированные. Если мы исключаем сохранение состояния в презентере, то как мне лучше воспроизвести сценарий с фильтром?
Аноним 18/03/17 Суб 16:01:10  956381
>>956361
И каким образом пересозданный презентер подцепит выполняющийся запрос в модели?
Аноним 18/03/17 Суб 16:03:40  956384
Есть ли лучший способ заставить PreferenceActivity сохранять настройки в int, чем

https://github.com/Flipboard/psync/issues/5

По умолчанию какой-то бред, можно пометить настройку как
android:inputType="number", но сохраняется она все равно как строка, и вполне вероятно - пустая.
Аноним 18/03/17 Суб 16:06:20  956386
>>956376
Откуда у тебя этот фильтр? От юзера? Значит это view state. Откуда-то из друго места? Значит это относится к модели.
>>956381
RxJava. Или Store, если не хочешь реализовывать это сам.
Аноним 18/03/17 Суб 16:08:13  956389
>>956384
Зачем тебе какая-то васянобиблиотека для этого? Две строчки кода ведь, чтобы вручную сохранить как число. https://developer.android.com/reference/android/content/SharedPreferences.Editor.html#putInt(java.lang.String,%20int)
Аноним 18/03/17 Суб 16:15:28  956394
>>956389
Там не библиотека, а пример сабкласса. Типа такого
https://github.com/jrgifford/androguard/blob/master/examples/android/gtalksms/src/com/googlecode/gtalksms/EditIntegerPreference.java

>две строчки кода ведь, чтобы вручную сохранить как число
И как я это сделаю, если PreferenceScreen строится на основе EditTextPreference?
Чтобы сохранять в SharedPreference, все равно нужно делать сабкласс EditTextPreference, в переопределенных методах которого уже самому конвертировать в int и сохранять.

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

В примере выше строк 39 (пусть и 70% нефукциольный мусор), а не две. Ради очевидной хуйни многовато кажется, особенно для инструмента, который позиционируется как "минимум пердолева, сделал разметку и получил готовые настройки"
Аноним 18/03/17 Суб 16:20:28  956398
>>956386
Что RxJava. Как подцепить обратно этот observable нет блять я не спрашиваю про cache()? Его нужно мало того, что хранить, так еще и костылить систему правильной их идентификации, чтобы если у тебя два однотипных запроса пошло, они оба отдались обратно к презентеру корректно. Да и кто отвечает за удаление их ссылки после отработки, ведь ты же не знаешь на уровне модели, заберет ли презентер их обратно, или он уничтожен окончательно? Или так и будешь хранить все инстансы observabl'ов в какой-нибудь хэш-мапе "номер запроса - obseravble" без очистки?
Ну и никто не отменяет кучи ебли с сохранением состояния в бандл, вместо простого сохранения в переживающий перевороты вьюстейт, который привязан к презентеру.
Аноним 18/03/17 Суб 16:30:00  956400
>>956398
> как
Я же уже писал, смотри код https://github.com/NYTimes/Store
> переживающий перевороты вьюстейт
Я тебе об этом и говорю. Ты точно читаешь мои сообщения? Только причем тут презентер - непонятно, это же не MVVM.
Аноним 18/03/17 Суб 16:32:07  956401
>>956394
Не проще какой-нибудь OnChangeListener к твоему EditText'у добавить, и самому сохранять значение?
Аноним 18/03/17 Суб 16:43:24  956405
>>956401
>OnChangeListener
Скорее всего. Особенно с точки зрения добавления валидатора (диалог вылезает с предупреждением, например,).
Там метод onSharedPreferenceChanged вызывает ДО записи же, да? Из оф документации не понятно. Скорее всего да.
Аноним 18/03/17 Суб 17:53:40  956423
zhtin7.jpg (47Кб, 600x450)
> android.text.TextUtils.isDigitsOnly("")
>true
Вы видите числа? А они есть!
Ну ебана. Такое чувство, что мне нужно написать свою стандартную библиотеку с нуля.
Аноним 18/03/17 Суб 18:28:42  956440
>>956401
И все же OnChangeListener так себе вариант.

И причина в диалоге. Он срабатывает, когда он уже закрывается и пытается записать нечто в SharedPreference.
Допустим, я не хочу чтоб кто-то записал 100500 в поле. Без кастомного диалога я узнаю об этом только постфактум. И мне придется заставлять пользователя еще раз открывать настройки для редактирования.

Лучший вариант - не дать ему закрыть диалог, если он записал какое-то говно, как по мне.
Аноним 18/03/17 Суб 18:38:49  956448
>>956440
Ну так и напиши тогда просто свой DialogFragment, который проверяет ввод пользователя и если всё ок, то сохраняет в SharedPreference.
Аноним 18/03/17 Суб 18:43:21  956452
>>956448
Угу.
Что-то типа

>DialogPreference - override showDialog()

http://stackoverflow.com/questions/2620444/how-to-prevent-a-dialog-from-closing-when-a-button-is-clicked
Аноним 18/03/17 Суб 19:00:22  956459
>>956322
Не, ну тут правда, если уже работаешь, то быстро не выйдет. С другой стороны, в таком случае торопиться некуда особо.
Аноним 18/03/17 Суб 19:01:47  956460
>>956405
>onSharedPreferenceChanged
>Changed
После он вызывается.
Аноним 18/03/17 Суб 19:04:54  956462
>>956460
Я уже заметил, а даже если бы и до - все равно не то что надо.
Аноним 18/03/17 Суб 19:10:39  956464
>>956318
Я пихаю компоненты в статический WeakReference инжектора компоненты.
Каждый дрочит как хочет.
Аноним 18/03/17 Суб 19:14:26  956467
>>956318
https://medium.com/@Zhuinden/retaining-dagger-components-across-configuration-change-using-service-tree-3709c78bf6d2
Аноним 18/03/17 Суб 21:32:32  956534
Анон, поделись какой-нибудь статьей про использование криптографии в Android и Java.
Суть такая - хочу сделать между клиентом и API обмен в виде зашифрованных сообщений (например, видел такое у какой-то биржи, т.е. апишка хавате мессаджи только зашифрованные определенным способом и все такое).
И если на php это еще худо-бедно реализуемо mcrypt'ом или openssl, то в джаве я не в зуб ногой.
Будет полезно также кинуться статьей про общую реализацию такого, если кто-то уже делал и публиковал.
Аноним 18/03/17 Суб 21:33:35  956535
Какая-то хуйня все равно выходит с этими валидаторами.
В принципе, если в showDialog ставить кнопке Ок свой setOnClickListener - диалог не закрывается, если не выполнены условия.
НО если они выполнены - ничего не сохраняется, потому что onDialogClosed всегда получaет false. Помогает только костыль в виде прямого вызова onDialogClosed(true). Но тогда onDialogClosed вызывается два раза (хотя, onDialogClosed(false) все равно ничего не делает). Мелочь, но НЕПРИЯТНА. Костыль, говно.

А больше ничего переопределить нельзя, потому что это false передается через приватное поле. Разве что с reflection анально поиграться.


Вот этот диалог он стандартный или самописный?
Аноним 18/03/17 Суб 21:33:59  956536
>>956535
>Вот этот диалог он стандартный или самописный?
Пик проебался но да похуй, уже нашел.
Аноним 18/03/17 Суб 21:40:32  956540
>>956535
Вообще, лучше для чисел диалогом ставить NumPicker, видимо.
Но строки все равно придется валидировать через ебаные нечеловеческие костыли.
Аноним 18/03/17 Суб 22:09:52  956565
>>956534
https://habrahabr.ru/post/181372/
Аноним 19/03/17 Вск 01:28:04  956652
Хочу использоваться в качестве summary у Preference шаблон для форматирования строки, в который буду подставлять значения.

Вопрос. как вытащить из xml атрибут android:summary?
Preference.getSummary не вариант - ведь он выдаст строку, которую не отформатировать, если summary уже было установлено.
Аноним 19/03/17 Вск 02:18:39  956683
>>956652
Хотя ладно, можно сохранять summary как шаблон в переменной при создании Preference.
А потом переопределить setSummary, передав super.setSummary() уже отформатированную строку.
Аноним 19/03/17 Вск 20:51:06  957060
алярм.PNG (24Кб, 726x159)
Котаны, подскажите че не так?
Пытаюсь запускать скрипт с помощью AlarmManager каждые 5 минут, но он, сука, то не сработает, а потом аж два раза подряд, либо ваще отстает на минуту каждые полчаса.

Всё на девайсе с API 17. Т.е. setRepeating должен точно срабатывать.

Аноним 19/03/17 Вск 20:51:42  957061
>>957060
Ну и логи, естесно:

<...>
17.03.2017 07:20:30
17.03.2017 07:25:30
17.03.2017 07:30:30
17.03.2017 07:40:25 <-вот
17.03.2017 07:40:30 <-вот
17.03.2017 07:45:30
17.03.2017 07:50:30
17.03.2017 07:55:30
17.03.2017 08:00:30
17.03.2017 08:10:25 <-вот
17.03.2017 08:10:30 <-вот
17.03.2017 08:15:30
17.03.2017 08:20:30
<...>
17.03.2017 16:50:30
17.03.2017 16:55:30
17.03.2017 17:01:10 <-вот
17.03.2017 17:05:30
17.03.2017 17:10:30
17.03.2017 17:15:30
17.03.2017 17:21:08 <-вот
17.03.2017 17:25:30
17.03.2017 17:40:29 <-вот
17.03.2017 17:40:29 <-вот
17.03.2017 17:40:30 <-вот
17.03.2017 17:45:30
17.03.2017 17:51:09 <-вот
17.03.2017 17:55:30
17.03.2017 18:00:50
<...>
Аноним 19/03/17 Вск 22:07:26  957119
>>957060
Доки для пидоров

> For example, if you have set a recurring alarm for the top of every hour but the phone was asleep from 7:45 until 8:45, an alarm will be sent as soon as the phone awakens, then the next alarm will be sent at 9:00.

> If your application wants to allow the delivery times to drift in order to guarantee that at least a certain time interval always elapses between alarms, then the approach to take is to use one-time alarms, scheduling the next one yourself when handling each alarm delivery.

Ну и конечно остается вопрос нахуя дрочить девайс каждые 5 минут.
Аноним 19/03/17 Вск 22:17:10  957122
>>957119
>>957119
>If an alarm is delayed (by system sleep, for example, for non _WAKEUP alarm types), a skipped repeat will be delivered as soon as possible. After that, future alarms will be delivered according to the original schedule; they do not drift over time. For example, if you have set a recurring alarm for the top of every hour but the phone was asleep from 7:45 until 8:45, an alarm will be sent as soon as the phone awakens, then the next alarm will be sent at 9:00.
>If an alarm is delayed (by system sleep, for example, for non _WAKEUP alarm types)

>alarm.setRepeating(AlarmManager.RTC_WAKEUP, firstMillis, 5 60 1000, pIntent);

Разве тот случай?
Аноним 19/03/17 Вск 22:21:18  957126
>>957119
>>957122
Тем более, девайс-то просыпается каждые 5 минут с точностью в миллисекунду, за исключением некоторых случаев, о которых я написал выше.
Аноним 20/03/17 Пнд 01:31:05  957245
>>956195
>Этот стек за пару недель осваивается, если не быстрее.
Ты гений чтоле, или в вас вузе хорошо задрочили на программирование??
Аноним 20/03/17 Пнд 01:33:10  957248
>>957245
Он просто пиздабол.
Аноним 20/03/17 Пнд 01:42:27  957252
startandroid норм? или лучше alexanderklimov?
Аноним 20/03/17 Пнд 01:43:26  957254
>>956459
Если не торопиться, то вообще хуй что выучишь. У меня щас план переката с веба на андроид и я очень хочу поскорей перекатиться.
Аноним 20/03/17 Пнд 01:45:43  957255
>>957252
лучше сразу оба.
Аноним 20/03/17 Пнд 04:05:58  957285
>>957252
Попытался по первому - оказалось устаревшее говно. Лучше уж блядь доки на ангельском читать, чем этого чмыря.
Аноним 20/03/17 Пнд 05:32:46  957288
>>957252
Никого из них.
alexanderklimov просто берет и копипастит офдоки, обмазав их котами. А примеры всегда говно уровня хеллоувордов.
Аноним 20/03/17 Пнд 07:40:48  957302
>>957285
>>957288
А что тогда лучше?
Аноним 20/03/17 Пнд 08:37:44  957316
ПЕРЕКАТ https://2ch.hk/pr/res/957315.html

ПЕРЕКАТ https://2ch.hk/pr/res/957315.html

ПЕРЕКАТ https://2ch.hk/pr/res/957315.html
Аноним 20/03/17 Пнд 15:27:45  957538
>>957302
Офф доки, исходники и stackOverflow. Если на последнем видишь что решение занимает дохуя строк - игнорируешь и ищешь более лаконичное, даже путем чтения исходников.
Аноним 05/04/17 Срд 14:56:10  967339
Привет и сразу к делу, нужно вырезать фон с объекта на фото (например шорты лежат на однотонном контрастном полу, нужно оставить шорты, а фон убрать) заебался - нихуя не получается. Может кто-то подскажет, или сам сделает за вознаграждение
Аноним 16/04/17 Вск 12:50:58  974414
>>940781 (OP)
такой вопрос: нужно написать приложение синхронизации врачей и клиентов. То есть пациент выбирает дотора, или доктор находит пациента по запросу.

Сколько может стоить первый рабочий прототип? За сколько времени можно набрасать рабочее приложение?

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 507 | 25 | 166
Назад Вверх Каталог Обновить

Топ тредов
Избранное