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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
355 Кб, 960x484
Разработка под Android тред №16 #704022 В конец треда | Веб
Продолжаем испытывать нервы и терпение на прочность, получать удовольствие от работы, а также спорить с дизайнерами.

Предыдущий тред тут:
https://2ch.hk/pr/res/689843.html (М)

Коротко о главном:
1) Мобильная разработка - это весело.
2) Android Studio & Java - легитимный набор, проверенно временем и поддерживается гуглом. Ждем релиза второй версии студии со всеми плюшками(когда он уже выйдет-то?).

А также о неглавном:
3) PhoneGap/Ionic/Titanium/ReactNative - имя им javascript, принципы у них разные, первые три попытка в кроссплатформенность одного кода, ReactNative проповедует другой подход, а именно написание разного кода но на одном языке. Популярность у них разная как и размер комьюнити.
4) Xamarin - мультиплатформенная разработка. Попытка серебряной пули на C#. Довольно популярный. Куплено Microsoft. Хз что будет дальше.
5) RoboVM - идейный наследник ксамарина, а теперь уже и его часть но на Java. Менее популярен, так как моложе. Куплен Microsoft. Вот он точно RIP.

Отдельного упоминания стоят:
1) Kotlin - Java от JetBrains, новый и стильный язык, куча синтаксического сахара прилагается, есть стримы и делегаты. Хотите писать на котлине? Добро пожаловать в JetBrains и Avito.

Где брать инфу:
Интернет-ресурсы
1) http://developer.android.com/index.html
Наша библия. Документация/небольшие примеры/гайды. Но только на инглише, но это плюс. Минус в том, что это все таки документация с небольшими примерами и гайдами и искать там реализацию чего-то хоть немного сложного нету смысла. Раздел Training как раз для старта.
2) http://stackoverflow.com/
Пользуюсь чаще чем первым сайтом. Можно найти практически все.
3) Есть два вполне вменяемых русскоязычных ресурса. Для старта подходят очень даже.
http://startandroid.ru/
и
http://developer.alexanderklimov.ru/android/
Второй еще и условно бесплатный. Главный плюс - это русский язык, простые гайдики, но переводы классов иногда заставляют фейспалмить.
4) http://habrahabr.ru/ - редко но метко, можно найти годные статьи по каким-то реализациям, или переводы с developer.android. Хотя чего тут объяснять.
5) https://www.udacity.com/ - в треде очевидцы говорили что есть годный курс, но я лично не смотрел.

Книги, их никто не читает, но все советуют только одну
1) The Busy Coder’s Guide to Android Development

А теперь, так как заебали уже всех, гайд для:

>"Я хуярил на делфи 5 лет назад а теперь хочу вкатится в андроид":



Чтоб быстро хоть как-то вникнуть в джаву берешь и гуглишь javarush или codingbat.com.
Можно Эккеля "Философия java" почитать.
Или Хорстманн "Java. Библиотека профессионала" до 7 главы.

Что тебе нужно понять в самой жабе.
Энтри лвл.
1) ООП - сам принцип нужно именно понять, так как ооп язык.
2) Типы данных. Примитивы и ссылочные.
3) Структуры данных - Массивы/коллекции - без них никуда. Полезно почитать про алгоритмы работы коллекций и их сложности.
4) Дженерик типы, они как раз юзаются в коллекциях.
5) Классы/интерфейсы и все вытекающие.
Уже можно быдлокодить потихоньку и учить андроид параллельно с тем что ниже.

Дальше
6) Потоки ввода/вывода (streams). Не путать с тредами(threads).
7) Threads, особо не нужно вникать(в java.util.concurrent можно не лезть, в ведре все равно особо не пригодится), но нужно понять как работает многопоточка и что такое Runnable.
8) Прочитать про паттерны что-то. Начать с listener, adapter, singleton, iterator так как на каждом шагу. Ну и по накатанной.
Уже сделаешь что-то нормальное.

Дальше.
9) Работа с Sqlite, нужна будет в любом случае.
10) Работа с json.
Привет клиент-серверка.

Пишите в треде что добавить.
#2 #704115
>>704042
Просто открываешь ассеты, и копируешь содержимое нужного тебе ассета в файл. Через стримы.
>>704129
#3 #704129
>>704115
очень прошу пример ибо горит. Пробовал вроде как так, но крашится при попытке открыть
>>704153>>704167
#4 #704144
шапка говно
#5 #704150
>>704022 (OP)
Nutella?
Короче сосаны, беру ForegroundColorSpan и накладываю его на два слова в SpannedString, спанится только последнее, какого хуя? И это не только с ForegroundColorSpan, но и с другим любым так, че за хуйня? То есть приходится создавать два инстанса абсолютно одинаковых объектов.
20 Кб, 577x176
#7 #704167
>>704129
Ананас, ну чего сложного то? Три строчки кода.
#8 #704173
>>704167
С котлином же проблемы при использовании кодогенерации из-за того, что классы final по умолчанию, не?
>>704179
#9 #704179
>>704173
Не знаю, не занимаюсь кодогенерацией.
Могу только посоветовать делать открытые (open) классы/методы.
#10 #704186
>>704167
с тобой, если на котлине кодишь
#11 #704216
>>704167

> Три строчки кода...


...на мёртворождённом и никому на хуй не упавшем языке, на который ещё чуть чуть и все разработчики перейдут, надо только подождать.
>>704224
#12 #704224
>>704216
он же ня)
#13 #704288
Туплю, может кто запостить конечный код до файла типа java.io.File из ассетов или drawable ?
#14 #704469
Сразу вопрос
Бывают ли девелоперы, пилящие и андройд и айос?
Или тут как с джавой и дотнетом, либо строго одно, либо строго другое?

И второй вопрос:
Нахера логиниться в Андройд студии? Как я понял, там есть облако, но оно платное
#15 #704471
>>704469

>Как я понял, там есть облако, но оно платное


Помимо облака есть еще какие фичи?
#16 #704488
>>704469

>Нахера логиниться в Андройд студии?


Даже не знал что так можно.
>>704494
#17 #704494
>>704488
Справа вверху, на панели инструментов кнопка
#18 #704508
>>704469
Ну ты можешь и то и дургое, но вряд ли бдешь успешен сразу в двух местах.
#19 #704612
>>704022 (OP)
Аноны, Xamarin стал бесплатным, как думаете убьет ли он нашу любимую жаву в будущей перспективе? Ведь как ни крути, C# - язык намного современней с кучей синтаксического сахара, а в андроид сдк до сих пор нет жавы 8, которая хоть как то красит картину.
#20 #704622
>>704612
Зато сможешь пилить одновременно под все платформы.
Сам же указал причину перекатываться
#21 #704719
Почему после большого вброса данных ( 400+ элементов ) SearchView может не пахать ? Код рабочий, на тестовых трех с половиной элементах все работает
#22 #704795
>>704612

>Аноны, Xamarin стал бесплатным, как думаете убьет ли он нашу любимую жаву в будущей перспективе?


Как шарп может убить джаву, если гуглы пилят сдк на джаве?
Ты понимаешь что ксамарин открыли из-за ненадобности
>>704819
#23 #704819
>>704795

> ксамарин открыли из-за ненадобности


Диванные маня фантазии. На самом деле всем известно что жабу убьет Kotlin
>>704822
#24 #704822
>>704819
Зачем котлин, если есть xamarin + f#
>>704858
#25 #704858
>>704822
APK 2mb вместо 20mb, нативная сборка на Android, работа на маке в Idea вместо XamarinStudio (которая даже не поддерживает C# 6.0)
>>704864
#26 #704864
>>704858
Ну ты в ксамарине не можешь кучу фишек шарпа использовать из-за джавы. (async/await НЕНУЖЕН)
>>708558
#27 #705037
Когда уже котлино-форсер успокоится?
>>705051
#28 #705051
>>705037
Когда котлин провалится.
#29 #705165
Котлинофил, ты ж у нас со стажем в 5 лет? Какая зп если не секрет.
Да и вообще можно ли рассчитывать на 3-4к? У самого пока 1к, никак не могу новую работу найти, тупо не зовут на собеседования, пора пиздеть в резюме.
>>705226>>705244
#30 #705181
А ассемблера под андроид нету? А то мне очень нравится ARM ассемблер, много кодил на нём под NDS, сейчас развлекаюсь с Raspberry Pi в основном, но в сторону смартфонов не заглядывал никогда, ибо мобилкопарашей не интересуюсь в общем-то. Но теоретически попробовал бы.
#31 #705193
От многих слышал что в Android очень много дрочева, а в iOS нет.
Сам хочу начать писать под Android, есть опыт во фронтенде и бекенде (php). Что за дрочево в Android, о котором так много говорят (кроме экранов)?
>>705194>>705217
#32 #705194
>>705193

> кроме экранов


А это и есть основное дрочево. Ты даже не представляешь, несколько оно дрочевное, особенно поначалу.
>>705199
#33 #705199
>>705194
И что, оно настолько большое что лучше продать свой ноут, купить Mac mini и начать писать под iOS?
251 Кб, 500x372
#34 #705217
>>705193
Жизненные цикл (aka лайфсайклы, life cycles и тд) не стоит вскрывать эту тему.

А вообще, тебе же уже говорили что твой "опыт" в руби, нафиг никому не упал.
>>705233>>705235
#35 #705226
>>705165
У меня для тебя плохие новости: если ты не из ДС и ваши зарплаты не привязаны к доллару
'Такие зарплаты получают менеджеры проектов (ну может быть тимлиды)'.

Вот когда у тебя появятся в подчинение люди и на плечи упадет реальная ответственность за проектирование проекта, тогда и ЗП будет соответствующая.
>>710222
#36 #705233
>>705217
Так в итоге это звучит как отговаривание меня от андроида или что?
#37 #705235
>>705217

> цикл


В iOS же тоже самое.
>>705249
#38 #705236
Что это за названия кексиков и эклеров на оп пике? Модели телефонов такие?
>>705263
#39 #705244
>>705165

>пора пиздеть в резюме


Расскажи о том как грамонто пиздеть в резюме, будь добр. Мимо-студент без опыта работы
>>705250
#40 #705249
>>705235
Нет.
>>705271
#41 #705250
>>705244
Не нужно писать туда все, что ты умеешь
#42 #705263
>>705236
Названия версий андроидов.
#43 #705271
#44 #705294
Мне теперь захотелось кексиков, эклеров и лолей попов.
>>705369>>705376
#45 #705369
>>705294
А мне в андроид, а меня тут отговаривают.
#46 #705376
>>705294
Не понимаю, кому может понравиться имбирный пряник. Имхо, самая неудачная сладость. А вот Желейки я просто обожаю. Могу за раз 1000 штук съесть...
>>705436
#47 #705408
Как скомбинировать лоадеры с Rx, и нужно ли? А то вдруг идет загрузка, а тут экран повернули, ну не начинать же ее заново?
>>705419
#48 #705419
>>705408
.cache() + subscribe unsubscribe
>>705422
#49 #705422
>>705419
А где во время рекриэйта хранить обсервбл, в синглтоне или ретейнед фрагменте?
>>705449
#50 #705425
Короче, последний раз спрашиваю. Стоит или нет вкатываться в андроид? Или лучше в иос? Ответивший с четным числом - андроид, с нечетным - иос. Ролльте.
#51 #705428
>>705425
ролл
#52 #705429
>>705425
Напиши програмку, которая дергает random.org по api и прогони допустим 1000 раз на ведроиде, и 1000 на гейосе, посчитай среднее и округли. Туда и вкатишься.
#53 #705436
>>705376
Имбирный пряник - нямка.
#54 #705449
>>705422

> в синглтоне или ретейнед фрагменте


Сам реши. Если он четко привязан к инстансу активности, то в ретейне. Иначе удобнее в синглтоне.

Как же я проигрываю с ретейн фрагментов. Просто пиздос какой костыль.

>>705425
В кроссплатформу на f# + xamarin.
>>705464
#55 #705450
А сюда аноны скидывают свои разработки? Хотелось бы посмотреть на что способен харкач.
#56 #705455
>>705450
Прямо за щеку скидываем, у меня 2 клиентсерверки и недоплеер, нечего смотреть, все говно. (с 200+ падения в крашлитике)
#57 #705464
>>705449
Андроид один большой костыль. И ведь хорошие намерения были, но конструкторы на 300+ строк...
#58 #705539
>>705450
В прошлом треде скидывали.
Что нашел - https://play.google.com/store/apps/details?id=bubal.tnote&hl=ru
#59 #705542
>>705539

> b'gtublik.alexander93ANUSgmaqIiilPUNCTUMz'ucom


Проиграл.
#60 #705546
Здравия желаю.
Это что, я могу пару вопросов задать и мне даже ответят?
>>705547>>705549
#61 #705547
>>705546
Нет
#62 #705549
>>705546
Значит спрашиваю?
>>705881
#63 #705567
>>705539
Шалом, это тот анон, что в прошлом треде обещал тебе на фейкомыльцо постучаться ради проектов.
Короче, я уже потихонечку осваиваюсь и уже научился (ололо) обрабатывать нажатия кнопки.
Чувствую себя охуенно
#64 #705648
>>705567
совет от повидавшего - учи джаву для начала
>>706059
#65 #705805
>>705450
Держи. В гуглоплее забанили за прон.
http://sosach.herokuapp.com/
#66 #705881
>>705549
валяй
#67 #705901
>>705567
Скоро дойдешь до контекстов, интентов, фрагментов, синк адаптеров и прочих веселостей. Надеюсь, чувствовать себя будешь точно так же.
>>706059
#68 #706013
Ньюфаг вкатился в тред. Какую версию Java ставить чтобы начинать изучение?
>>706021
#69 #706021
>>706013
Самую последнюю, лол. Всеравно в ведроиде ты пока только 7 использовать сможешь, но это не значит что она нужна на компе. Но если будешь использовать ретролямбду, то вроде бы потребуется поставить 6 и 7 дополнительно к 8.
#70 #706049
>>705567

>Шалом, это тот анон, что в прошлом треде обещал тебе на фейкомыльцо постучаться ради проектов.


>>705539 это не я вкидывал

Отлично, в итоге проходишь startandroid? На ютубе есть их достаточно годный канал, где первые 34 урока оче качественно разжеваны, глянь.

Если в ближайшее время не найду работу, лол, то предложение сделать проект в силе.
>>706059
#71 #706059
>>706049
Долблю стартандройд, гугловские курсы на Udacity и параллельно книжку еще почитываю
>>705648
Знаю худо-бедно кор. Где-то треть шапки, наверное. На что поднасесть?
>>705901
Ух..
>>706089>>706329
#72 #706089
>>706059
на хуй конечно же
поясните за фриланс #73 #706103
Есть цель - фрилансить или удаленить после пары лет в офисе, будучи ведроид куном, дабы сидеть в своей мухосрани и няшить местных мань.

Поясните за текущие реалии Android фриланса, аноны или адноид фриланс идет на спад и лучше вкатываться в вебмакакинг? HTML, less, git, grunt, адаптивная и кроссбраузерная верстка - прокачано как надо, но в JS не особо шарю.

Сайтики клепать не очень интересно, а приложения хочется делать.
>>706193
#74 #706140
Сап, сабж: нужно юзать sqlcicpher для работы с зашифрованной бд, но эта сука критует вторые сутки и вообще ведет себя не как джентльмен/леди.
Логи:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test/com.test.MainActivity}: net.sqlcipher.database.SQLiteException: error code 14: Could not open database
И такая лажа постоянно. Не помогает ничего. Спасайте, котаны.
#75 #706193
>>706103
беги, глупец.
>>706194>>706199
#76 #706194
>>706193
обоснуй, антошка
#77 #706199
>>706193
неужели в андроид деве тоже своебразное формошлепство и дрочинг анимаций? а интересных проектов хуй наплакал?
>>706209
#78 #706209
>>706199
Конечно
>>706214
#79 #706214
>>706209
но в андроиде хоть не такая гонка вооружений как в вебе, я прав?
>>706290
#80 #706290
>>706214
Угу, не такая... Наивный
>>706298
#81 #706298
>>706290
А какая, блять? Перечисли мне фреймворки под андроид, вышедшие за последние несколько лет.
А теперь посмотри сколько в вебе изменилось, бдаж
>>706326
#82 #706326
>>706298
Ну такого пиздеца как в фронтенде нету нигде.
А вообще в любом опенсорсе куча всяких инструментов, будь то джава бекенд или андроид разработка.
На ведро можно писать на куче языков и тд и тп.
Если выбрать джаву, то у тебя будет просто набор разных либ для чего либо, но учитывая какое ведро кривое это даже плюс. Но многое можно писать на стандартной сдк.
В общем не так страшен черт как его рисуют.
#83 #706329
>>706059
Вы блять долбоебы и не лечитесь, вам всем нужно в анус засунуть гайдик что учить из джавы? Так как в шапку вы не смотрите.
>>706373
#84 #706348
Не получается эмулятор Андроида запустить. SDK не пашет, не знаю в чем дело. :|
121 Кб, 651x649
#85 #706352
Аноны, а какую архитектуру приложений вы используете?

Стандартный лапшекод, где почти всё происходит внутри activity/fragment?
Или уже кто-то перешел на MVP/MVVM?
#86 #706373
>>706329
Тебе лишь бы в анус что-нибудь позасовывать
#87 #706584
>>706352
Первое.
>>708137
#88 #706604
>>706352

> MVP


Вот здесь у меня вопрос.
Nucleus наример предполагает, что презентер хоть и сущность над вьюхой, но не полностью ей управляет, ибо в презентере даже getView не рекомендуется использовать но там есть механизм restartable.
Я же считаю, что вьюшка вообще ничего решать сама не должна, и даже клики передавать в презентер сразу.
>>708136
#89 #706969
Есть какой-нибудь хороший гайд по реверс-инжинирингу? Хочу сделать мод как васяны делают:
Есть игрушка на ведро с платным контентом, потыкал apk studio - игра на юнити, биллинг через soomla. Пропустил её через jd-gui - жопа какая-то, имена зафаршмачены, хуй проссыш где логика описана.
#90 #707109
Есть ли способ писать без xml'ов? Писал всякие хелловорлды на j2me и хочу продолжить на андроиде.
#91 #707119
>>707109

> Есть ли способ писать без xml'ов?


Совсем без — нет. Да и зачем?
>>707122
#92 #707122
>>707119
не нравится
>>707125
#93 #707125
>>707122
Я возможно, не до конца знаю кухню, но XML - это одна из главных составляющих, без которого у тебя, минимум, верстка по пизде пойдет
>>707127>>707128
#94 #707127
>>707125
и вместе с версткой всякие id'шки и т.п.
#95 #707128
>>707125
понятно
#96 #707145
>>707109

> Есть ли способ писать без xml'ов?


Есть.

> public void setContentView (View view)


Только тебе сразу же ПЕРЕЗВОНЯТ, после того, как увидят.
>>707367>>707593
#97 #707147
>>707109
Есть dsl на скале и на котлине.
#98 #707167
>>707109
Проще разобраться и все.
Просто много верстай.
#99 #707367
>>707145
Должны быть приватными?
>>707562
#100 #707451
>>704022 (OP)
Анон, как избавится от такой проблемы? Я создаю связь на сокетах, коннект есть и я стараюсь отобразить это на вьюшках. Однако андроид не дает мне возможности изменять вьюшки не в главном потоке, и с другой стороны не дает делать сетевые запросы в главном потоке. Как выйти из этой проблемы?
>>707457
#101 #707457
>>707451
Передать управление главному потоку? Нет среьзйно, как будто есть дургие варианты, все сводится к передаче упарвления в другой поток, через месседж и хэндлер, или черед бродкаст. Если идти по короткому пути, у вьющек есть метод post(Runnable), он выполнит действия прописанные в Runnable в главном потоке.
>>707472
#102 #707472
>>707457
Глупый вопрос я конечно задал, просто передаю в runOnUIThread() изменения.
#103 #707552
Юзаю retrofit и rx, все отлично, только вот думаю как бы грамотно засунуть проверку интернета(с выводом диалога) в это дело. Есть у кого-то идеи?
Учитывая что обсервебл я получаю с ретрофита, то и проверку на инет нужно делать до непосредственного запроса.
>>707566
#104 #707562
>>707367
А, он же не может быть приватным, необходимо слушателя реализовать?
#105 #707566
>>707552
А почему нельзя в onError обработать исключение "нет интернета"?
>>707582>>707598
#106 #707578
Пацаны, как сделать пищалку?
#107 #707582
>>707566
В каждом месте писать, лол?
#108 #707593
>>707145

> Есть.


Как ты без xml будешь стили делать?

> Только тебе сразу же ПЕРЕЗВОНЯТ, после того, как увидят.


А что не так?
#109 #707598
>>707566
Это пиздец.

>>707582
Двачую.

Пока вижу вариант отказаться от обсервабла из ретрофита, перед вызовом метода делать проверку.
>>707605
#110 #707605
>>707582 >>707598
А вы хотите, что-бы он показывался "магическим образом" в любом месте приложения при отсутствие инета?
>>707641
#111 #707606
>>707582
Ну а так тебе перед каждым методом проверять интернет. Те же яйца, только в профиль.
>>707643
50 Кб, 665x309
39 Кб, 591x265
#112 #707625
>>707582
Вот простой пример, как вынести общую логику без дублирования кода:

1) В уголке пишешь метод-расширение для Observable<T> c нужной "дефолтной" UI логикой обработки ошибок

2) Заменяешь вызов стандартного subscribe(...) на свой кастомный

В итоге бойлерплейта больше не стало и логика отделена и скомпонована в одном месте.
>>707654
#113 #707641
>>707605
Нет, проверка перед запросом должна быть.
#114 #707643
>>707606
Раньше можно было в ретрофите клиент переопределить и перед каждым запросом оно бы проверялось через этот клиент.
#115 #707652
Котаны, посоветуйте что мне делать в следующей ситуации:
Вконтакте ссылки на аудиозаписи привязаны к IP адресу.
Мне нужно сделать кэширование пользовательского плейлиста, чтобы каждый раз при открытии фрагмента не грузить ебанический список.
Как правильнее обработать ситуацию, когда у юзера меняется IP адрес и пора обновлять кэш?
Сравнивать перед загрузкой списка старый IP адрес с новым?
Так это же придется через сторонний сервис действовать, чтобы узнать внешний ip, вдруг этот сервис будет недоступен или медленно будет отвечать?
Или не стоит заморачиваться и обновлять кэш при каждом запуске приложения, т.к. вероятность того, что у юзера прямо здесь и сейчас поменяется ip крайне мала?
>>707665
19 Кб, 713x144
#116 #707654
>>707625
Ну смотри, это ж ты мне подсказал как делать хендлер ошибок да и вообще идею контроллера.
У меня есть контроллер для всех методов апи, я хочу имплементировать проверку интернет соединения.
Я никак не пойму как это сделать ровным способом, контроллер всегда отдает мне обсервебл, следовательно, если проверку делать в нем, то что мне отдавать в юи? Екзепшн еще один?
Если же это делать с юи элементов, то это всегда будет иф перед rx цепочкой.
Буду рад услышать любые идеи.
>>707659
#117 #707659
>>707654
Да нафиг этот ретрофит.
Одни проблемы от него и код более замороченный.
Я вот сделал кеширование в БД и загрузку данных с сервера через Loader, AsyncTask и cupboard.
Все сразу заработало, передача ошибок в UI делается на раз. Так то.
>>707682>>707686
#118 #707665
>>707652
Почему ты кэш сопоставляешь с урлом аудиозаписи, а не с ее id?
>>707685
#119 #707682
>>707659
Да не, на лоадеры и асинктаски я точно не перейду.
#120 #707685
>>707665
Вообще у меня до начала воспроизведения пользователю в любом случае придется подождать.
Так что да, сделаю так: при клике по песне загружу актуальную ссылку и вообще не буду кешировать ссылку.
#121 #707686
>>707659

>Одни проблемы от него и код более замороченный.


Ты серьезно? Каким образом?
>>707691
#122 #707691
>>707686
Не обращай внимание на толстяка.
Оба подхода имеют право на жизнь.
>>707693
#123 #707693
>>707691
Так что посоветуешь с проверкой на соединение
>>707824
485 Кб, 1920x1017
#124 #707704
Господа, есть ли учебный гайд, как пишут какое-нибудь сложное приложение или игру? Вот как курс на юдасити, где делают погодное приложение с хорошими пояснениями, но только посложнее.
Вот как змейку сделать я уже знаю, написал, но когда скачиваю какую-нибудь йоба-3д-игру, то даже не представляю как такое делать, как все это спроектировать. Как люди до такого доходят? Откуда берут гайды, как это все реализовать. Хотя мне кажется сложнее всего даже не реализовать, а спроектировать все это в голове/на бумаге.
>>708084
#125 #707715
Аноны, как сделать, чтобы по клику итема в navigation drawer открывалось активити, и она становилась бы единственной в стеке, т.е. все прошлые удалялись бы из стека
>>707730
#126 #707730
>>707715
NEW_TASK CLEAR_TASK
Как рубить капусту? #127 #707735
Есть у кого-нибудь успешный опыт продаж своих творений в гуглплее? Прога готова, теперь хочу за нее получить копеечку. Где рекламировать, сколько на это уйдет, как выводить в топы? Помогите пожалуйста начинающему
>>707737>>707744
#128 #707737
>>707735
Если это не уникальная херь, то проваливай отсюда.
>>707865
#129 #707744
>>707735
собрался свою напоминалку продавать, мамкин гений?
>>707865
#130 #707745
Программа не идет в вирт. машине, что делать? Что-то с этим adk
>>707826
#131 #707824
>>707693
Словить эксепшн в onError у осервебла.
>>707951
#132 #707826
>>707745
Мысль не идет в эмуляторе сознания, что-то с этим цнс.
Как рубить капусту? #133 #707865
>>707737
Уникальная, уникальная. Даже представить не можешь насколько
>>707744
Нихт коммандант, свой уникальный проект. Посоветуй лучше друже, как ее продать
>>707877
#134 #707877
>>707865
Нанять раскрутчика, который в этом шарит? Ты там аналитики то встроил? Поищи компании, которые предлагают пользователям скочать твое приложение и получить монетки в игре/денюшку на номер телефона.
240 Кб, 604x492
#135 #707887
Сап ведраны
помогите зелени
полгода как вкатился в андройд, есть средний java core, есть слабо-средний android sdk (хз че сказать, там набросать несложный ui, работа с бд и файловой системой, retrofit picasso gson asynctask whatever), libgdx на уровне змейки и cordova(sic!) так же , в общем делал пару заказиков за хлеб (подфартило)
ну так вот, нужен опыт и нужны деньги, где найти нескончаемый поток этих самых заказиков или огород стартапов (или не стартапов), ищущих джуна? мб здесь кто-нибудь найдется? ирл на постоянку с неполным днем нахуй никому не нужен, на одеске вообще пиздец
>>707895>>707896
Аноним #136 #707895
>>707887

> постоянку с неполным днем


В первую смену что ли учишься? Лет то тебе сколько?
>>708058
#137 #707896
>>707887
тут 90% раздела такие, страдай
#138 #707904
cannot resolve symbol 'wrap_content'

WTF?
>>707906
#139 #707906
>>707904

>wrapContent

#140 #707951
>>707824
Там помимо отсутствия коннекта может быть куча всяких эксепшенов?
Ну и после он ерора сработает онерор в сабскрайбере и запустит тоаст в юи.
#141 #708058
>>707895
студент мамкин
>>708085
30 Кб, 300x300
sage #143 #708085
#144 #708136
>>706604
И в чем вопрос-то?
#145 #708137
>>706584
И как, всё устраивает? Спрашиваю без подъеба.
Фрилансишь или в студии?
#146 #708219
В каком потоке вызывать метод deliveryResult в Loader?
>>708229>>708239
#147 #708225
Использую picasso для показа фоток из галереи. Указываю resize, чтобы не жрать сотни мегабайт памяти, но судя по всему он делает резайз не через bimap.config как в гайде на девелоперс андроид, а наживую на полностью загруженном битмапе. Как заставить пикассо работать через конфиг?
>>708878
#148 #708229
>>708219
Ты кажется не должен его сам вызывать.
>>708234
#149 #708234
>>708229
И каким же макаром я передам результат в Activity?
>>708323
#150 #708239
>>708219
Ну для кого документацию пишут?!
http://developer.android.com/reference/android/support/v4/content/Loader.html#deliverResult(D)

> Must be called from the process's main thread.

>>708369
#151 #708261
Собственно работаю в студии, организованной такой же школотой как и я ( сраный 11 класс ), вопрос: как оценивать примерно стоимость заказа ? Делаю в основном приложения с простенькой/средненькой бизнес-логикой
>>708263
#152 #708263
>>708261
Школота делает приложения (еще и за деньги), просто в голос.
Откуда у вас знания по управлению IT проектами, или хотя бы по правильному написанию кода?

А если я не прав, скинь портфолио.
>>708271>>708272
#153 #708271
>>708263
не хотелось бы деанониться, могу линки на сайты нашего чувака по бэк/фронтэнду кинуть ну и ответить на задаваемые тобой вопросы. Деанон себя делать не буду
#154 #708272
>>708263
ну и да, как же делать аппликухи, мм.. Ведь гитхаба же в природе нет и нельзя посмотреть как их делают нормальные проггеры
>>708273>>708300
#155 #708273
>>708272
Ну давай мне ссылки на гитхаб нормлаьных проектов.
#156 #708275
>>708273
бля, телеграм можно открыть банально
>>708279
#157 #708276
>>708273
хоть там говнецом и попахивает
>>708282
#158 #708278
>>708273
плюс паттерны то все же придуманы для кого-то :) Так что какая-то структура ( пока не очень конечно хорошая, ибо опыта мало ) но есть
>>708281
#159 #708279
>>708275
Ох ну и много ты понял с банального телеграма?
>>708283
#160 #708281
>>708278
Ну давай школотрон, расскажи мне какие ты патерны в продже юзаешь.
#161 #708282
>>708276
Проблема не в говне, проблема в отсутствии стандарта.
#162 #708283
>>708279
я учился тупо на проектах, т.е. гуглом тех или иных конструкций, с которыми было не очень ясно
>>708285
#163 #708285
>>708283
Объясни мне как ты делаешь обычную клиентсерверку, с бд и запросами. Объясни как происходят все процессы.

Ну и ебало завали со своим телеграмом, я в отличии от тебя в нем копался, и ты там нихуя не научишься.
>>708401>>708402
#164 #708300
>>708272

> нельзя посмотреть как их делают нормальные проггеры


Ой бля, школьник, иди к эге готовся.
Разработка приложения только на ~30% состоит из разработки.
Нахуя я тебе воообще что-то обясняю, ваш уровень это лабы для других школьников.

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

Про джиру (вы там даже воркфлоу не настроите) / CMS и методики разработки вы и не слышали.
>>708411
#165 #708317
Как Admob проверяет свои баннеры?

Например, что мешает мне сделать кликер? За клик по рекламе дают центов 20, допустим. Если поставить кликер чтоб он генерировал CTR и не наглеть (не больше 10-20 баксов в день)?

Как гугол меня запалит в таком случае?
>>708323>>708650
#166 #708323
>>708234
Зарегать колбек для LoaderManager'a или на лоадер зарегать листенер.
>>708317
10-20 это дохуя, он посмотрит айдишник девайсов, адйишники юзеров, айпишники, геолокацию и тд и поймет что ты его наебываешь.
>>708360>>708431
#167 #708360
>>708323

>Зарегать колбек для LoaderManager'a или на лоадер зарегать листенер.


Это очевидно. Ну так имеет ли значение в каком потоке я вызову deliverResult в Loader'е?
>>708369
#168 #708363
Есть ли где-нибудь пример того, как организовать загрузку картинок в списке при помощи UniversalImageLoader после остановки скролла?
>>708391
#169 #708369
>>708360
В глаза ебусь.

Спс!
>>708239
#170 #708389
Ты там свой лоадер что ли делаешь, епта? нахуя вызввать деливер резалт, он сам вызовется лоадером.
#171 #708391
>>708363

>UIL


Фу бля, фу нахуй. Загружай в RetainedFragment.
>>708393
#172 #708393
>>708391
По-подробнее.
>>708399
#173 #708399
>>708393
Смотри, цепляешь к активити фрагмент, которому похуй на повороты, в нем лежит LruCache с ебучими картинками. Тебе не нужно останавливать загрузку картинок по остановке скрола. Но нужно мучаться с подпиской на обнволения в этом фрагментике. В итоге ты делаешь то, что пикассо и глайд делают сами.
#174 #708401
>>708285
в чем проблема сделать клиент серверку то ? Api обычно предоставляют, токен выдали, сессию открыли и наслаждайся ретрофитом
>>708436
#175 #708402
>>708285
про бд - на устройстве для хранения кэшированной херни всякой или на сервере ?
>>708436
#176 #708411
>>708300
Jira - оверпрайснутое говно. Перевёл всех своих на trello, хватает с головой.
>>708421>>708437
#177 #708421
>>708411
Джира хороша если у компании норм с деньгами, и можно позволить обмазаться разными платными плагинами.
С ними (можно еще свои скрипты писать) можно воркфлоу как хочешь настраивать и реализовывать любую методологию.
Да и джиру для интеграции поддерживает больше сервисов.
А уже в связки джира+конфлинс+битбакет - вообще все продуманно.

Хотя мне в джире как раз больше всего нравиться плагин канбан и я бы с удовольствием попробовал trello.
>>708434
#178 #708431
>>708323

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



Значит идея заранее обречена на провал, даже если наделать кучу вирнуалок, поднять впн и прочее?
>>708433
#179 #708433
>>708431
У тебя на телефоне есть gaid, тебе потребуется не маленькое количество гугловских аккаунтов на разных устройствах. И прокси конечно же.
#180 #708434
>>708421
Канбан? Тогда попробуй это.
https://taiga.io/
>>708438
#181 #708436
>>708401
Понятно.
>>708402
А ты как думаешь?
>>708831
#182 #708437
>>708411

>trello


Умри с этим говном, какая-то пиздотня для покупок.
Обрыгался с этого интерфейса, с этой кашы, с этими перетаскиваниями.
#183 #708438
>>708434
Двачую, лучше чем трелло.
#184 #708441
Сап аноны, суть в том что я уже 2 недели пытаюсь динамичетски добавлять кнопки в уведомления, но ничего не выходят и как сделать это идей уже совсем нет. Гугл и стаковерфлоу упорно молчат. Буду благодарен за помощь.
Вопрос на стаке с кусками кода:
http://stackoverflow.com/questions/36383139/android-programmatically-adding-buttons-to-notification
#185 #708473
>>708441
Что значит динамически?

Нотификация это уже отдельный процесс (Android UI).
Ты туда (через RemoteViews) передаешь "как-бы XML верстку" и список интентов.
Android (в отдельном процессе) строит по ним уже результирующую контролы, вешает туда свои листнеры на кнопки и тд.
И вот в этих своих листнерах, он ловит нажатие на кнопки и кидает нужные интенты (созданные из твоих PendingIntent).

Еще раз, после создания нотификации ее UI тебе не принадлежит и вообще находится в другом процессе.
>>708496
#186 #708476
>>708441
Попытался ответить, мне кажется это тупо нельзя сделать.
>>708480>>708496
#187 #708480
>>708476

>нельзя сделать


Динамически нельзя.
>>708496
#188 #708495
Нужно сделать рипл эффект, у своего linearlayout написал
android:clickable="true"
android:background="attr/selectableItemBackground"

Теперь эффект появляется только при длительном нажатии, но при обычном клике его нет, как быть?
#189 #708496
>>708473
>>708476
>>708480
Сделать можно, может я не правильно объяснил я программирую всего месяца 4 так что простите. Есть приложение, которое четко отображает то что я хочу сделать. Установите и посмотрите, если не поняли что я имею ввиду :
https://play.google.com/store/apps/details?id=de.j4velin.notificationToggle
>>708499
#190 #708498
На иосе чтоль зп больше чем у нас?
Какого хуя? У нас работа сложнее.
>>708880
#191 #708499
>>708496
Ну эта программа доху умеет делать, да еще и требует root.
Чет никакого желания ее ставить нет.
>>708501
#192 #708501
>>708499
Суть в том что ты ставишь галочку напротив тублера (например фай-фая) и эта хрень появляется в нотификации и таких кнопочок можно в нотификации создать очень много. для этого рут не требуется. Вот я и хочу повторить этот эффект, но не знаю с какой стороны подойти для решения этой задачи
>>708505
#193 #708505
>>708501
Палю годноту:

http://developer.android.com/intl/ru/reference/android/app/NotificationManager.html#notify(int, android.app.Notification)
Вызываешь с разными ID и получаешь дохрена нотификация.

http://developer.android.com/intl/ru/reference/android/app/Notification.Builder.html#setOngoing(boolean)
Ставишь тут true и твои нотификации нельзя удалить с экрана.

http://developer.android.com/intl/ru/reference/android/app/Notification.Builder.html#setContent(android.widget.RemoteViews)
Тут ставишь верстку, как должна выглядеть твоя нотификация.
>>708507
#194 #708507
>>708505
Первая ссылка не подходит так как я не знаю заранее сколько кнопок будет, их может быть одна, а может и 50 все зависит от того сколько пользователь решит их создать.
Второе и третье я уже сделал в самом начале. Ступор именно в программном создании кнопок в нотификации. Спасибо за совет
>>708511>>708516
#195 #708511
>>708507
Ты нотификации можешь через обычный счетчик плодить.
>>708518
#196 #708516
>>708507

>Первая ссылка не подходит


Ну и в чем проблема? Я же написал используешь разные ID.

Можешь этот использовать
http://developer.android.com/intl/ru/reference/android/app/NotificationManager.html#notify(java.lang.String, int, android.app.Notification)
Тогда будет один ID, но нужные будут разные tag (можешь хоть рандомайзером генерировать или через UUID.randomUUID())
>>708749
#197 #708518
>>708511
как передавать view элемент в нотификацию? Метод который я юзал ничего не делает. Вопрос с кодом:
http://stackoverflow.com/questions/36383139/android-programmatically-adding-buttons-to-notification
>>708543
#198 #708535
Как наложить на фоточку цветовой фильтр и сохранить эту фоточку в оригинальном размере так, чтобы это не отжирало 50мб, если делать стандартно через BitmapFactory.decodeFile?
>>708882
#199 #708543
>>708518

> contentView.addView(R.layout.noti_layout, button);


Что это?

Читай документацию:
http://developer.android.com/intl/ru/reference/android/widget/RemoteViews.html#addView(int, android.widget.RemoteViews)
Первым параметром идет не верста, а ID контейнера куда добавляешь дочерние элементы.
>>708749
#200 #708558
>>704864
Это каких фишек?
#201 #708563
>>706352
Ебашу мввм и не выебываюсь.
мимо xamarin-dev
>>708565
#202 #708565
>>708563
Ну на шарпах это оптимальное решение. Особенно с замарин формс.
>>708569
#203 #708569
>>708565
так и есть.
Лучшего наверное ещё не придумано. Или есть круче?
>>708614
#204 #708574
сап гайз

кто желает прошу проследовать в группу посвящённую Java - https://telegram.me/javarush
>>708576
#205 #708576
>>708574

> джавараш


Нет, спасибо.
6 Кб, 540x960
7 Кб, 540x960
#206 #708590
Как чинить это говно? В виртуалке (Genymotion, API 23) работает нормально. На одном реальном устройстве (Cyanogenmod 12.1 nightly, причём на протяжении большого количества ночников) вылезает пикрелейтед. На других устройствах всё нормально.
Интерфейс НЕ зависает + дорисовывается, если ткнуть по экрану. В CardView'ах все данные отображаются нормально (на скриншотах я их затёр).
Остальные приложения на циане работают нормально.
#207 #708614
>>708569

>Лучшего наверное ещё не придумано.


А ты такой дохуя мастер архитектур.
#208 #708650
>>708317
0.5$ за 1к кликов
#209 #708665
Народ, как наиболее безопасно оформить приложение, которое использует API вконтакте, чтобы его не забанили в маркете?
Оно воспроизволит музыку, в том числе на смартфоне.
>>708716>>708864
#210 #708716
>>708665
на ведроиде вроде с этим нормально и никто не прикапывается.
>>708719
#211 #708719
>>708716
Один раз моё приложение забанили под предлогом того, что оно претворяется другим.
>>708767
#212 #708741
Программач, хочу сделать себе очередной калькулятор. Скачал андроидстудию, создал проект, а в нем нихуя нет, даже код некуда писать. Что делать?
>>708745
#213 #708745
>>708741
бочку
#214 #708749
Аноны, по вашим советам нихуя не работает работает
>>708543
Пробовал как ты сказал, ничего не происходит
>>708516
Этот совет тоже не подходит вообще
Аноны, помогите, кто может разюираюсь уже недели 2
http://stackoverflow.com/questions/36383139/android-programmatically-adding-buttons-to-notification
Суть проблемы>>708441
>>708815
#216 #708767
>>708719
Ну так зачем ты притворялся))00), если ты не будешь тащить дизайн вкашки и прочую символику, не к чему будет придратсья, разве что к контенту, но мой плеер с вкашкой не забанили, так что хз
>>708797>>708858
#217 #708797
>>708767
Сколько у тебя скачиваний?
>>708893
#218 #708804
Посоны, раньше юзал только питон и пыху, решил перекатиться на мобильную разработку. Как думаете, стоит ли учить шарп ради ксамарина? И вообще, эта фигня при написании не сложнее нативного андроида, например? Есть ли будущее с шарпом для мобильной кроссплатформы? Как там с дизайном, есть ли какие-то различия, можно делать нативные элементы, типа боковых менюшек?
12 Кб, 380x306
#219 #708815
>>708749
Че у тебя все не работает, может документацию почитаешь?

Взял твои сорцы и сделал вот такое приложение:
MainActivity.java - http://pastebin.com/r7RDfzjS
notification_layout.xml - http://pastebin.com/BSvV138H
image_btn_layout_test.xml - http://pastebin.com/47gcw2Mh

Вот такой результат (красная кнопка лежала в отдельном файле-с-версткой).
>>709312
#220 #708831
>>708436
что ни в чем, если апишка дана и руки не из жопы
#221 #708838
Ананы, ситуация такова: занимался андроидом где-то месяцев 5-6, потом дрочил всё время тырпрайз (этим я занимаюсь тоже уже полгода или больше). И тут внезапно меня позвали на собеседование на андроид-разработку (меня порекомендовал знакомый). Естественно, о платформе очень многое забыл. И тут то, ради чего я всё это писал: ананы, прошу, напишите примерные вопросы, которые задают на собеседовании на андроид-разработку.
#222 #708858
>>708767
Сколько скачиваний?
Это важно.
>>708893
#223 #708864
>>708665
Цвета инвертируй.
#224 #708876
Требует ли сейчас google play номер телефона при регистрации аккаунта разработчика?
Есть аккаунт на котором лежит пару приложений, которыми нельзя рисковать.
Хочу завести еще один аккаунт на который буду заливать всякие экспериментальные аппликухи,чтобы не рисковать остальным.
Как лучше это сделать?
#225 #708878
>>708225
1) Тебе это не нужно: пикассо делает это эффективнее, чеснок стандартные средства андроид
>>709046
#226 #708880
>>708498
iOS лучше окупается.
#227 #708881
Зарелизил приложение в маркете почти сутки назад.

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

С другими моими приложениями такого не случалось. В чем может быть проблема?
>>708884
#228 #708882
>>708535
Писать самому реализацию, которая будет работать с изображением как с потоком байт (buffered reader, например)
#229 #708884
>>708881

Оно не сразу появляется, жди
#230 #708893
>>708797
>>708858
15753 всего, но ее еще с 4pda качали вроде бы.
Приложушка не моя, я только разрабатывал.
>>709068
#231 #708894
шо то я не понял. ваш новомодный realm тянет за собой so на 2 мегабайта?
>>708895
#232 #708895
>>708894
Это немного, ебучие рекламы и трекинги у тебя больше сожрут.
>>708898
#233 #708898
>>708895
бля, там 10 мб .so в apk
ну нахер
>>708902
#234 #708902
>>708898
В любом случае самый производительный варинат это свой бинарник SQLite'a
>>708950
#235 #708950
>>708902
што?
>>709050
#236 #709046
>>708878
Нет, пикассо делает это неэффективно. Он грузит полноразмерные битмапы, отжирая сотни мегабайт.
>>709633
#237 #709050
>>708950
Взрослые дяди сами собирают последнюю версию sqlite и добовляют в приложение в виде so файлов, а не дрочат древнюю версию sqlite, которая из коробки идет.
>>709064
#238 #709064
>>709050
А как его заставить работать со стандартными курсорами?
>>709081
#239 #709068
>>708893
Поделишься ссылкой?
Интересно, что за плеер.
>>709118
#240 #709081
>>709064
Пишутся собственные.
>>709092
#241 #709083
Народ, есть ли в VK Android SDK штатные способы установки таймаута для VKRequest?
#242 #709092
>>709081
Радужная перспектива.
В свое время копался в исходниках cursor/sqlitedatabase - там очень много логики на кэширование и синхронизацию и еще часть в native написана.

Лучше уже realm юзать и собирать отдельные apk под разные платформы, GooglePlay отдаст пользователю нужный.

Или вот MapDB есть, написанная полностью на Java.
Новую версию автор переписывает на Kotlin, глядишь и на андроиде появится свой EntryFramework с стрим-подобным API.
#243 #709118
>>709068
Та он пиздец хуевый, мне аж стыдно, все в духе стабильность нинунжна.
https://play.google.com/store/apps/details?id=com.dowell.pickplay
#244 #709157
>>704022 (OP)
Изучаю программирование, решил попробовать на ведро что-то написать. До вчерашнего дня конечно же был нацелен на яву, но наткнулся на новость о Xamarin и Microsoft и теперь не знаю что выбрать лучше. Думаю плотно осесть на моб. приложениях. Давать ли шанс c#, с которым я уже работал, или начинать учить с нуля яву?
#245 #709182
Отступы эффективней делать марджинами или паддингами, если фона нет?
>>709187
#246 #709187
>>709182
А что, приложение тормозит?

Попробуй так и так, пройдись профайлером и узнаешь.
>>709222
#247 #709195
import android.support.v7.app.ActionBarActivity;
.....
public class MainActivity extends ActionBarActivity {......}

cannot resolve symbol ActionBarActivity

Вчера работало, сегодня нет. В чем дело?
#248 #709199
>>709195

>ActionBarActivity


2016
А так что то с импортом не то
#249 #709205
>>709195

> compile 'com.android.support:appcompat-v7:23.2.1'


Скинь версию похожу строчку из своего build.gradle
#250 #709209
>>709195
Поменяй на AppCompatActivity.
>>709214
#251 #709214
>>709209
они совместимы?
>>709218
#252 #709218
>>709214
Я тебе сейчас приведу весь код ActionBarActivity:
...
public class ActionBarActivity extends AppCompatActivity {
}
#253 #709222
>>709187
Преждевременные оптимизация. Хотя вроде бы разницы не должно быть.
#254 #709227
Сап, аноны есть одно приложение и переодически раз в неделю, а может раз в пару дней может совершенно рандомно выбрасывать ошибку завершения. Как отследить такой баг?
#255 #709231
>>709227
Естественно, просмотрев stacktrace. Если есть проблемы с его получением - можно прикрутить что-нибудь типа ACRA. Но тогда нужен какой-нибудь бэкэнд - либо пилить свой сервер, либо какой-нибудь Tracepot.
#256 #709233
>>709231
Яндекс.метрика
#257 #709234
>>709231
Благодарствую, а то скоро релиз а я в душе не ебу как этот баг найти
#258 #709239
>>709227
Crashlytics
>>709269>>709284
#259 #709244
Есть ли какой-то нормальный декомпилятор апк?
>>709558
#260 #709247
Как сместить центр гугл карты? А то у меня снизу выезжает панелька.
#261 #709268
>>709227
Fabric.io
Проще не бывает.
>>709269
#262 #709269
>>709268
>>709239
Поясните почему Fabric.io бесплатный.
#263 #709284
>>709239
Вот бесит в нем, что он анально встраивается в билд без спроса.
Дайте мне просто jar я его сам положу и подключу, "нет вот тебе плагины для всего что есть, а для чего нет, то НЕНУЖНО".

Только из-за этого сижу на Splunk MINT, хоть там и ограничения на бесплатный аккаунт.
>>709370>>709449
#264 #709296
Накидал за щеку на форму imagebutton-ов, как можно их отмасштабировать вместе с картинкой? Когда я пытаюсь их просто отмасштабировать, картинка внутри обрезается
>>709298>>709310
#265 #709298
>>709296
scaleType ставь нужные, как у ImageView (он ведь от него наследуется)
>>709299
#266 #709299
>>709298
Я, как еблан, загружаю изображение через Uri. Как правильнее?
#267 #709310
>>709296
юзай scaleType fitXY
#268 #709312
>>708815
Спасибо огромное, избавил от гемора
#269 #709370
>>709284
Так раньше crashlytics джарником и подключался. Да и врядли сейчас что-то сильно изменилось и при желании можнл и самому.
>>709390
#270 #709387
Делаю апликуху, сейчас стыкнулся с траблом, что прогресбары бликают на быстром интернете.
Потому хочу сделать задержку каждого запроса в пол секунды.
Юзаю rx, как это ровно обернуть?
>>709391
#271 #709388
Ананасы, что обычно спрашивают на собеседовании у джунов в андроиде?

А точнее - что нужно знать, чтоб попасть на работу?
#272 #709390
>>709370
Да вот не знаю, зашел сейчас на сайт, на выбор два стула:
1) Плагины к IDE
2) Команды для gradle, внешние таски к ANT

никаких jar я не вижу
#273 #709391
>>709387

> прогресбары бликают


http://developer.android.com/reference/android/support/v4/widget/ContentLoadingProgressBar.html

> ContentLoadingProgressBar implements a ProgressBar that waits a minimum time to be dismissed before showing. Once visible, the progress bar will be visible for a minimum amount of time to avoid "flashes" in the UI.

>>709403
#274 #709403
>>709391
Да я его нашел, но у меня допустим прогресс диалог, да и то что ты предлагаешь херня, так как есть вариант когда цепочка rx запустит новое активити, а этот прогрессбар еще не убрался нахуй.
>>709418
#275 #709418
>>709403
Ох, ананасик, сдается мне ты там такие спагетти заварил, что без тебя уже никто не поймет как это работает :)

А для задержек в rx есть оператор (вот сюрприз) delay
http://reactivex.io/documentation/operators/delay.html
#276 #709429
>>709418
Ну хз.
В активити

showProgressDialog();
RetrofitService.request()
... что-то делаем
.subscrive(this::hideProgressDialog())

Понятно что спагетти будет в любом случае, но вроде как нету вырвиглазной логики. Думал сначала внедрить прогресдиалог в контроллер с rx запросами, но понял что это нихуя не удобно. Потому в результате такой танец с бубном. Как результат на вайфая от прогресдиалога мерцания.
>>709454
#277 #709434
>>709418
ну и вообще сложно самому писать понятно, иногда теряешь грань "что такое понятно", да и непонятно начинается в основном из-за ебаного интерфейса.
#278 #709442
>>709418
Нет, делей это задержка, я его и сам нашел, а мне нужно сделать минимальное время, но не добавлять время.
Нет делеем можно сделать конечно, но я просил адекватный способ.
>>709450>>709454
#279 #709449
>>709284
Ты пишешь в грэйдле path к зависимости, и дальше он сам все скочает аарник прицепит, че те не нравится, все как обычно, с realm'ом так же например.
#280 #709450
>>709442
Ты можешь воткнуть в map thread.sleap c нужным вычислинным временем задержки.
>>709473
#281 #709454
>>709429
Ну согласись, вставлять искусственные задержки - это странно.

>>709442
Ты написал

> хочу сделать задержку каждого запроса в пол секунды.


Ну если тебе нужно

> мне нужно сделать минимальное время


то посмотри здесь, к примеру вроде тебе подходит sample()
https://github.com/ReactiveX/RxJava/wiki/Backpressure
>>709473
#282 #709473
>>709450
Такс, извини может я запутал своим плохо поставленным вопросом.
Делей и слип всегда даст мне допустим секунду задержки.
Т.е. время запроса + 1сек.
Но мне нужно добавлять делей только на запросы которые по времени меньше 1 секунды, но не больше.
>>709454

>Ну согласись, вставлять искусственные задержки - это странно.


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

>тебе подходит sample()


Спасибо, почитаю.
>>709573
#283 #709558
>>709244
Нет.
#284 #709566
Есть ли здесь люли, которые рисуют графику для приложений?
Нужно нарисовать несложную векторную графику для экрана приветствия приложения.
>>709567
#285 #709567
>>709566
*Люди конечно же.
>>712466
#286 #709573
>>709473
мб тогда лучше задержку на запуск прорисовки?
>>709594
#287 #709582
Не понимат, уже прошло несколько дней с публикации, а мое приложение невозможно найти в маркете.
Причем, приложение ищется, но как-то странно.
Допустим, око называется KOKOKO - pokpok pokpok.
И точно такого же названия KOKOKO нет больше не у одного приложения в маркете. Но при запросе по названию выдает все, кроме моего приложения.
А вот если задать KOKOKO pokpok, то оно сразу выходит.

В чем может быть косяк?
#288 #709593
Дали тестовое задание. Там есть два интересных пункта: работа с gps (выбор по карте или текущие координаты) и запилить пост в соцсети из прилаги. Это говно долго имплементить, если не работал с этим ниразу?
>>709597
#289 #709594
>>709573
Плохая идея.
Допустим поставили задержку на 1 сек.
Если запрос будет идти 1.1с то прогресс бар отобразится на 0.1с
>>709617
#290 #709597
>>709593
Денек проебешься с настройкой гугловской апи, хотя можно и без нее, а потом с соцсеточкой, но когда придрочишся конечно дело нескольких часов.
>>709599
#291 #709599
>>709597
Окей, пойдет. Спасибо
#292 #709617
>>709594
и как часто будет прокать 1.1?)
#293 #709633
>>709046
лол, ты думаешь андроид делает это лучше?
>>709638
#294 #709638
>>709633
Я думаю он о том, что можно загрузить полную картинку, но в UI пихать уже отскейленую и вообще вне хипа.

Попробуй загружать не в ImageView, а в кастомный Target, там уже все опции цеплять.
#295 #709641
А ну и еще можешь прицепить transform, да так нормально будет.
92 Кб, 847x327
#296 #709660
Делаю анимацию уменьшения вот таким образом. Не работает setPivotX/setPivotY, в чём проблема?
Точнее, работает, но если ставить это
[CODE]v.setPivotX(animationStep.getAnchorPointX());
v.setPivotY(animationStep.getAnchorPointX());[/CODE]
, то уменьшение происходит к верхнему левому краю вьюхи, хотя я задаю значения(0.5, 1.0).
inb4: вью передаётся правильно, в классе animationstep все значения верные.
>>709671
#297 #709671
>>709660

> Sets the pivot value for the display list on the X axis


> @param pivotX The pivot value of the display list on the X axis, in pixels


Доки почитай, он задается в пикселях, а не процентах
26 Кб, 620x485
#298 #709693
ВСЕ СРОЧНО ПОМОГАЕМ АНОНЧИКУ С ЭМУЛЯТОРОМ В УБУНТУ ТУТ:
https://2ch.hk/pr/res/709648.html (М)
#299 #709799
Аноны, будьте добры, подскажите по поводу карьеры.

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

На таком этапе уже можно бегать по собеседованиям или слишком жирно просить работу пока? Стажировки искать может?
#300 #709878
>>709799
Скинь приложения, посмотрим.
#301 #709914
>>709799
А параллельно ты кем-нибудь работаешь?
Вообще, похоже на толстый вброс, чтобы подорвать пуканы ньюфагов и студентов в этом треде
>>710345>>710513
#302 #709971
Как подсвечиваете опеределнный регуляркой текст при наборе текста в edittext?
>>709982
#303 #709982
>>709971
Короч, если в aftertextchanged editable задать колорспан, то главный поток виснет намертво. Поэтому приходится после каждого изменения создавать новый спаннейбл стринг. Не забудьте делать editable.clearspans перед передачей в спаннейбл стринг, а то он скопирует все педыдущие спаны.
#304 #709995
>>709799
андроид говно, решил сча работу сменить, уже с десяток собесов прошел, когда говорю что хочу 2k - мы вам перезвоним
>>710013>>710086
#305 #710013
>>710084
#306 #710084
>>710013
бел дс
#307 #710086
>>709995
Какой опыт у тебя?
50 Кб, 1280x720
172 Кб, 960x904
#308 #710129
ВРАЧ, КОТОРЫЙ УЧИТСЯ В АНДРОИТ ВКАТЫВАЕТСЯ ИТТ

Котаны, подскажите, как лучше реализовывать такой интерфейс?
Я cделалъ в GridLayout, но у меня встал вопрос: как настраивать ширину колонок?
Когда начинаю добавлять веса, таблицу PIDORASEEET.
Есть какие-нибудь адекватные способы рисования границ кроме заливки фона и добавления краев?
#309 #710132
>>710129
padding/margin?
>>710135
52 Кб, 1280x720
#310 #710135
>>710132
Допустим, я хочу, чтобы таблица в ширину всегда занимала весь экран match_parent стоит, но оно все равно размер ячеек подгоняет под содержимое, A/B=2/3 и C=D. То есть жестко размер задать по сути. Как это лучше делать?
>>710190>>710193
#311 #710136
Есть ли серьёзная полноценная замена яве для писательтва под ведро?
>>710137>>710147
23 Кб, 496x496
sage #312 #710137
>>710136
А чем жабка не устраивает?
>>710143
#313 #710143
>>710137
Громоздкая, нелаконичная - всё лучшее от крестов, ады и кобола короче. Ну и у меня к ней просто внутренняя непреодолимая неприязнь.
>>710148>>710174
#314 #710147
>>710136
Выбор обширен: scala, kotlin, c#, вон какие-то петуханы swift собираются тащить, QT, Goвно, ReactNative. Для совсем отбитых - питон, руби и конечно всякое js говно.
>>710152>>710155
358 Кб, 485x496
#315 #710148
>>710143
А чому шапочку не читаешь?

От себя добавлю что люди еще пишут:
1) "статический" Groovy - сам не пробовал, но люди говорят что норм и apk почти не распухает.
2) Scala - тоже возможно, но это совсем странные люди (там же рантайм здоровый и новая скала требует Java 1.8)
>>710197
#316 #710152
>>710147

>ReactNative


>всякое js говно

>>710154
#317 #710154
>>710152
Ты же знаешь разницу между всякими фонгапами и ReactNative?
>>710157
#318 #710155
>>710147

>Для совсем отбитых - питон


Мне подойдёт.
#319 #710157
>>710154
Я ОП.
>>710159
#320 #710159
>>710157
Хуеп ты. Я назвал jsговном то что работает как js - в браузере, ReactNative работает не так.
>>710163
#321 #710163
>>710159
js это язык, то что ты себе нафантазировал, лично твои проблемы. Да и титаниумы с иониками не как фонгеп. если что
#322 #710166
Ребят, помогите нубу. Нужно за вечер понять как работать с подключаемыми бд нубу. Андроид играючи поделен на кучу ненужных курсов, мне бы по основам пройтись.
#323 #710173
Есть ли здесь опытные андроид господа?
Можете глянуть, насколько упоротая архитектура в этом приложении:
https://github.com/trishika/DroidUPnP
На первый взгляд там много бойлерплейта.
>>710199
#324 #710174
>>710143

>Громоздкая, нелаконичная


Реально в чем трабла джавы без выебонов, это делегаты.
С ними ты по другому проектируешь апликуху, ну и дженерики немного каличные.
#325 #710190
Я так понял, ньюфагов здесь не жалуют и проповедуют ПРЕВОЗМОГАНИЕ.
Ну ткните хотя бы меня носом, где про это xml-верстку можно нормально почитать.
>>710129
>>710135 - кун
>>710191
#326 #710191
>>710190
С разметочкой проебался, сорян.
#327 #710193
>>710135
>>710129
На планшете в любом случае весь этот текст распидорасит.
Используй библиотеку sdp https://github.com/intuit/sdp чтобы
делать интерфейс, который не зависит от размера экрана.
К примеру на 14600277998650.jpg задай ширину левого столбца равной @dimen/_250sdp, правый поставь match parent. Посмотри как на разных экранах будет выглядеть.
Размеры шрифтов - тоже задай в sdp.
>>710203
#328 #710194
>>710129
Первое правило мобильного дизайна под ведро, расставляй вьюхи в длину, но не в ширину.
>>710195
#329 #710195
>>710194
Это как?
#330 #710197
>>710148
Читаю. Но у JS очевидный оверхед, с таким же успохом можно любой скриптовый язык взять, а всякие котлины никому не нужны кроме команды разработчиков и ещё 3,5 анонов. C# - та же ява, но для дотнета. NDK сам гугл советует использовать только в критичных по скорости участках, а всё остальное лабать на яве. Так что полноценных замен то и нет по сути.
>>710198
#331 #710198
>>710197
Этот диванный обзор языков, уебывай ка нахуй.
>>710206
#332 #710199
>>710173
Приложение написано на java, дальше смотреть не смысла.
Очевидно там будет много бойлерплейта.

MVC только ради MVC - я считаю странным.
К примеру у меня кросплатф. приложение, вот там имеет смыслы выносить что-то в контролы/вьюмодель.
>>710204
#333 #710203
>>710193

> sdp


ИМХО такой подход чистое зло, тем более Android и так может апскелить на планшет если галочку поставить.
Раньше там хреново смотрелись png картинки, но сейчас с вектором должно стать норм.
>>710220
#334 #710204
>>710199
Хватит толстить.
Котлинофаг ты так и на робовм? Как он там после майкрософта?

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

Я тебя уже спрашивал, какая у тебя зп если не секрет? А то меня начинают терзать смутные сомнения по поводу моего выбора.
>>710222
#335 #710206
>>710198
Это не обзор, а просто моё личное мнение касательно вопроса. Вместо того, чтобы обсирать, лучше бы конструктивно прокритиковал.
>>710210
#336 #710210
>>710206
Ну шапку прочитай ну заебали вы.
Полноценная замена джавы бля, ну в каком спектре? Для jvm это котлин, для работы нету полноценной замены.
Кроссплатформа в принципе не полноценная, нет по факту я не смогу сказать почему, но тут мое мнение подтверждается уймой разного говна нацеленного на эту ветку.

А ндк для байтоебства, если хочешь быть спецом то нужно будет уметь работать и с ним.
>>710215
#337 #710215
>>710210
Я уже когда-то пейсал, почему.
Очень много прыжков по оперативной памяти. "Не просто много, а очень много".
Ну и внешний вид на платформе может отличаться (достаточно погуглить Mac OS 7.x)
>>710218
#338 #710218
>>710215
Я так понимаю ты про кроссплатформу?
А можно ссылочки какие-то? Если честно пропустил твой пост.
#339 #710220
>>710203

>Android и так может апскелить на планшет если галочку поставить


Какую галочку?
#340 #710222
>>710204

> Как он там после


Я пока разницы не заметил, но бесплатным он снова не стал.
Глянул Intel MultiOS - очень удручающе выглядит, куча лишнего кода в контроллере
и вместо storyboard какой-то свой формат и редактор UI.

> А то меня начинают терзать смутные сомнения
Ну конкретно ЗП я тебе не скажу (да и не из Москвы я чай), а остальное тут >>705226
>>710224
#341 #710224
>>710222
Я вчера разговаривал с иосником 26 лет с зп в 3.5к. У него самого опыта 3-4 года. Это в киеве.

>Ну конкретно ЗП я тебе не скажу
Ты реально деанона боишься? 14 лет чтоль? Хоть диапазон какой? Больше 3?
#342 #710319
Добавьте в шапку книжек. На первой в гугле увидел
http://shop.oreilly.com/product/0636920029045.do
>>710377>>712469
#343 #710345
>>709914
Не работаю. И это не вброс, сам студентота. Хоть и магистр
>>710518
#344 #710377
>>710319
Такие просьбы к ОП-посту прикрепляй, я перед созданием нового треда смотрю.
#345 #710513
>>709914

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



В чем тут вброс?
>>710518>>710539
#346 #710518
>>710345
>>710513

>прочел я несколько книжек, курсы прошел, зарелиил пару приложений в гуглплей.


>как попасть на позицию какого-нибудь джуна в андроиде?


>В чем тут вброс?

>>710539
#347 #710539
>>710513
Анону не верится, что так можно.
>>710518, поверь, так можно. Такие люди есть. Мало кто из них будет писать об этом. Тем более здесь. Но они есть.
_не->>709799_
>>710542
#348 #710542
>>710539
Вы там аутисты чтоль? Пару книг он прочитал и пару апликух зарелизил.
Давай по факту, ссылки и что читал.
Такого быть не может, так как человек прочитавший несколько книг по ведру и зарелизивший несколько апликух уже стронгджун, если не даун.
>>711337
#349 #710553
https://2ch.hk/pr/res/710412.html (М)
Больше говна системе говна!
>>710586
#350 #710586
>>710553
Фантазии.
#351 #710749
Откуда берут названия: pinterest, retrica, instagram и т.п. Есть ли какие то генераторы красивых названий?
#352 #710761
#353 #710778
>>704022 (OP)

Коты, волею судеб потребовалось временно перекатиться в андроид. Опыт java core и энтерпрайза. Какую документацию читать, чтобы пропустить обучение джаве и сразу перейти к android specific?
>>710987
7 Кб, 312x168
#354 #710908
Как убрать kotlin-runtime.jar и kotlin-stdlib.jar из External Libraries, все упоминания котлина из грейдла убрал, и плагин даже удалил.
#355 #710987
>>710778
Шапку
>>712470
#356 #710990
Все я ебал, меня заебала тысяча статей про архитектуру. Одно говно круче второго бля. Каждый блять гений тулит свое говно без попыток разобраться в чем реально профит. А хуже всего что еще передирают друг друга а потом выдают продукт как свой личный.
>>711041
#357 #711033
Хочу зарегать второй аккаунт разработчика на котором буду выкладывать приложения, сделанные для себя.
Будут ли здесь подводные камни, если я зарегаю аккаунт на другой номер телефона и кредитной карты?
>>711039
#358 #711039
>>711033
хз, а разве нельзя на каждое приложение отдельный акк регить?
#359 #711041
>>710990
на собесе спросили в чем преимущество mvp - сказал что типо разделение логики, можно мокать/подменять интерфейсы, - минусы - больше кода
в чем обосрался?
>>711122
#360 #711060
Сосаны, осторожней с support 23.3.0, только что голову ломал какого черта приложение падает в месте, где раньше все было ок, без какого-либо стектрейса. Короче вылетал ClassCastException, но при этом так что его в логе не было. Теперь вместо активити, к которой вьюшка прикреплена, getContext() возвращает TintContextWrapper.
>>711064
72 Кб, 750x350
#361 #711062
Продолжение приключений врача-погромиста.
В во встроенном визуализаторе студии с помощью layouyt:columnWeight добился чего хотел: соотношение размеров колонок постоянное, нормально масштабируется и на планшетах и на смартфонах.
Но когда запускаешь в "виртуальном андроиде" случается вот такая вот хуйня (слева).
ЧЯДНТ?
Люблю его, удивительный мир программирования.
>>711102
#362 #711064
>>711060
Найс. И что они теперь прикажут делать? Сосать хуй? Если пидоры сделали инфлейтор который не умеет инфлейтить с обычного контекста, но требует внезапно только его.
>>711066
#363 #711066
>>711064
Ну я вообще использовал место что бы достучаться до активити, но это хуево, сейчас активти лежит в mBase этой хуйни.
>>711155
121 Кб, 966x609
#364 #711102
>>711062
НУ ПОЧЕМУ ЕГО PIDORASEEEET???
#365 #711122
>>711041
Более независимы между друг другом классы M V P чем в M V C.
#366 #711126
Насколько бесперспективно продвигать DLNA плеер с халявной музыкой из интернета (вк) с целью извлечения профита?
Пройдет ли уловка с тем, что приложение не проигрывает музыку на смартфоне?
#367 #711139
Какого-то черта вместо нормального эксепшена в лог пишется только Shutting down VM. Ошибка только в минифицированной версии происходит, как выловить? Крашлитика даже не успевает что-то словить.
#368 #711155
>>711066
Да я к тому что они там рахиты. Сами говорят что мол не ожидайте активити в методе гетКонтекст, но сами же принимаю в инфлейторе контекст, и ожидают что это активити.
#369 #711335
Такс, допустим, мне при создании фрагмента нужно в этот фрагмент передать объект класса который мне лень парсить. Нормально ли передавать его не через бандл, а через обычный сеттер?
#370 #711337
>>710542
Прочитал философию явы, шилдта. По андроиду мейера и хэд ферст. Прошел несколько курсов на udacity, startandroid.
>>711472
#371 #711340
>>704612
Swift убьет всех. Инсайдерская инфа.
>>711347
#372 #711347
>>711340
Как бы форсер не старался, но все таки мое мнение, что Ktl > Swift. Уж если и перекатываться с джавы, то на него.
>>711366>>711440
#373 #711366
>>711347
Ну и чем он >? Разве что тем, что гуглу не придется переписывать кучу дерьма. А по факту он медленнее жабки.
>>711440
#374 #711440
>>711366

> 2016


> Думать что тормоза в фрейморках, а не в своем говно-коде



>>711347
Значит я правильно стараюсь :3
>>711466>>711470
#375 #711457
#376 #711466
>>711440
Не пизди лишь бы спиздануть, то, что котлин тормознее собирает, это факт. Проверки-хуерки в анализаторе там жирнее.
>>711474>>711480
#377 #711470
>>711440

>2016


>Думать что фреймворки не такое же говно как твой код

#378 #711472
>>711337
Ты в теории уже должен знать больше меня лол. Я джун с годом опыта.
>>711505
#379 #711474
>>711466

>что котлин тормознее собирает


А кого это ебет? 6 сек ждать или 10?
Главное что апликухе похуй.
#380 #711480
>>711466
Сейчас есть проблема (разработчик рассказывал) в случае когда много java классов и мало котлина.
Но они над этим работают и скоро сделают инкрементную сборку что-бы еще быстрее было.

И одни хрен котлин будет быстрее чем сборка свифта в нативный код под несколько архитектур.
#381 #711505
>>711472
Будь добр, поделись тогда опытом как попал на работу. Что спрашивали на собеседовании, как долго искал и т.д.

Я сейчас начинаю ходить по собеседованиям, мне бы эта инфа оче пригодилась, спасибо.
>>711521
#382 #711521
>>711505
Через одногрупника нашел первую работу за еду, пол года проработал там, на выходе две апликухи было. Дальше как-то быстро работу нашел.
На собеседованиях спрашиваю какую-то хуйню уровня жизненного цикла фрагмента.
#383 #711537
Взяли стажеров на проект. Открыл его и ахуел. Везде котлин, дохуя фрагментов, свое апи, dagger, retrofit, dbflow. В общем, как быстро свой мозг раздуплить, какие участки кода курить в первую очередь?
>>711622
#384 #711622
>>711537

>Везде котлин, дохуя фрагментов, свое апи, dagger, retrofit, dbflow


Чет не верится. Смотри фрагменты и апи, в даггер я думаю тебе не придется лезть.
147 Кб, 1537x648
#385 #711692
>>704022 (OP)
Аноны, почему не получается сделать иконку отдельным компонентом в меню? "app:showAsAction" - изменял на always, не помогло. В чем ошибка?
>>711704
sage #386 #711704
>>711692
Отдельным компонентом? Что значит отдельным компонентом? Если у тебя не вмещается Settings в экшнбар, то иконка у тебя и будет спрятана.
>>711705
#387 #711705
>>711704
Даже если указывать app:showAsAction="always" для иконки, её все равно не выводит отдельно.
>>711709
#388 #711709
>>711705
Нахуя я саганул?!
Ты про какой итем говоришь? Create order или Settings?
>>711845
#389 #711845
>>711709
Create order. Хуле его в то меню(три точки) запихивает?
>>711897
#390 #711854
сап двч

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

https://telegram.me/joinchat/B7IzvT5twDRYYTqO0y7bQg
>>712471
#391 #711894
Студия обновилась до версии 2.0.

Что-то я не совсем догоняю как использовать все новые фишки. Эмулятор стандартный все так же создается в немасштабируемом окне. Зависимости в градле обновил.
>>711978
#392 #711897
>>711845
бамп
>>711913
#393 #711913
>>711897
Если мпортирую и наследую AppCompatActivity в главной активности - то иконка появляется. Но ведь с AppCompatActivity нельзя использовать Theme.Material.Ligh. Как быть? Почему с обычной активностью(без библиотеки поддержик) иконка не появляется? В книги(HeadFirst) юзали активность без библиотеки поддержки.
>>711922
#394 #711922
>>711913
Понял в чем проблема:
Theme.Material.Light this theme doesn't support showing App icon in actionbar.

Хуле тогда в учебнике в примерах используется эта тема? Действительно не поддержуется?
>>711927
#395 #711927
>>711922
А, это говорится про иконку приложения.
87 Кб, 909x635
#396 #711978
>>711894

> Эмулятор стандартный все так же создается в немасштабируемом окне.


А sdk обновил?
28 Кб, 481x358
#397 #712041
Опытные ананасы, как мне сделать, как на пике?
#398 #712058
>>712041
RelativeLayout + ImageView + 2 x TextView

не благодари
>>712069
#399 #712069
>>712058
Спасибо, конечно, капитан, но такой вариант не подходит.
#400 #712084
>>712041
Тебе нужно будет сделать собственную текствью, в которую ты передашь размеры картинки. В своей текствью вместо дефолтного onDraw делаешь свой через canvas.drawTextOnPath. Path высчитаешь сам по размеру самой вьюхи и размера картинки.

Сам я этим методом еще не пользовался, но вроде он тебе подходит. Самое сложное высчитать нужную высоту вьюхи в этом случае, не знаю как мерить текст, может еще кто подскажет. Есть метод Paint.measureText, можно в его сторону покапать.
>>712216
#401 #712114
Для андроид студии нужно качать и устанавливать стиль кода для java от гугл или он там по умолчанию?
#402 #712125
Посоны, напомните, какой там в идее хоткей, шоб автоматически импортить всякие вьюхи?
>>712211
#403 #712165
>>712041
LeadingMarginSpan2, но это только на случай, когда картинка слева. Не уверен, что это работает справа, но можешь покопаться в коде ведра, попробовать.
#404 #712171
Аноны, есть LinearLayout в котором два элемента, у которых стоит layout_weight="1". Один из них - TextView, если добавляю в него много текста, то он кладет хуй на layout_weight="1" и залазит на другую вьюху. Что делать, чтобы текствью начинал заполнять второю строку, а не растягивался?
>>712177
#405 #712177
>>712171
android:layout_width="0dp" надо было поставить у текствью, может кому нибудь пригодится
>>712195
#406 #712195
>>712177
Студия сама ващет подсказывает это, без этого weight работать не будет.
#407 #712211
>>712125
Походу действительно ебаный альт-ентер, хотя помню, че-то было такое магическое, что жмешь хоткей и сразу всё импортится. Ладно, хуй с вами, пиздюки.
#408 #712213
Есть какие-нибудь годные туторы по созданию RSS-читалки?
#409 #712216
>>712084
Йобаный рот. А если я хочу динамически редактировать, то для EditText тоже такую хуйню делать?
>>712221
#410 #712221
>>712216
Сделайте нормальный дизайн.
>>712222
#411 #712222
>>712221
Да у меня это вообще тестовое задание. Прост не знаю, как текст и картинку расположить в окне.
>>712225>>712228
#412 #712225
>>712222
Что-то здесь тогда не так, что бы на тестовое дали такую окружающую хуйню. Ты точно не на вебмакаку пошел? Во-первых это выглядит как говно, во-вторых совершенно хуй знает как это делать.
>>712236
#413 #712226
Аноны, заебался я все эти туториалы проходить, ну просто бесконечные они, нет сил уже.
Как думаете, можно ли начать пилить проект, почти нихуя ни в чем не разбираясь и попутно обучаться, разбирая только то, что нужно?
>>712229
#415 #712229
>>712226

> почти нихуя ни в чем не разбираясь и попутно обучаться, разбирая только то, что нужно?


Всегда так делал. Потом конечно переделывать заебешься, но это только на пользу.
#416 #712236
>>712225
Есть уловный текст, к нему нужно прикрутить пикчу. Делать как угодно. Посмторел, как это реализовано в Evernote (там сначала пикча, а потом текст под ней). Главная проблема в том, что хуёво смотрится что так, что эдак.
>>712228
Спасибо, попробую
#417 #712465
>>709231

> либо какой-нибудь Tracepot


Не знал о таком сервисе, спасибо за наводку.

мимо другой анон
#418 #712466
>>709567
Людей здесь точно нет, ты сайтом ошибся.
#419 #712467
>>710129
Меклон, ты?
#420 #712469
>>710319
А я бы её не советовал. Обычно у Oreilly годные книги, но вот эта что-то не очень. Плюс устарела уже сильно
#421 #712470
>>710987
Хуяпку
sage #422 #712471
>>711854

> уютненькая группа


> в телеграме


Пошел нахуй.
>>712480
#423 #712480
>>712471
Охуел, контактобыдло?
>>712492
sage #424 #712492
>>712480

> контактобыдло


У тебя хуёвый детектор, телеграмоблядь.
>>712512
#425 #712512
>>712492
Отличный детектор, на андроиде.
#426 #712556
Антоны, как сохранить в SharedPreferences прогрманно созданые view элементы. В shared preferences методы putInt, String и тд. А у меня это целая функция и я не понимаю как это прировнять к переменной, короче нуб в этом во всем, помогите
>>712559
#427 #712559
>>712556

> SharedPreferences прогрманно созданые view элементы


Че?
>>712560>>712564
#428 #712560
>>712559
программно*
>>712562
#429 #712562
>>712560
Блять, я понял что программно. Какой смысл ты вкладываешь в это?
#430 #712564
>>712559
суть в том что пользователь создает кнопки через приложение и их надо как-то сохранять
>>712566>>712567
#431 #712566
>>712564
Cохраняй факт создания кнопки и параметры, с которыми она была создана. Можешь создать список, сериализовывать его в json и загонять в sharedpreferences.
>>712568>>712570
#432 #712567
>>712564
Ну создавай заново при запуске. Или засовывай в шары что-то вроде "button,150,150,centerInParent".
#433 #712568
>>712566
А через gson нельзя разве сериализовать?
мимо-другой-анон
>>712571
#434 #712570
>>712566
Что-то вроде такого?
Editor prefsEditor = mPrefs.edit();
Gson gson = new Gson();
String json = gson.toJson(MyObject);
prefsEditor.putString("MyObject", json);
prefsEditor.commit();
>>712574
#435 #712571
>>712568
Можно. Ведь GSON сериализует в JSON.
#436 #712574
>>712570
Да. У MyObject заведи поле List<Object2>, а у Object2 заведи поля, задающие параметры конкретной кнопки. Хотя можно напрямую список сериализовывать без MyObject, сразу List<Object2>
>>712577
#437 #712577
>>712574
спасибо
#438 #712696
Что пользователи чаще выбирают:
1. Скачать беспоатное приложение и если понравится скачать платнцюую версию
2. Бесплатное с урезанным функционалом + покупки в приложении
>>712698
#439 #712698
>>712696

> если понравится скачать платнцюую версию


Ее еще и настраивать надо заново.
>>712699
#440 #712699
>>712698
Да, это точно.
Если прикручивать inapp покупки, можно ли сделать систему промокодов/купонов?
#441 #712807
Возможно ли монетизировать приложение, которое проигрывает музыку из ВК?
Или это гиблое дело и верный путь к сгущенке (бану)?
>>712816>>712872
#442 #712816
>>712807

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


Ну в край охуели.
>>712820
#443 #712820
>>712816
Вообще-то нет.
Моё приложение предоставляет уникальный функционал. Я не продаю песни.
>>712825
#444 #712825
>>712820
Какой? Групирование песен?
>>712829
#445 #712829
>>712825
Нет. DLNA.
>>712842
#446 #712842
>>712829
Та вроде как есть уже такое.
>>712846
#447 #712846
>>712842
Скинь ссылку сюда.
>>712858
#448 #712858
>>712846
Сам ищи лол, это такой очевидный функционал что страшно.
>>712865
#449 #712865
>>712858

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

>>712869
#450 #712869
>>712865
А я понял, ты у нас колумб.
#451 #712872
>>712807
реклама + убиралка рекламы + цветовые темы, пипл хавает.
#452 #713129
>>713138
sage #453 #713138
>>713129

> Google is said to be considering Swift as a ‘first class’ language for Android


> Google собирается использовать Swift в качестве основного языка для Android


Конечно небыло. Ведь инфа только пару часов назад просочилась и доступна только в нескольких закрытых источниках. И доступна только на языке оригинала (русском).
>>713207
#454 #713207
>>713138
Давай, ещё какашками покидайся.
>>713316
#455 #713316
>>713207
Кинул, вытирай.
#456 #713418
Аноны, а возможно ли сделать уведомление с горизонтальным скроллом? Если да, какие классы юзать, если нет - то обоснуйте.
>>713420>>713722
#457 #713420
>>713418
Тут недавно показывали кастомный лэйаут, но это будет жутко неудобно.
#458 #713455
Сап, вопрос в следующем - на всех ли устройствах путь к проекту будет один и тот же ? Т.е.
/storage/emulated/0/Android/data/
>>713472
#459 #713472
>>713455
В мое время :3 это было /mnt/sdcard/...

На самом деле, конечно путь надо брать через Context.getExternalFilesDir
>>713476
#460 #713476
>>713472
а до куда путь идет в таком случае ( вырубил студию уже, западло запускать и тестить ), до непосредственно папки, где лежит проект ? ( Если юзать Context.getExternalFilesDir ?
92 Кб, 435x313
Realm #461 #713576
Знающие анончики, напомните в чем плюс перекатывания на realm с sqlite?

Сейчас юзаю sqlite+ormlite:
1) из запросов получаю generic списки (List<T>) или Iterable<T> (ленивый запрос)
2) есть билдеры запросов (могу и сырые sql пихать и получать List<T>)
3) не нужно забивать голову с потоками (там методы синхронные)
4) могу на все приложение держать один синглтон и не заморачиваться с его правильным закрытием
5) к apk всего +300kb для всех платформ (ormlite написан же на java)
6) совместим с RoboVM
>>713653
#462 #713653
>>713576
https://habrahabr.ru/post/281226/
1) Скорость;
2) Ленивые коллекции;
>>713751
#463 #713722
>>713418
через обычный RecyclerView делается
>>713729
#464 #713729
>>713722
RecyclerView в RemoteView нотификации, ты там ебу дал?
Он даже формально не анатирован @RemoteView, не говоря о том что андроид вообще не умеет в не системные View в ремоте.
>>714218
#465 #713730
Сап двач. Пишу с южной столицы Казахстана, где не так давно внедрили систему электронной оплаты проезда с использованием карточек RFID. Есть сайт, где раньше была форма, куда пишешь номер карты и ответ получает остаток счета. Я решил написать приложение для проверки + доп фичи. Приложение, собственно, просто отсылало POST на сервер сайта (http) и обрабатывало ответ. Теперь же проверка переехала на сайте в кабинет (https). Суть траблы - я теперь не могу получить данные с сервера, в ответ получаю 404 и пустую строку. Анон, помоги, как мне решить эту проблему? Уже перепробовал несколько ответов на stackoverflow, однако они не помогли.

С меня признательность и благодарность
>>713732>>713789
#466 #713732
>>713730
Там наверное нужны куки от твоего аккаунта.
>>713737
#467 #713737
>>713732
https://cabinet.onay.kz/ аккаунта нет, тут можно проверить любую карту любому человеку. Проверил скрипт на сайте, который отправляет данные с формы - он отсылает на сервер только этот самый "секретный" ключ (из hidden input) и номер карты. Для интереса если: номер моей карты 01494740, а в списке выбрать Студенческая карта
>>713740
#468 #713740
>>713737
Ну сравни в Fiddler запросы из браузера и своей программы.
>>713741>>713789
#469 #713741
>>713740
Хм, впервые слышу про прогу. Проверю коды. Вообще я анализировал отправку формы через firebug для firefox, через него я узнал служебную информацию. Но в чем суть проблемы? Почему httpsUrlConnetion не может отправить правильные данные на сайт? Какие данные может прикреплять барузер к запросу, какие недоступны в проге для андроида? Я не силен просто в веб-делах
>>713744
#470 #713744
>>713741
Сертификат он отправляет, а твоему не верит.
>>713747
#471 #713747
>>713744
Кто не верит? Сервер отправляемому или прога (HttpsUrlConnection) присылаемому от сервера?
>>713748
#472 #713748
>>713747
Сервер не верит бля, но вообще похоже что ты там не можешь авторизоваться.
>>713755
#473 #713751
>>713653

>2) Ленивые коллекции;


Типа данные подтянутся по обращению к коллекции?
Но она же тогда динамическая, как целостность обеспечиваеться7
>>713758
#474 #713755
>>713748
Говорю же, что авторизация для проверки не нужна. А чтобы не быть голословным, скинул ссылку на сайт и номер карты - проверяй не хочу.
>>713763
#475 #713758
>>713751
Ленивые в смысле подгрузки данных, че ты.
>>713760
#476 #713760
>>713758
Так а я что сказал?
Мол данные подтянутся по обращению к коллеции, как и стандартный курсор тащем-то.
Но если я вытянул коллекцию, работаю с ней, а тут внезапно итем кто-то потер, что дальше?
>>713761>>713762
#477 #713761
>>713760
Ты получишь нотификацию. А потертых итемов не будет. А что ты делаешь когда получаешь уведомление об изменениях?Правильно - рекверишь.
>>713768
#478 #713762
>>713760
Коллекция обновится, если она была получена на треде с лупером, если у тебя есть указатель на этот объект где-то, то у него будет isValid = false.
>>713768
#479 #713763
>>713755
Отвечаю сам себе. По ходу, на сайте этом учитываются и куки, так как спустя некоторое время сайт не дает проверку, говоря, что сессия устарела. Есть ли способ генерации куки в андроиде?
>>713778
#480 #713768
>>713761
>>713762
Ну так вот это тот же курсор и курсорлоадер, но без прослойки превращения и возможнее удобнее чем лоадер.
>>713770
#481 #713770
>>713768
Да хуйня это все SQLite зе бест.
>>713845
#482 #713778
>>713763
Отвечаю сам себе [2]. Нихуя. Куки одни и те же, и тпавка их на сервер ничего не меняет. ПРошу помощи снова

Копипаста первой просьбы:
Сап двач. Пишу с южной столицы Казахстана, где не так давно внедрили систему электронной оплаты проезда с использованием карточек RFID. Есть сайт, где раньше была форма, куда пишешь номер карты и ответ получает остаток счета. Я решил написать приложение для проверки + доп фичи. Приложение, собственно, просто отсылало POST на сервер сайта (http) и обрабатывало ответ. Теперь же проверка переехала на сайте в кабинет (https). Суть траблы - я теперь не могу получить данные с сервера, в ответ получаю 404 и пустую строку. Анон, помоги, как мне решить эту проблему? Уже перепробовал несколько ответов на stackoverflow, однако они не помогли.

С меня признательность и благодарность
#483 #713789
>>713740
Ты шо мне втираешь про файддлер - я ж трафик не могу отследить по https. Открывается туннель, и поток данных в нем скрытый. В общем, вопрос остается до сих пор открытым

>>713730 - кодер
>>713793
#484 #713793
>>713789
Залезь в настройки и включи отслеживание https
>>713797
#485 #713797
>>713793
Окей, включил - помогло. Спасибо. Но FUCK, не отслеживаются исходящие запросы от эмулятора Андроид
>>713799>>713800
#486 #713799
>>713797
Попробуй stetho
#487 #713800
>>713797
Ну что ты как маленький:
1) В настройках Fiddler ставишь "accept remote connection" (или как-то так)
2) Устанавливаешь сгенеренный SSL сертификат на телефон (кидаешь на сдкарту, заходишь в настройки телефона и там выбираешь установить пользовательский сертификат)
3) Заходишь в настройки wifi и ставишь там прокси, <локальный IP твоего компа и порт 8080> (или какой там у тебя)
>>713819
#488 #713819
>>713800
А можно ведь просто использовать окхттп с их логгером.
>>713829
#489 #713822
Вывожу на surfaceview превью с камеры. Перед этим выбрал нужный мне размер превью и назначил surfaceview ширину и высоту с тем же соотношением. Самому превью еще и назначил поворот в 90 градусов (приложение в портретном режиме зафиксировано).
Вопрос: хули пидорасит мое превью, когда я телефон поворачиваю на бок. Все объекты становятся шире. Гуглокамеру так например не пидорасит. Как мне этого избежать?
118 Кб, 774x897
#490 #713826
Помохите! устанавливал андроид студию, вот что вылезло, поди опенжабу не хочет?
>>713832>>713899
#491 #713829
>>713819
Ну, а так можно смотреть содержимое SSL запросов Google Play, VK и др
>>713834
sage #492 #713832
>>713826
Лол, ты ее на сервере что-ли запускаешь?
>>713836
#493 #713834
>>713829
Нельзя, вероятней всего они используют certificate pinning.
>>713841
#494 #713836
>>713832
Нет
#495 #713841
>>713834
Google Play точно не использует (его я тестировал), VK вроде тоже, хотя про него точно не помню.
Вообще когда я этим баловался, пиннигом заморачивались только банковские клиенты.
46 Кб, 354x404
#496 #713845
>>713770
Два чаю адеквату.
#497 #713899
>>713826
Бамп
#498 #713929
Кто-то собирал мультидекс?
Подключил Appodeal раджи видео и нативных реклам. Так вот слишком много методов, как же это решить? Ясно как - прогвард + мультидекс. У меня был Application который инициирует всякикие аналитики и вкашки - поменял "extends Application" на "extends MultiDexApplication" верно? Результат: собирает уже 20 минут. Это же неправильно. Сам проект собирается за минуту - не больше.
>>713945
#499 #713945
>>713929
А что гугл говорит по этому поводу?
>>713950>>714506
#500 #713950
>>713945
Да пишут что будет очень долгая сборка. Я вот пустой проект с двумя активитями (темплейт и инициализация Appodeal'a) собиралось 30 секнуд для лолипопа (для него быстрее), щас посмотрю количество методов в их либах.
24 Кб, 671x514
#501 #713956
Есть два вьюпейджера, один(вертикальный) находится в другом(горизонтальный)
как настроить тоучлистенеры чтобы при скроле влево-вправо листался горизонтальный вьюпейджер, а при скроле вверх-вниз - горизонтальный ?
и хотелось бы немного разяснений услышать про onInterceptTouchEvent
Помогите разобратсья плз.
Уже наверное 4ый день бьюсь (
Вертикальный вьюпейдер развернут через текст трансформпейдж. И ловится движение по горизонтали и меняются координаты(пикча).
Можно ли в этом интеррупте вылавливать движения по горизонтали и отдавать их как то вьюпейджеру родителю(горизонтальный) ?
#502 #713968
Error:Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded (9 times)

Error:Error converting bytecode to dex:
Cause: java.lang.RuntimeException: Translation has been interrupted

Error:Execution failed for task ':app:transformClassesWithDexForProdDebug'.

> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2



Вротмненоги.
#503 #714006
Как можно восставить arraylist объектов из sharedpreferences в listview?
Никак нагуглить не могу
>>714008
#504 #714008
>>714006
[CODE]sPref = PreferenceManager.getDefaultSharedPreferences(this);
for(String s : sPref.getStringSet("Objects",new HashSet<String>())){
Gson gson = new Gson();
String json = s;
Item mItemObject = gson.fromJson(json, Item.class);
data.add(mItemObject);
}
adapter = new ParkingAdapter(data, this);
listview.setAdapter(adapter);[/CODE]
>>714010
#505 #714010
>>714008
Как обычно, проебался.
http://pastebin.com/MF6dzM1F
>>714012
#506 #714012
>>714010
благодарю
74 Кб, 640x360
#508 #714170
#509 #714218
>>713729
читал по диагонали, пардон, думал речь об обычном списке.
#510 #714506
>>713945
Собирает и правда долго. Раза в 2.
#511 #716319
Можно ли каким-то хитрожопым способом заставить elevation работать на pre-Lolipop ?
287 Кб, 700x1256
#512 #723018
Грид лейаут плывет по правому краю. У внешнего лайнир лейаута паддинги небольшие по бокам.
Как сделать так, чтобы клетки грида сами уменьшались, если не влазят или если захардкодить размеры грида. Чтобы при этом структура сетки сохранялась(аналог weight у linearlayout чтоли получается)?
>>724308
#513 #724308
>>723018
пиздец, здесь глухо. Давно короче порешал проблему
Тред утонул или удален.
Это копия, сохраненная 28 апреля 2016 года.

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

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