Двач.hk не отвечает.
Вы видите копию треда, сохраненную 28 января 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
35 Кб, 738x415
Разработка под Android тред №9 # OP #596036 В конец треда | Веб
Радуемся анонсу второй версии андроид студии, пускаем слюни на новый градл. Сборка в несколько секунд теперь реальность.
Коротко о главном:
1) Если ты учил джаву но не хочешь пилить тырпрайз до конца жизни - добро пожаловать в андроид разработку.
2) Android Studio & Java - единственный легитимный набор, теперь стал еще легитимнее.
3) Xamarin -для богатых и ебанутых виндовсопоклоников, медленно и невыгодно, но на шарпах.
4) PhoneGap - не пробовал но осуждаю, как и весь не-web на js. На самом деле изменил свое мнение, всякие поделки на js имеют место быть, и более того, в наших же интересах клепать несложные проекты на нем, так как объективно быстрее сделать юи.

Где брать инфу:
Интернет-ресурсы
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

Пред. тонет тут: https://2ch.hk/pr/res/569138.html (М)
#2 #596040
Трям, котаны. Есть у кого идеи как сделать такой drawer на Android studio ?
https://dribbble.com/shots/2385292-Menu
( скрин слева )
#3 #596041
Нормально что вьюпейджер при перелистывании уничтожает фрагменты и поздно с нуля? Как бороться, кроме вручную saveinstancestate c bundle восстанавливать?
#4 #596042
1. ArrayList<Bitmap> bitmapList = null;
2.bitmapList.add(BitmapFactory.decodeResource(getResources(), R.drawable.%ИМЯ_ПИКЧИ%, null));
Как думаете или знаете наверняка, можно ли вытащить потом после декодирование в битмэп картинки из ресурсов, это %ИМЯ_ПИКЧИ%?
Курю официальный сайт для девелоперов, но не вижу такого геттера.
#5 #596064
собственно вся эта ебола началась как раз с того что их айосник сделал эту НЕХ. А меня попросили соответствии ать блядскому дизайну
#6 #596067
И , к слову, если не люто кастомизировать эту манюшку, то она делается за 5-10 строчек.
Так как мне по тз, конечно же блядь, нужно было ебашить прямо в сраную библиотеку и частично переделывать ее под себя, у меня вышло много больше кода.
#7 #596080
>>596067
Ну понятно что это обычный дрвоерлейаут с флагом и костылями в виде всяких транспарент бекграундов у фрагмента. Но нахуя?
sage #8 #596082
>>596042
Нельзя
#9 #596089
>>596041
Вроде fragmentpageradapter не должен уничтожать, это fragmentstatepageradapter уничтожает.
#10 #596103
>>596089
Ему поебать, он запускает онСейвИнстанс и потом его ресторит. Я другой анон, тоже прихуел от такого поворота.
#11 #596117
>>596089
http://stackoverflow.com/questions/9727173/support-fragmentpageradapter-holds-reference-to-old-fragments
Тут хорошо пояснили, они все же уничтожаются, но потом сами восстанавливаются.
#12 #596139
>>596089
У меня таблейаут, который с вьюпеджером связанный. И когда я на какой-то вкладке, не соседние с ней доходят до ondestroyview, но не до ondestroy. Что я делаю не так?
#13 #596158
Как обрабатывать двойное касание и масштабировать тем самым канву? Есть ли у кого-нибудь примеры?
#14 #596165
>>596158
Отбой
#15 #596252
>>596042
1. HashMap<имя пичкчи, пикча> вместо array list'a
2. Я смотрю у тебя оперативки дохуя делать массив битмапов.
#16 #596395
>>596036 (OP)

> Радуемся анонсу второй версии андроид студии, пускаем слюни на новый градл. Сборка в несколько секунд теперь реальность.


Ого, это правда?
#17 #596454
Кто-нибудь пилит на React Native?
#18 #596483
>>596089
>>596117
Так как мне сделать это всё нормально? Ресторить из бандла карту очень ресурсозатратно.
>>596139 >>596041 -кун
#19 #596485
Ананасы, слоупок в треде, рассчитываю на ваш совет. технарь, но в проганье не очень умею (могу на джаве написать что-то несложное). Кризис, хуе-мое, понял, что нужно владеть чем-то полезным. КОроче, хочу пойти на курсы (пока остановился на МГУ, МТИ+мб возтму на курсы вышки). Так вот, это норм идея? Я понимаю, что лучше самому, но ограничен по времени из-за работы +могу отдать тысяч 20 на курсы.
#20 #596553
>>596483
Есть мнение, что если использовать FragmentPagerAdapter, то локальные переменные фрагмента сохранятся при перелистывании. Вот из них и восстанавливай в onCreateView всё, что надо.
#21 #596555
>>596485
Норм, бывший одногруппник походил так в своё время, потом сразу же на работу устроился, вроде бы даже в ту же фирму, что и курсы проводила, если я правильно понял.
14 Кб, 362x399
6 Кб, 414x129
#22 #596936
Всем супчика.
Почему данная конструкция принимает одно и то же сообщение по 2 раза? Pic1
Отправляю этим методом из BroadCastReceiver. Pic2
#23 #597084
Как называются апликухи которые вырезают рекламу и ненужные перишены или хотя бы детектят их?
Хочу свое на диплом сделать.
Алсо, в тред призывается анон с той же идеей который был в прошлом треде.
#24 #597308
Господа,а кто монетизировал свои собственные приложения?Как успехи?
#25 #597311
>>597308
Видел вчера одного козаха, говорить по 200$ в день получает за игрушку и уже успел купить квартиру и знаете что? Я ему верю.
157 Кб, 800x558
#26 #597391
Мне нужно расставить на карте залитые окружности.
На какой стул сесть?
1. Рисовать окружности как circle overlay.
Возможно ли потом добавить popup окошко с сообщением, которое открывается как при клике по маркеру на карте к объекту overlay?
2. Или сразу забить болт и поменять иконку маркера на сгенерированный bitmap в виде залитой окружности?
#27 #597526
>>597311
Эти истории в стиле флепи бердс.
Такое бывает но крайне редко.
Да еще и 200 баксов перебор.
#28 #597600
В переопределенном onTouchEvent, оказался доступен какой-то геттер getScaleX(); Как узнать чей он? Скалирование чего он вернёт? вьюхи/канвы? Пистос просто.
getX и getRawX чем отличаются? В каких ситуациях они применительны?
#29 #597608
>>597600
Наведи на него курсором и нажми Ctrl+B (если в студии): откроется соурс код и ты сможешь посмотреть, из какого класса он вызывается. Вроде бы, это метод для View.
#30 #597614
>>597608
Верно. Спасибо.
#31 #597622
До сих пор на студии 1.3.1 сижу, если обновлюсь до 2.0 заимею ли я какие-то проблемы с проектом? Придётся ли ебаться в последствии с настройкой каких-нибудь маняфестов?
#32 #597627
>>597600
По поводу getRawX и getX:
getRawX пишут, что вернёт коордианты касания на экране.
getX на вьюхе.

getRawX ведь никогда не вернёт отрицательное значение коордианты в отличие от getX?
35 Кб, 1212x818
#33 #597651
Сразу ещё вопрос по обработке "щипка", без гастера.
Каким образом получить первые координаты касания пальцев(1), так чтобы потом во время их скольжения(2) не переопределить самым последним значением их положения на экране(3)?
#34 #597683
Анон, проснись!
#35 #597706
>>596936
Проверь для начала, что оно не ОТСЫЛАЕТСЯ два раза.
#36 #597707
>>597706>>597706
Cпасибо, помогло
#37 #597729
>>597651
Бляяя, так канва тоже всегда положительные лишь координаты имеет?! Ну йопта!
#38 #597733
Ананасы, ща смотрю группы разрешений для андройда и не пойму
http://developer.android.com/intl/ru/reference/android/Manifest.permission_group.html
Вот смотрите, там есть группа CAMERA и группа SENSORS с аналогичным описанием. Кто-нить может объяснить, чем одна группа отличается от другой?
#40 #597736
>>597734
Спасибо!
Они там в гугле описАлись, что ль, что там одинаковые описания?
Алсо, получается, все разрешения, которые есть (а их там больше 100) можно раскидать по этим категориям? Или не все?
http://developer.android.com/intl/ru/reference/android/Manifest.permission.html
#41 #597737
>>597734
И где вообще категория разрешений, таких, как доступ в Wi-fi?
44 Кб, 636x460
47 Кб, 633x462
#42 #597740
>>597737
Просто, если зайти в гуглоплей и посмотреть Пермишшны у приложений там, то будут и пункты, вообще не описанные в документации
#43 #597754
Господа, дайте тестовое задание на джуна, при выполнении которого почти любой работодатель скажет: "ебать, берем его срочно, пока он в другую контору не пошел". А то ничего не понятно, одни говорят, что всякие хэлло-ворлды уже норм, а другие говорят, что надо десяток хороших приложений в плей маркете, что бы тебя хотя бы бы на собеседование позвали.
#44 #597756
>>597754
Зависит от конторы же
91 Кб, 600x600
#45 #597759
ЗУБОДРОБИТЕЛЬНЫЙ ВОПРОС.

Как скалировать канву, чтобы точка между пальцев так и оставалась между ними? Ебучий андруид смещает её каждый раз в угол как я понял.
В интернетах примеры с использование готовых методов каких-нибудь битмэпов, всё не то.
Это же, блин, такая нужная и часто используемая вещь почему нету какого-нибудь элегантного решения? 4й час ебусь уже.
94 Кб, 600x600
#46 #597760
>>597759
public final void scale (float sx, float sy, float px, float py)
#47 #597807
>>596395
Если собираешь не первый раз и изменил только xml, то у меня на и5 4-7 секунд.
Первый раз так и остался ультрадолгим, а если внес изменения в код, то 20-30 сек.
#48 #598058
>>597740
>>597737
бамп вопросу
#49 #598174
>>598058
Чувак, почему мы за тебя должны думать? >>597734 перечитай внимательно контент по ссылке, там написано, почему эти пермишшены не сгруппированы.
Оффтоп: ты либо студент, либо без вышки. Потому что ты, похоже, учиться и искать информацию не умеешь.
318 Кб, 700x970
#50 #598565
Котаны, как мне определить сколько пикселей соответствует одному метру в проекции меркатора?
#51 #598607
Знающие аноны, дошел в джаве до мультипоточности, все предыдущее более-менее понял, есть ли смысл вкатывать в андроид? В последнее время как-то стала удручать идея, что ее, офис, хуе-мое.
26 Кб, 500x500
#52 #598750
есть ли какой-нибудь гайд русский/английский по тому, как проложить на google maps маршрут между двух точек?
#53 #598756
>>598750
1. Делаешь запрос в яндекс или гугл с координатами или адресами начала и конца
2. Получаешь жсон со списком координат
3. Парсишь координаты, раскладываешь их в массив
4. Строишь по этим точкам PolyLine на своей карте.
#54 #599000
Сап. В гугл плее банят приложения, где встречается фото грудей в лифчиках? И если запилить стороннюю систему оплаты, приложение не забанят?
#55 #599011
С крестами можно вкатиться? Что почитать с чего начать?
#56 #599030
>>599011
Шапки для кого пишут?
#57 #599032
>>599030
Там джава и ни одного курса. Только доки и ссылки не понятно куда. Как будто кто-то не знает про стэковерлоу и хабр.
#58 #599081
>>599032

>3) Есть два вполне вменяемых русскоязычных ресурса. Для старта подходят очень даже.


http://startandroid.ru/
и
http://developer.alexanderklimov.ru/android/
Второй еще и условно бесплатный. Главный плюс - это русский язык, простые гайдики, но переводы классов иногда заставляют фейспалмить.
#59 #599091
>>599081
Хочу купить платные курсы по второй ссылке. Какие камни?
#60 #599117
>>599081
На C++ под андроид пишут? Всякие Qt это позволяют? Где курсы?
#61 #599242
>>599091
не покупал, конечно, но мне кажется камней нету. А так же можно инфу, которая там содержится найти в свободном доступе в инете
#62 #599247
>>599242
Хочется, чтоб все было в одном месте и максимально продуктивно, как бы это не было смешно.
#63 #599286
Дайте какое-нибудь тестовое задание на джуна. А то уже надоело литературу штудировать и задачки решать. Самому в голову ничего не приходит.
#65 #599311
>>599302

О, спасибо анон, начну делать. Я ньюфаг, но мне кажется это больше подходит для стажера, особо сложного ничего нет. Или это таки достойное задание для джуна?
#66 #599316
>>599311
Это три треда назад вкидывал анон, как задачу на джуна.
Кстати, если интересно, то я сейчас трудоустраиваюсь на андроидоджуна, самые популярные вопросы про конкретно андроид: лайфцикл активити, основные компоненты приложения и подобное говно энтрилевела. По чисто джаве любят спросить коллекции и конкарренси ещё. С другой стороны, эту муть я знал ещё год назад, но до сих пор так и не трудоустроился. На одном из собеседований мне сказали, что следует иметь задачи в гуглплее.
#67 #599329
>>599316

А почему до сих пор не устроился?
И не совсем понял, что значит "иметь задачи в гуглплее"? В смысле иметь гуглплей аккаунт и там выложенные свои приложения? И что туда новичку выкладывать, ну я допустим могу заплатить за аккаунт и выложить туда какой-нибудь погодный апп или змейку, но их же тысячи таких. Не лучше ли на гитхаб это выложить и показать? Там хоть код можно посмотреть.
#68 #599344
>>599329

>А почему до сих пор не устроился?


Хз, я в принципе, не совсем гладко все собеседования проходил. То на конкаренси запорюсь (я его и не знаю, сейчас прохожу на курсере курс по андроид конкарренси), то забуду, в чём выражается полиморфизм (ну это вообще сукпздц, я его, конечно, знаю и применяю, но вот суть тогда за ненадобностью забыл). Гитхаб есть, но смотрели его только на одном собеседовании из 4, похоже, лол. На остальных: "а у вас есть приложения в гуглплей? нет? ну блин". Вот последний месяц потихоньку делаю приложение для гуглплей, шоб поддержка с 9 версии, да с материал дизайном, да и ORM ещё запилить вместо ванильного провайдера, и ещё чтоб по MVP (кстати, по паттернам тоже часто спрашивают, в рот ебалъ, это, как по мне, просто пиздаболия сплошная вместо реальных знаний, откуда я могу иметь нормальные представления об MVP, если я на нём полтора проекта сделал и даже от MVC не отличу?).
Кстати, ещё спрашивают иногда про твой опыт в системах багтрекинга, типа редмайн или jira. Я всегда на таких вопросах делал грустное лицо и отвечал: "не знаком, не состоял, нет, нет, прочерк".
А откуда у тебя инфа про то, что за аккаунт гуглплей надо платить вообще?
#69 #599361
>>599344
25$ стоит, джун.
#70 #599367
>>599361
ну охуеть теперь, платить деньги за то, чтобы тупо выложить апшку без надежды, что её хоть кто-то скачает. Вот ведь пидоры, однако, выбора нет.
#71 #599407
>>599344

Google Play Developer account will cost you $25 (one time).

>кстати, по паттернам тоже часто спрашивают


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

>сейчас прохожу на курсере курс по андроид конкарренси


https://www.coursera.org/course/posaconcurrency
Это оно? Тоже интересно пройти.

Кстати, а можешь свой гитхаб дать, посмотрю насколько я еще готов/не готов, да и просто интересно.
#72 #599410
>>599407
Ага, он самый. Я сейчас три лекции посмотрел, в первой просто общая инфа по джавапотокам, во второй про джавасемафоры и андроидопроект небольшой, в котором нужно немного кода дописать, чтобы он многопоточно заработал, в третьей уже рассказывается про андроид-параллелизм.

>Кстати, а можешь свой гитхаб дать, посмотрю насколько я еще готов/не готов, да и просто интересно.


Извини, но во-первых дианон, а во-вторых всё равно ты не можешь по нему судить о своей готовности, ведь всё-таки я даже не джун.
#73 #599481
>>597622
Недавно предложило обновить до 1.5 — вообще ничего не правил, правда теперь public в интерфейсах ("public void methodName()", пишу по привычке) подчёркивает как ненужные, но на это похуй.
#74 #599485
>>596483
А setRetainInstance(true) проблему не решает?
#75 #599511
>>599117
Таким занимаются только самые извращенцы. Из тех же, что и на замарине пишут.
>>599316

> что следует иметь задачи в гуглплее.


Как пруфануть то, если приложения не под моим акком выкладываются, а под акком заказчика?
#76 #599593
На днях видел в каком-то треде про мобильный гейм-дев. Помню что сказали, мол по нему много вакансий, но это ад. И уже не первый раз такое слышал. Но нихуя не сказали почему. Ну ладно если НЕ мобильная разработка игр, там пугают жутким матаном. Но в мобильной же особого матана нет. Как-то смотрел гайд по написанию клона Flappy Bird c использованием libGDX. Ну всякие векторы, ускорения и радианы немножко пугают, но не так что бы совсем. Тем более, насколько я понял, в этой библиотеке(думаю и в аналогах) это все упрощенно и должно хватить повторения школьной программы для понимания.
Так что в в разработке ведро-игр такого ужасного?
#77 #599598
>>599593
1) Геймдев практически всегда - это сплошные овертаймы за смешную зарплату.
2) Если в серьезном геймдеве хотя бы есть интересные задачи, то клепание мобильного треша - это дно уровня веб-параши на ЦМС.
#78 #599617
>>599598
За мобильный треш платят много.
#79 #599630
>>599598
А где ещё в программировании есть интересные задачи? Интересует что-то хорошо оплачиваемое и востребованное. Я вот думаю, сейчас мобильные технологии быстро развиваются, и если ты хорош в андроида или иосе, то найдёшь себе интересную наукоемкую задачу например, написать байтоебский фреймворк, чтобы по блютузу с мобильника управлять кофеваркой
#80 #599642
>>599617
Это только за iOS платят, потому что не хватает специалистов. На Андроиде денег нет.
#81 #599702
>>599642

>не хватает специалистов


С чего бы? Так сложно переключиться на другую технологию? Или это в связи с тем, что нужно покупать лицензию?
16 Кб, 361x526
#82 #599711
Анон, распиши как добавить ListView в ViewPage.
#83 #599743
>>599711
попробуй лист в фрагмент, а фрагмент - в пэйджер
#84 #599898
>>599711
Этот >>599743 правильно сказал.
#85 #599899
>>599642
Ой как же заебало это слышать. На айосе зарплаты больше и тд. Да не пиздите блять, алсо, всегда можно перекатится, принципы мобильных платформ схожи.
#86 #599900
>>599367
Это защита своего рода. Та и аккаунт вечный если не ошибаюсь.
мимо-андроидовщик-без-акка
#87 #599903
>>599900
Да, вечный.
мимо владелец аккаунта
#88 #599908
А че на с++ низя писать?
#89 #599909
>>599316
Лайфцикл активити это ладно, меня начали ебать по лайфциклу фрагмента, и я внезапно обосрался на всяких онкриейтвью, онактивитикриейтед, так как не помню очередность. Собеседущий сказал что онактивитикриейтед редко используется, но я задвинул что от задачи зависит, иногда же нужно активити дергать и тд.
Еще по сервисам прошлись, спрашивали про стикисервисы, я с ними не работал, и признаться вообще забыл что такие есть, но с горем пополам вытянули из меня ответ.
Ну а еще немного по флагам интента, по бекстеку еще немного знал, а там вообще пиздец.
Это то на чем обосрался.
И тем не менее прошел, правда не пошел туда, да и зп просил чисто на джуна.
#90 #599910
>>599908
Можно конечно, пописай
#91 #600018
>>599743
спасибо буду пробовать
#92 #600027
Мне такое тестовое задание дали для джуна
Что должно делать приложение:

- проложить маршрут с текущего местоположения до определенной точки, говорить не буду, что не палить
- отобразить текущие координаты
- отобразить текущий ближайший адрес
- отобразить текущий внешний IP-адрес устройства
- автоматически заполнить форму в Google Forms
https://docs.google.com/forms/d/1JUUBRK3m9R8rFA3Nu7MpbM0zKR2lG1-TtTVyEnpmvys/viewform?usp=send_form
#93 #600033
>>600027
Выглядит не сложно, правда в с адресом ересь походу. Ну а с автоматическим заполнением походу никто без гугла не справится.
#94 #600120
>>600027
1. Каким образом первый пункт делать? Тут есть 2 варианта: через directions api полуяиьь точки и наебошить polyline на карте. Или вызвать гуглокарты с правильными параметрами и получть тоже самое.
#95 #600122
>>600120
Хотя судя по второму пункту, то делать надо через directions api.
#96 #600133
>>599642
Да там нехватало спецов в 2012. Айос выгоднее будет для инди разработки. А спецов не хватает на винфон. Но там спрос сам по себе существенно меньше, за пределами дсов можно оказаться ненужным
#97 #600135
>>599909
Зп в итоге? Город?
#98 #600142
>>600120
Я делал через GoogleApiClient и через LocationRequest первый пункт.
Второй пункт и беру LatLng через первый метод и рисую линию, как сказал >>598756
Дается трудно, каждый шаг гуглю, потому что еще с картами не работал и это моя первая встреча с ними. Если хочешь могу код скинуть.
#99 #600245
>>600135
Ушел на 800, а там просил 500.
#100 #600247
>>600245
Столица.
#101 #600253
>>599316

>лайфсайкл активити


ну в общем-то на самом деле правильная штука — оно может быть всего одно в приложении (потому что создавать активити — это одна из самых дорогих задач в андроиде), но там в этом активити может быть дохуя кода — сам долго сидел, когда надо было сделать так, чтобы если андроид убил приложение из-за нехватки памяти, то оно открывалось не на том экране, где его убили, а на начальном

>основные компоненты приложения


это про вьюшки что ли? ну 95% приложений на ресайклервью/листвью, если старые, построены.

Проблема тестов в том, что там спрашивается иногда всякое дерьмо типа "final class", которое просто не используется.
#102 #600258
>>600253

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


это таски что ли? а я про онкриэйт-онстарт-онрезьюм-онпауз-онстоп-ондестрой

>это про вьюшки что ли?


активити-сервис-провайдер-ресивер
#103 #600266
>>600258
нет, это именно про онкриейт и так далее.
Сценарий: есть девайс на четвертом андроиде с 512 мегабайтами оперативки. Сначала открываешь своё приложение (делал по схеме "одно активити - несколько фрагментов"), залезаешь на экран подальше, потом сворачиваешься в браузер и там открываешь пару-тройку жирных вкладок. По возвращении андроид попытается вернуть тот экран, который был, а мне нужно было сделать так, чтобы вернул изначальный (то есть ещё очистить бэкстэк). onDestroy и onTrimMemory в этом случае не отрабатывали, там вообще ничего не сигнализировало о том, что приложение выгружено из памяти, довольно интересная задача.
#104 #600272
>>600253

> Проблема тестов в том, что там спрашивается иногда всякое дерьмо типа "final class", которое просто не используется.


Как это не используется? Или я не очень тебя понимаю.
#105 #600289
>>600247
Чего? Если украины/беларуси - норм.
Алсо, цифры по какому курсу?
#106 #600291
>>600027
Нормас, если с гуглом.
#107 #600299
>>600272
Я вот ни разу не сталкивался с ситуацией, когда был бы нужен запрет наследоваться от класса.
final object ещё хотя бы для синхронизации нужен, а вот final class — ни разу не пригождался.
#108 #600321
>>600266
Если бы оно правда выгружалось из памяти, то оно бы и возвращало изначальный, не7 Если процесс форсированно убивается, то как андроид сохранит инфу о состоянии активити? Не понял затупа, короче.
#109 #600328
>>600321
Я не разбирал глубже как это работает, но приложение действительно даже спустя миллион запущенных будет пытаться открываться с того экрана, на котором ты его свернул.
#110 #600331
>>600328
Ну я хз, вообще никогда не видел, чтобы приложение убивалось системой из-за нехватки места, но ведь тут по логике надо смотреть. Если приложение стартует не со стартового экрана -> у системы осталось состояние о нём -> процесс приложения не был убит -> поведение приложения не будет отличаться от того, как если бы ты его свернул или развернул (и похуй на жирные вкладки), а тебе, по сути, всего лишь в onStop второй активити нужно finish() вызвать и ещё таскаффинити в манифесте правильный поставить, чтобы первая активити тоже пересоздавалась.
#111 #600343
>>600289
А для рашки не норм чтоль? Да не пизди.
Без курса, мне платят в у.е.
#112 #600345
>>600299
Стринг именно так сделан, то что ты это не юзал, не значит что оно не используется, азазазаза
#113 #600347
>>600331

>вообще никогда не видел


С кем я тут сижу, вы наркоманы блять? Скачай апликуху для чистки памяти, и почисти юи память, она выгрузит все апликухи, вот тебе и эмуляция неххватки.
#114 #600349
>>600345
И Bitmap андроидовский тоже. Я могу привести примеры, где оно используется, но я не об этом говорил изначально.
#115 #600350
>>600142
хули там трудного тебе все
>>598750
братишка уже расписал ебный рот
#116 #600354
>>600347
Ну скачал, очистил, и хуле? Запустилась прога заново, а не с какого-то сохранённого места, как я и писал. Наркотики не употребляю, кстати.
#117 #600356
>>600345
А зачем он так сделал? Я читал, что это связано с его иммутабельностью, но так и не понял этой тонкой нити рассуждений.
#118 #600357
>>600349
Так что нам сделать? Удалить файнал класс нахуй потому что ты его не используешь? Ты про варарги слышал например? Тоже ненужны?
Хватит оправдываться. Вопрос с файнал классом - збс и нужно его знать.
Говно задачи когда у тебя задротская херь типа какими символами можно называть а какими нет. Подобный вздроч вообще не имеет право на жизнь.
#119 #600361
>>600354
Она должна запускаться с активити на которой была скрыта, не пизди.

ОнСейвАктивитиСтате нужно для сохранения состояния теперешнего. Если ты там вывел статик текст, то само собой ненужно, а если хуярил какую-то логику с выбором из листа например, то нужно.
#120 #600365
>>600356

>что это связано с его иммутабельностью


Собственно файнал класс - делает класс иммутабельным.
А так я читал что для защиты что-то там. На это уже вроде как всем похуй
#121 #600367
>>600361
Не пизжу, чувак. Запустил прогу, перешёл на другую активити, свернул, рубанул очисткой. Открываю заново - с нового листа. Проверил без очистки - остаётся на том же месте, где и было. У нас разные андроиды, похоже.
#122 #600372
>>600253

>ну в общем-то на самом деле правильная штука — оно может быть всего одно в приложении (потому что создавать активити — это одна из самых дорогих задач в андроиде)


Хуйня кстати, на фрагментах работать такое говно что страшно, постоянно делать проверки на онатач, постоянно хуярить эти чайлд фрагменты и тд.
В основном вижу как делают одно активити для основного функционала, т.е. с дроверлеяутом и тд. А всякие сайд переходы на других активити. С фрагментами везде можно дико обосраться. С архитектурой.
#123 #600373
>>600367
Может там одно и тоже активити с разными фрагментами?
В другом случае выкидывай своего китайца.
#124 #600374
>>600373
Две активити, есть свой сурс код. Lenovo P70, 4.4 киткат, китаец, но благородный и с усами. Алсо, есть инфа о том, где сохраняется инфа о состоянии приложения в момент убийства процесса, как ты пытаешься доказать?
#125 #600405
>>600374
Хотел тут описать простыню что ты долбоеб и не полез в документацию, вставить ссылки и тд.
Но поверил тебе на слово и полез гулить.
В результате наткнулся на интересную штуку, если я правильно понял то что нашел, то андроид не умеет убивать активити сам, он убивает весь процесс. И, следовательно, все активити в нем. Если же взять во внимание твои слова, то становится логичным что андроид не запоминает на каком активити остановилась прога. Но если посмотреть на моем телефоне как у меня очищается бекстек апликухи при пересоздании активити, т.е. только последнюю активити он и запоминает и показывает ее при входе в апликуху.
Короче говоря вопрос не такой легкий как казалось, буду копать глубже но уже завтра.
#126 #600409
>>600372
По идее, надо стремиться к уровню телеграма, ящитаю — там чуть ли не все вьюшки — кастомные, со своим onDraw и onMeasure + своя реализация фрагментов (и тоже "одно активити — несколько фрагментов", по сути)
#128 #600411
>>600409
Телеграм довольно простая реализация на самом деле. Не везде можно обойтись одним активити мне кажется.

>там чуть ли не все вьюшки — кастомные, со своим onDraw и onMeasure + своя реализация фрагментов


Пруф. Особенно про фрагменты.
#129 #600413
>>600410
Блять, я не понимаю, если оно действительно не запоминает активити на котором было при чистке процесса, то что сука происходит когда у меня иногда бекстек на старых апликухах чистится?
#130 #600415
>>600411
Я участвовал в их конкурсах и читал исходники официального клиента (плюс работы с самого первого конкурса), так что знаю что говорю.
Вот, например, экран настроек и его базовый класс:
https://github.com/DrKLO/Telegram/blob/496c336d5f80947ebce64087cc9740b3d28ee99d/TMessagesProj/src/main/java/org/telegram/ui/ActionBar/BaseFragment.java
https://github.com/DrKLO/Telegram/blob/512e404db7b917aaf8084541843f641938f3b12c/TMessagesProj/src/main/java/org/telegram/ui/SettingsActivity.java
Приглядишься — увидишь, что и экшн бар тоже свой.
Внимательно глянь на папку /telegram/ui и увидишь ещё больше пруфов.
#131 #600425
>>600415
Та я верю, хотел посмотреть на реализации и тд. Но телеграм рабоатет ультра быстро конечно.
Но в чем профит юзать свои фрагменты?
#132 #600426
>>600415
Алсо, это реальная апликуха которая в сторах?
Если да то спасибо, буду на делать также.
#133 #600429
>>600425
Очень просто: больше контроля (пример: закрытие целого ЭКРАНА свайпом влево — я вот хз, можно ли это простыми фрагментами сделать, но представляю, как это сделать, если накладывать вьюшки одну за другой) + возможно, так приложение меньше весит
возможно, ещё какие-то причины, можно ещё лекцию Степана Коршакова про оптимизацию Telegram S погуглить — про вьюшки там тоже говорится.
#134 #600431
>>600426
Да, это исходник гуглоплейной версии и с неё же форкаются клиенты типа ZapZap, Plus Messenger и т.д.
#135 #600432
>>600429
Спасибо посмотрю, можно сделать кстати, но нужно вешать вьюху с листенером этого свапа, но они видимо засунули это в основу.
#136 #600456
>>600431
Но сейчас версия не коршакова на плеймаркетах?
#137 #600474
>>600456
Он не работает в телеграме уже давно (пилит свой Slack с шифрованием и локально устанавливаемыми серверами), официальный клиент - от победителя первого конкурса Николая Кудашова.
#138 #600475
>>600474
Я понял, спасибо.
Вообще чувствуешь себя туповатым когда пытаешься вникнуть в такие тонкости.
#139 #600493
>>600372
Поддвачну. Фрагменты стоит юзать онли там, где без них не обойтись. Другое дело, что гугель зачем-то подталкивает разрабов к повсеместному юзингу фрагментов, вводя материалдесигн с его новнмодными навигейшн дроверами.
#140 #600494
>>600425
По сути, у него фрагмент - это некий фасад для удобного управления кучкой вьюх на экране и замещения лэйаутов.
Профиты очевидны: нет анальных привязок к циклу стандартного фрагмента, нет лишней ебли с бэкстеком и ретейном.
#141 #600495
>>600474
Вот интересно, сколько сейчас этот пан кошаков получает зп? Учитывая, что от впараши он на "старте карьеры" получил лям
92 Кб, 659x659
#142 #600877
>>596250
Поясни, что не так в массиве битмэпов? Разве размер его не устанавливается при создании в соответствии с размерами пикчи в него конвертирующейся?
#143 #601010
>>600877
Битмапы это картинки по сути, перекодированные.
А теперь представь сколько занимает памяти такой массив с 10 картинками например. Если тебе покажется что мало, то вспомни сколько будет занимать массив с 10 объектами обычными.

>>600495
Я не думаю что у него там стабильная зп в такую суму прилетала. Алсо, была мелкая конкуренция, вот и результат, та и чувак видно старался как черт.
#144 #601058
Что на дипломную взять? Думал может распознавание образов, но что-то боюсь что обосрусь от количества инфы и сложности работы алгоритмов.
Думал брать оптимизацию работы и рендеринга в ведроиде, но нинаучно.
#145 #601200
>>601010
Вы хотите сказать, что картинка размером 60 на 60 это много для современных устройств?
#146 #601268
Чому при скалировании канвы, нарисованная сетка(с помощью линий) средствами битмэп, НЕКОТОРЫЕ ИЗ НИХ ПРОПАДАЮТ. Надо какие-то параметры рендеринга настроить наверное о которых я не знаю?
#147 #601332
>>601268
filter bitmap
#148 #601357
>>601200
У тебя помимо битмапов куча говна в оперативке висит на процессе, дают тебе кажется 60 метров, но тут хуй знает конечно.
#149 #601362
>>601357
Да я подумал и решил, что в правду это ДНО так делать как сделал я. В общем спасибо, перепиливаю.
#150 #601435
>>601357

> дают тебе кажется 60 метров


Ага, дают. 12 мб лимита на бомжефонах не хочешь?
#151 #601452
>>601435
Лол, что это за анальные ограничения у вас? Нахрена тогда во все эти лопаты пихают 4 ядра 4 гига? Чтобы ОС не лагала.
#152 #601468
>>601435

> 12 мб лимита на бомжефонах не хочешь?


Щито? Это где такое? В 2016-то году?
>>601362
Нихуя это не дно. Зависит от задачи, конечно, но хранить массив битмапов допустимо.
#153 #601483
>>601435
Не видел такого, у меня клава стандартная 35 жрет.

>>601468

>Зависит от задачи


Понятно что зависит, но это не нормально. А допустимо практически все.
#154 #601485
>>601268
Скалирцешь без фильтрации? Получаешь алиайзинг.
#155 #601493
Знаю JavaSE. Сколько нужно времени, чтобы с нуля до фриланса дойти?
#156 #601572
Трям, возвращение дизайнобляди из восьмого треда.
Не могли бы вы пояснить за отличия CardView от ListView, а конкретнее - за преимущества первого перед вторым
Факт того что можно пихать имагу в дефолтный cv за преимущество не считать ибо всегда в любом проекте приходилось кастомить и только имагой с одним textview дело не обходилось
#157 #601574
>>601493
Недели четыре - пять неустанной дрочки тестовых проектов. Найди где-нибудь нормальные тз и попытайся выполнить один в один первый попавшийся ( что бы там ни было ). Через 3-4 выполненных идеально проекта будешь знать достаточно.
Желательно конечно чтобы они были разноплановыми
#158 #601575
>>601435
если я правильно понял, то решение - поставить в манифесте позволение grow_heap large
(или что-то в этом роде )
#159 #601578
>>601058
вейвлет анализ и распознавание речи на основание базы, состоящей из большого количества спектров под каждый звук
#160 #601580
>>601200
если это три блядских полоски в тулбаре - то да. Мне iosники как-то раз скинули имаги блять, ни одна не сжата, каждая мегов по 10. Grow heap полетел блять... Так к чему я это, эти суки еще и три полоски сраные эти скинули чет порядка того что ты сказал, они блять как два тулбара размером были на планшете
#161 #601583
>>601332>>601485
Ага, ну вот не знал
#162 #601584
>>601580
Охует, что там по 10мб может быть?
#163 #601587
>>601584
Я ебу ?
Зато я понял, что аппликуха может жрать 220мб :D
#164 #601621
>>601587
Я думал у них там растровое всё, мде
sage #165 #601634
>>601574
Кстати, где такое искать?
мимокрокодил
#166 #601680
>>601634
Да хоть на кикстартере среди приложений, детальное тз можешь сам накатать, а идею спиздить.
Вариант второй - по описанию проекта на гите, по скринам в дриббле, да блять, дохуя ресурсов то. Тот же хабр ( находишь реализацию на другом языке и прикинув, что требуется ебашишь )
#167 #601700
из фрагмента не могу получить доступ к активити, а именно из onCreateView, после уже в других классах фрагмента всё получается. В примерах у людей всё работает. Это как-то от версии API зависит или что?
#168 #601713
>>601700
Собственно код:
public class MainActivity extends Activity {
@Override
public void onCreate( Bundle savedInstanceState ) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

public class myFragment extends Fragment {
(ImageButton) getActivity().findViewById(R.id.imageButtonMove)).setAlpha(0.5f);
}
#169 #601716
>>601713
fix:
public class myFragment extends Fragment {
@Override
public View onCreateView( LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState ) {
(ImageButton) getActivity().findViewById(R.id.imageButtonMove)).setAlpha(0.5f);
}}
16 Кб, 256x257
#170 #601742
Кто-нибудь делал свой TileProvider для google maps api v2?
#171 #601786
#172 #601830
>>601713
Ты фрагмент-то инициализировал? В чём проблема, NPE на getActivity()? А ты уверен, что на него, а не, например, на findViewById?
%кстати, скобку при копипасте возле каста в ImageButton всё равно проебал%
#173 #601831
>>601830
а я проебался с разметкой
#174 #601852
>>601830

>Ты фрагмент-то инициализировал?


Бляха, а менеджера разве недостаточно?
#175 #601868
>>601852
Ну я просто не вижу строчки типа getFragmentManager().beginTransaction().add(...).commit() в копипасте
#176 #601869
>>596036 (OP)
Хочу вкатиться в ондроед-разработку с нуля, кодить не умею. Какие языки учить?
#177 #601874
>>601869
жаву
#178 #601877
>>601869
Java, C
#179 #601878
>>601874
java или js? И с чего начать посоветуешь, какими книгами обмазываться?
#180 #601881
>>601869
Английский.
Потом можно джаву.
#181 #601892
>>601878
Джаву епты! Джаву нахуй!
Книга: философия java.
7 Кб, 769x106
#183 #601908
>>601905
И из фрагмента конечно же попытка достучаться
#184 #601912
Аноны, делаю плеер со списком воспроизведения, при нажатии на любой элемент, у него отображается сикбар, который динамически обновляется, и соответствует воспроизведению. Сам плеер реализован в сервисе. Есть 2 стула для реализации:
1) Захуярить все в адаптере, но тогда адаптер будет лезть в сервис, и вьюхолдер тоже должен будет лезть в сервис (нужно обновлять свой ползунок при воспроизведении)
2) Сделать адаптер онли для отображения элементов, а логику, связанную с плеером, вынести в onscroll.
Какой из велосипедов лучше, с точки зрения архитектуры?
#185 #601914
>>601912
Алсо, склоняюсь таки ко второму, но многие хуярят в адаптер кучу логики, связанной с обновлением
#186 #601917
>>601914
Я предпочитаю создавать отдельный класс-контроллер, и тебе советую.
#187 #601928
>>601912
Сервис шлет Broadcast. Через LocalBroadcastManager.
Ловим его в активити/фрагменте со списком.
Вызываем соответствующий метод адаптера для обновления ползунка.
#188 #601936
>>601908
Ещё раз: у тебя точно getActivity() возвращает null, а не findViewById()?
32 Кб, 638x145
#189 #601962
21 Кб, 400x400
sage #190 #601965
>>601881
Ясно.
#191 #601976
>>601468

> Щито? Это где такое? В 2016-то году?


Берешь любой телефон / планшет с 256мб оперативки и получаешь.
Я таких уже два юзал, нокиавский андроидофон и какой то ебанный эксплей планшет за 3к. На обоих 12 мб и больше не выдавало.
#192 #601983
>>601928
Дык это всё понятно. Суть в том, что

>Вызываем соответствующий метод адаптера для обновления ползунка.


Ползунок фактически, есть у каждой вьюхи, а обновлять его можно хэндлером, таймером и пр. Соответственно, там тоже будет велосипед со скроллами, ибо нужно будет отслеживать момент, когда вьюха уходит с экрана, и отключать хэндлер. По идее, выход - держать хэндлер во вьюхолдере, и отключать/включать его при прорисовке. Но тогда и адаптер, и холдер будут иметь ссылки на сервис, который может быть внезапно уничтожен системой, и пересоздан
#193 #601991
>>601976

> Берешь любой телефон / планшет с 256мб оперативки и получаешь.


В 2016 году? Ты как, с нашей планеты?

> На обоих 12 мб и больше не выдавало.


И сейчас они ни одно приложение просто не потянут в таком случае. Сомневаюсь даже, что на них есть что-то старше 2.3.7.
Это просто не серьёзно.
#194 #602018
>>601991

>В 2016 году? Ты как, с нашей планеты?


Это много или мало?
#195 #602082
>>602018
Что? 2016 опрделённо много.
#196 #602087
>>601936
Понятия не имею как это в ошибках посмотреть, но поставив условие для проверки, понял, что возвращает ЧТО-ТО, но не null;
#197 #602088
>>602087

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


В описании исключения пишется, что невозможно вызвать метод или считать/записать поле у null-объекта (название метода/поля прилагается), чего тут не уметь?
#198 #602090
>>602088
В общем что-то, но не нулл
#199 #602260
>>601991
Я свои приложения тестирую на сониэрикссонах 2011 года и стараюсь додрочить до такого состояния, чтобы как минимум скроллинг не тормозил, а ещё лучше — различные анимации.
Там, конечно, не 256 мегабайт, но 512 в 2016 году — это тоже пиздец в плане юзабилити.
46 Кб, 480x800
#200 #602533
Как мне заполучить чекбоксы, ммм? Это RecyclerView, а каждый айтем - CardView.
#201 #602560
>>602533
Обратиться к ним по айди?
#202 #602625
Хочу в приложении сделать анимацию материалдизайновскую, чтобы вьюшки летали и кнопки реагировали, ну вы поняли. Беда в том, что никогда с анимацией не работал, и не знаю, что бы выбрать такого, чтоб и апи низкого уровня поддерживала, и материалу удовлетворяла. Property Animation, View Animation, Transitions Framework, какие-то сторонние либы? Анон, помоги.
#203 #602699
Имеется джва десятка чекбоксов.
Нужно каждый проверять, можно ли как-то обращаться к ним по id не через имя, а например checkbox+1, как бы обращаясь к следующему по порядку? Где-нибудь int'овское значение ID можно самому установить или хотя бы посмотреть?
#204 #602761
>>602699

> джва десятка


Ресуклервью делай. Там будешь модель через вьюхолдер обновлять в чек листенере.
#205 #602763
>>602699
Сделай массив из id руками.
Или закинь их в linearLayout и перебирай.
#206 #602801
>>602761
Не нужен мне ресайкл

>>602763
Я их в xml уже прописал, что делать-то? Спрашиваю можно ли где-то узнать их реальные значения? ведь checkBox666 это лишь строковый идентификатор.
#207 #602809
>>602801
В чем твоя проблема была загуглить android find resource id by name?
Попробуй getResourseId("checkBox1", "id", getPackageName());
#208 #602811
>>602809

> getResourseId


getResources().getIdentifier(...)
#209 #602822
>>602801
Не привязывайся к реальным значениям. Сделай массив из айдишников.
int[] checkboxes = {R.id.checkboxOne, R.id.checkboxTwo, ...}
#210 #602823
>>602822
>>602801
Или сделай массив чекбоксов. И обращайся к нему по смещению.
#211 #602846
>>602811>>602809
Айдишники всегда одни и те же будут при компилировании? Как они выдаются вообще?

>>602823

>массив чекбоксов


Опять же мне придётся каждое имеющееся уже айди_имя копировать из xml.
#212 #602848
Такс, программно изменить пытаюсь состояние чекбокса, но оно не обновляется. ЧЯДН?
#213 #602852
>>602848
Отбой.
#214 #602933
Из Фрагмента вызывается ДиалогФрагмент и я так понял Фрагмент на этот момент не ставится на паузу?
19 Кб, 450x280
#215 #602937
Есть ещё варианты?
#216 #602938
>>602937
У тебя чекбоксы по порядку внутри viewGroup идут, так? Так и обращайся к ним через v.getChildAt(), это быстрее, чем findViewById и никаких идентификаторов не надо.
#217 #602940
>>602938
Я же их не программно создавал, как мне знать идут ли они при построении по порядку?
#218 #602951
>>602940

> идут ли они при построении по порядку?


Это так. Их порядковые номера задаются построением. Иначе бы ты левую хуиту видел на экране.
7 Кб, 208x374
#219 #602953
>>602951
У меня кроме них ещё ведь и другие элементы, между ними в xml по порядку image, например.

Алсо, в Bundle я кидал массив примитивов и удивился, что через него ссылка передалась на этот массив, я-то думал в нём(в Bundle) новый экземпляр создаётся. А что тогда с обычными НЕ массивами примитивов, они по значению передаются или тоже по ссылке? Мне важно знать, чтобы ошибок сейчас не наделать.
#220 #603117
>>602625
Бамп вопросу, какой фреймворк для анимации в андроид сдк сейчас самый мощный и может сделать закос под типаматериал (чтоб вьюхи с акселлерацией из-за угла экрана выезжали, чтоб кнопки по нажатию прогинались и т.д)?
196 Кб, 1440x668
#221 #603127
>>603117
Не знаю, где там Абу спам увидел, смотри пикрилейтед.
Также тебе, скорее всего, не будет лишним изучить ObjectAnimator, который изменяет конкретный параметр (например, прозрачность)
#222 #603129
>>603127
Спасибо. Я понял, что я нихуя не понял. Но ты мне дал направление, куда копать, туда я и полезу.
#223 #603132
Трям, котаны, работал ли кто-то из вас с fb api ? Ели да - скиньте позязя материалы, по которым разбирались в нем
#224 #603451
>>602953
>>602937
Став чекбиксы в лист и будет проще
#225 #603609
>>603451
А я что сделал?
#226 #603623
>>603132
поехавшая хуйня, разбирался по гайдам фэйсбука
#227 #603947
Аноны, помогите советом.
Мне нужно увидеть процесс установки на 5-м Андройде и на 6-м, но в распоряжении только смартфон на 5-м.
Можно как-нить запустить на пекарне эмулятор какой-нибудь с 6-м ведройдом?
Искал в гугле, но толком ничего не нагуглил (только туллза 2010-го года с эмуляцией андройда 2.3)
#228 #603959
>>603609
Tы наплодил чекбоксы в лейоуте. Используй ListView.
#229 #603963
>>603947
В СДК идут эмуляторы всех версий с 2.3.3. x86 довольно шустрые при этом.
#230 #603964
>>603963
Этот сдк в Студию встроен или отдельно качать нужно?
#231 #604007
>>603964
Встроен, но докачать надо.
Tools->SDK Manager, вроде так, для эмулятора на платформе x86 ещё ставишь HAXM Accelerator.
#232 #604009
Аноны, есть один МедиаПлеер...

У него начиная с М есть setPlaybackParams: http://developer.android.com/intl/es/reference/android/media/MediaPlayer.html#setPlaybackParams(android.media.PlaybackParams)

У PlaybackParams есть setSpeed. Так вот, какой диапазон значений для него валиден? Экспериментально - [0, 8) вроде. Но это какая-то хуита, 8 у всех нормальных плееров есть, а 0 - это блять 0. По сути делает паузу, но не ту пауза которая пауза, а просто не играет. Если комбинировать нормальную паузу и скорость 0 видео со звуком начинают рассинхронизироваться.
#233 #604034
Аноны, которые работают, поясните, это реально такой пиздец с зп в мобайле?
http://spb.hh.ru/resume/422c2c880002c0e2e20039ed1f42614d31326d?query=Android

http://spb.hh.ru/resume/9984246500025c6fd00039ed1f4b7664353779?query=Android
(тут ещё и айосник

http://spb.hh.ru/resume/0570d52700029c81960039ed1f436d4e49384e?query=Android

Или это скорее исключение, и ведроидеров с опытом, как и тырпрайзеров, обычно ищут сами?
#234 #604279
>>604034
Он поставилмаленькую ЗП, чтобы его нашло бОльшеечисло людей.
В ДС андроид от 60 т.р., меньше не предлагай даже.
#235 #604280
>>604034
Да хуйня, я с 9 месяцами уже зарабатываю как тот чувак с 2мя годами.
#236 #604444
Смотрю всякие обучающие приложения и семплы от гугла. Там весь код почти во фрагментах. В каждое активити запихнут фрагмент, даже если там совсем немного кода. Мне не совсем понятно почему не отобразить это просто в активити. Это реально никак не сказывается на работоспособности приложения?
#237 #604448
>>604444
Чтобы ты привыкал к использованию фрагментов. Потому как в серьёзных проектах без них ну никак! Да и в чем тога смысл иметь многозадачную ось и вообще в многопотоковом программировании?
#238 #604558
Как у вас тут хорошо в андроиде. Взял жабу, взял андроид студию и пошёл учить и пейсать. А в вебе пока стал джуном по пхп - от тебя ушла девушка, все рабочие места заняты и тебе пишет hr и предлагает зарплату в 10000 рублей для Москвы.
#239 #604564
>>603959
Да не нужен мне лист вью я же писал
#240 #604614
Анон, есть где нибудь видосы с этих курсов http://geekbrains.ru/professions/6
#241 #604632
>>604614
есть
#242 #604658
>>604564
Захуячь бля их в linear layout. Потом пройдись по всем child'ам.
#243 #604663
>>604632
Дай ссылочку пожалуста.
#245 #604693
>>604665
На видосы же.
#246 #604701
>>604693
Зарегайся, оплати курсы.
#247 #604719
>>604034

>Android разработчик


>Опыт работы 16 лет 6 месяцев


oh you
#248 #604736
>>604719
Непосредственно под андроид он почти не писал. Тимлидерствовал. А сейчас вот решил перекатиться в разработку.
#249 #604811
Анон, пилю учебное приложение, подскажите. Суть такова, делаю запрос через асинктаск к moviedb, получаю json в котором 20 популярных фильмов. Мне надо отобразить постеры к ним в gridview. Json содержит путь к постерам которые в формате jpg. Получается мне после первой асинктаски надо запускать другую, которая уже вытащит постеры по путям, которые я получил после выполнения первой асинктаски? Так или я что-то намудрил?
#250 #604860
>>604811

> Так или я что-то намудрил?


Picasso, UniversalImageLoader
#251 #604952
>>604811
Так, но советую пользоваться для загрузки сторонними библиотеками, как указал >>604860-анон. У меня был такой случай, когда асинктаск не мог загрузить картинку по url стандартным потоковым способом (это была пнгшка, а там, как я понял, нужно сначала метаданные картинки получить, а затем уже загружать и надо пердолиться). Пикассо тоже не помог, а вот UniversalImageLoader отлично справился. Запускай загрузку с помощью либы в onPostExecute или после парсинга json'а и будет тебе счастье.
#252 #604977
Ух как меня вчера разорвал FacebookSDK. Делаю сапортный фрагмент для логина, что бы не пихать onActivityResult у Activity обработку и еще где-то пизданутый листенер держать. Результат: саппортный фрагмент не получает onActivityResult, нативному норм, активити норм, где справедливость блять.
#253 #605009
>>604811
Там действительно не всё так просто. Хочешь разобраться сам — читай вот эту статью и правь под свои нужды:
http://developer.android.com/intl/ru/training/displaying-bitmaps/cache-bitmap.html
Или юзай готовые библиотеки, ссылки тебе выше дали.
Ещё такой хинт: в RecyclerView загружать лучше не из onBindViewHolder, а из onItemAttachedToWindow — так пикчи не будут задваиваться.
324 Кб, 382x417
#254 #605071
Как называется аналог блока <div>?
#255 #605107
>>605071
С какой стаи ты решил что такое есть в ведроиде?
#256 #605116
>>605107
Нагуглил что это ViewGroup, но он не прожевывается в моём recyclerview : android.view.InflateException: Binary XML file line #18: Error inflating class android.view.ViewGroup .
#257 #605128
>>605116
Потому что это абстрактный класс. Он не умеет располагать потомков.
#258 #605207
>>596036 (OP)
Аноны, эмулятор SDK входит в вечный бут при запуске, пробовал Андроид 6 и 5 - все равно. Просто анимированная надпись Android и все, как запустить? Помогите.
#259 #605503
>>605207
А 4? Может виртуализация не включена?
#260 #605581
>>604558
Столько бед за одну неделю?
#261 #605594
>>604558

>10000 рублей для Москвы


Все с чего-то начинали
Да и опыт опять же
#262 #605598
>>605503
Как посмотреть какая версия/где глянуть виртуализацию? Совсем зеленый анон.
#263 #605600
>>605598
Ты его не прошивал, надеюсь?
#264 #605602
>>605600
Нет, просто установил android studio, и пробовал потом разные версии в SDK мену. Ставил по инструкции с сайта с котами, путь прописывал в Patch.
#265 #605605
>>605602

>меню

#266 #605609
>>605602
Пиздобол.
Короче, кирпич у тебя. Качай другой
#267 #605618
>>605071
FrameLayout.
#268 #605622
>>605602
блять, да качал с того сайта, завтра попробую другой скачать, почему пиздобол то?
#269 #605623
>>605622
сейчас точно гляну откуда скачал.
с dll.google качал, серьезно.
#270 #605625
>>605623
Если бесконечная загрузка, значит неудачно перепрошился.
Теперь тебе даже новую от гугла не дадут скачать
#271 #605709
>>605625
Но я ведь не перепрошивался, просто стандартную от гугла скачал и запустил.
#272 #605710
>>605709
Попробую сегодня разные версии.
#273 #605727
>>605625

>перепрошился.


А при чём тут прошивка какая-то вообще? Речь же об эмуляторе на компьютере идёт, если я правильно его понял.
>>605207
У меня тоже такая проблема была на маке. Решилось, как и всё от гугла, как-то само либо ожиданием, либо перезапуском, либо переустановкой (целиком студии или эмулятора, не помню уже).
#274 #605757
>>605727
Да, я об эмуляторе говорил. Сам эмулятор качал у гугла, вместсе с студией.
#275 #605812
>>605757
1)Подожди.
2)Проверь, если ли место в оперативке
#276 #605830
Анон, устроился в контору стажером. И тут меня заставляют ебаться не только с андроидом, но и с бэкендом в том числе, а там даже не джава. А в будущем могут вообще перекинуть на несвязанные с андроидом проджекты. Стоит ли приседать на этот стул? Я как бы за специализацию больше.
#277 #605867
>>605830
Нет, если ты не получаешь от бэкенда удовольствия.
Если бы ты и его мог написать, и приложение, то, скорее всего, работал бы над своим проектом.
Тем более тебе явно не платят и за работу бэк-энд разработчика, и за приложения "под ключ", это овердохуя.
#278 #605979
>>605812
Место есть, ждал час. Возможно есть другие емуляторы?
#279 #606000
>>605979
Genymotion считается зе бест оф зе бест
#280 #606230
>>605979
Так и светится лого, решение пока не нашел, компьютер средний - ай пять, 4 гига озу.
#281 #606248
>>606230

>4 гига озу


>хз, мой ноут с 6гб забивается под завязку, когда шиндовс 7 + студия + файрфокс + эмулятор. Эмулятор студии около 1.5 Гб оперативы сжирает. Ящитаю, что он просто не может у тебя памяти выделить под себя.

#282 #606249
>>606248
Сорри, с гринтекстом перебрал.
#283 #606267
>>606230
На СтакОверфло гуглил?
#284 #606269
>>606230
И че сама студия пишет в консоли?
Двачую версию про нехватку ОЗУ, пробовал запускать Студию на ноуте с 3гб, вырубив при этом все, что можно, но все равно не запустилась.
Алсо, если тебе прям край, то можешь попробовать поставить Линух на флешку или другой жесткий диск и работать из под него. Там все шустрее будет
#285 #606277
>>606000
Спасибо, все работает.
>>606248
С генимотионсом все хорошо.
#286 #606307
Анончики, читаю официальный гайд (http://developer.android.com/intl/ru/guide/topics/security/permissions.html), но не могу грамотно перевести вот этот момент:

>Any permission can belong to a permission group, including normal permissions and permissions defined by your app. However, a permission's group only affects the user experience if the perimission is dangerous. You can ignore the permission group for normal permissions.



Не могли бы мне помочь вникнуть. Как я понял, все опасные разрешения делят на группы, а на остальные (нормальные и те, что от приложений) как бы по хуям, но все равно делят(?).
#287 #606325
>>606277
По личным наблюдениям скажу: более-менее комфортно работать со связкой студия/эмуль можно на минимум 8 гигах
#288 #606488
>>606307

>defined by your app


http://developer.android.com/intl/ru/guide/topics/manifest/permission-element.html
Вот это ещё дочитай и поймёшь.
1935 Кб, 3888x2189
#289 #606537
>>606488
Честно говоря, не очень понял все равно.
Меня больше вот эти строки интересуют:

>However, a permission's group only affects the user experience if the perimission is dangerous.



В той статье, что ты кинул тоже до конца не могу разобраться:

>A permission that the system grants only if the requesting application is signed with the same certificate as the application that declared the permission. If the certificates match, the system automatically grants the permission without notifying the user or asking for the user's explicit approval.



Это как вообще?
Я уже и гугл облазил весь, но с моими знаниями инглиша, я в эти строки никак въехать не могу.
Я не хочу особо капать на мозги анонам, но если не сложно, не объясните, пожалуйста?
#290 #606845
>>596036 (OP)
Еслия я совсем джаву не знаю? Что стоит почитать, что поделать? Единственный маленький опыт- фак php.
#291 #607711
>>606537
бампецкий
#292 #607723
>>606845

> Еслия я совсем джаву не знаю?


узнать?
#293 #607933
Помогите ньюфагу. Пытаюсь разобраться с SQLite, скопипастил проект из интернета, начинаю переделывать под себя. И вот какая трудность возникла: я хочу, чтобы каждому пункту таблицы соответствовала своя картинка, в зависимости от категории. По типу, если категория "белый", будет белый кружок, иначе черный. Ну и выводить в listview это - картинка+название. И не могу понять, где и как это присваивать/выводить. Сейчас сделал так, что картинка - отдельное поле таблицы, но как его выводить на imageview? В проекте выводилось с помощью SimpleCursorAdapter, но мне уже это не пойдет, как я понимаю.
#294 #607960
>>607933
Создай свой адаптер, унаследовавшись от simple cursor adapter.
#295 #607973
>>607933
Либо наследуешь CursorAdapter, либо наследуешься от BaseAdapter.
#296 #607974
В смартфонах же есть GPU? Какой с ним интерфейс? Какая-то версия OpenGL? ПО каким базвордам гуглить?
#297 #607997
>>607974
Да, есть - на квалкоммах это, например, Adreno (переставишь буквы - и поймешь, у кого купили). Да, здесь OpenGL ES, обращаться к которому можно как из явы, так и из сишного кода (NDK).
#298 #608002
Анон, как сделать динамическую смену тексту в текствью, где текст зависит от восьми эдиттекстов? То есть, я меняю текст в эдиттекстах, и в текствью он должен моментально меняться.
#299 #608007
>>606307
Правильно понял. У всех пермишенов может быть группа, но только для dangerous она имеет значение. Ибо если однажды в процессе работы приложения, dangerous пермишен запрашивает у юзера разрешение - оно будет запрашиваться для всей его группы, и подтверждаться тоже.
И если в будущем, приложению понадобится другой пермишен из той-же группы - оно уже не будет запрашивать разрешения, т.к. к группе доступ есть.
Всё это актуально для версий 6+. Для остальных, пермишены запрашиваются при инсталляции, и если у пермишена есть группа - запрашивается вся группа.

>A permission that the system grants only if the requesting application is signed with the same certificate as the application that declared the permission. If the certificates match, the system automatically grants the permission without notifying the user or asking for the user's explicit approval.


Ну типа, если приложение, запросившее пермишен подписано тем-же сертификатом, что и то, которое его объявило (т.е., пермишен прописан в его манифесте) - доступ даётся без всяких запросов юзеру.
#300 #608013
>>608002
Ставишь листенера на иземенение текста в edittext, правишь соответствующим образом текствью. Что ты как маленький?
#301 #608014
>>606248
Пиздец. У меня с тем-же набором забивается под завязку, но у меня 3 гига.
#302 #608028
>>607960
>>607973
Спасибо, почитаю, попробую.
#303 #608039
>>607933
так как чаще всего бд на сервере, то храни url имаг и грузи в кэш по надобности
#304 #608057
На чем тру-пацаны графику для 2д-игрушек рисуют?
#305 #608101
>>608057
В смысле на чем? На планшете например.
#306 #608184
>>608101
Спасибо.
#307 #608211
>>608007
От души спасибо, анон!
Въехал теперь
21 Кб, 512x512
#308 #608330
Доделал своё поделие для портфолио, которой так или иначе пилил полтора года (по нормальному делается за 10—20 дней). Буду благодарен, если кто-то посмотрит, оставит фидбек.
Ссылка: https://play.google.com/store/apps/details?id=com.destiner.pocket_reminder
Кстати, приложение в сторе висит уже два дня, но не ищется ни по названию, ни по ключевым словам. Кто-нибудь знает, в чём может быть дело?
#309 #608386
>>608330
Какие то иконки больно крупные на скринах. Ты же увеличивал стандартные 24dp иконки? Шрифт больно жирный какой то, сделай лучше точь в точь как в гуглокалендаре.
Аноним #310 #608583
>>608330

>по нормальному делается за 10—20 дней


За неделю по нормальному блядь.
#311 #608608
>>608583
3 дня — потолок.
73 Кб, 506x368
#312 #608631
>>608608
Да чего там. За пару часов.
#314 #608660
>>608656
А можно как-то без дианона и телефона присоединиться?
#315 #608748

>Предпочтение универсальному кандидату, пишущему и под Android, и под iOS (Ojective C)


Анчоусы, о чём это они? Плюсы видел, но чисто на Си, как Моцорд хуярить. Не понимать.
#316 #608750
>>608748
Objective C - это вообще другой язык.
60 Кб, 429x500
#317 #608840
>>601881
А если нельзя жаву?
#318 #608846
>>608631
>>608631
За секунду.
Совсем зажрались сволочи.
#319 #609130
>>608660
Телефон не виден никому, кроме контактов, алло!
#320 #609181
>>609130
А у меня всего одна симка, поэтому я либо зарегаюсь с нормальным ником, либо с ником уровня зк.
#321 #609382
>>608330
полтора года? Ты до этого вообще не сталкивался с программированием и решил сразу делать приложения или че?
#322 #609421
>>609181
Регайся с ником уровня зк, ирл-люди все равн будут видеть тебя так, как ты записан у них в книге контактов. Славик Сычев (Лох)
#323 #609425
>>608330
а что ты там демонстрировал то ? Умение расставлять view-элементы ? Аццкий вызов кастомного диалогового окна ?
Как бэ, тут работы на часа три ( ну, 4-5 если разметку под разные девайсы ваять нужно )
#324 #609434
Привет!

Как определить ID рандомного приложения в гугл плей?
#325 #609435
>>609425

> Умение расставлять view-элементы ? Аццкий вызов кастомного диалогового окна ?


Можно подумать в мобайл разработке есть что-то другое.
#326 #609548
>>609435
Ебля с различными api, обработка различных свопов, красивые слайд-скрины, катомные элементы навигации, продолжать ?
#327 #609553
>>609548
Ну если у тебя получаеться самого себя убедить то продолжай конечно, почему нет?
#328 #609566
Платина:
Как искать работу андроид девелопером без опыта, если я живу не в ДСах, а в моей мухосрани даже слов таких не знают?
#329 #609620
>>609566

Двачую вопрос. Только добавлю: для меня еще хуже, я живу в украинском мухосранске.
#330 #609621
чё делать если в биосе материнки нет опции по включению "virtualization technology" и соответственно не ставится HAXM ?? материнка msi 870-C45(FX) V2 (MS-7715). проц
#331 #609622
>>609621
phenom x4 960T
фикс
#332 #609754
>>609425

> Как бэ, тут работы на часа три


Удивительная переоценка своих возможностей. Чего не полчаса сразу?
13 Кб, 426x181
#333 #609786
>>608330

>не ищется ни по названию

#334 #609790
>>596036 (OP)
начинаю скачивать Android Studio, он останавливается на 0,9/1,1, а потом просто пишет "Неизвестная сетевая ошибка".
Что делать?
#335 #609829
>>609790
Попробуй вкатиться в iOS-разработку. Возможно, что Android - просто не твоё.
42 Кб, 469x336
#336 #609864
Что бы на диплом написать, связанного с сетями?
inb4: шутка про мамку
#337 #609918
>>609566
>>609620
Даже в ДСах хуй найдешь, а андроид джуны тем более никому не нужны, на западе и так перенасыщение мобильных девелоперов. Надо вкатываться просто в джаву
#338 #609945
>>609918
А в просто джаве нет перенасыщения? Может ты сейчас просто пытаешься нас наебать, а сам конкурируешь с нами? Пруфы есть?
#339 #610129
>>609425
Поддвачну этого. Сейчас ценится опыт сетевого взаимодействия, да ещё и с апихой какого-нибудь известного сервиса.
Ну а так, скорее-всего, у него там есть БД, какой-нибудь сервис висит.

>>609382
Вот вполне реально, кстати. Даже я, имевший небольшой опыт с тырпрайзной джавой (пару месяцев), очень долго тупил, как же сделать её с минимумом велосипедов, ШОБ КРАСИВО. Архитектуру надо придумывать до мелочей, учитывая множество подводных камней - этого нету Другую апликуху запилил за ночь очень давно - но тогда получается архипиздец в плане организации кода.
#340 #610131
>>609945
Везде есть перенасыщение. Суть в том, что в мобайле в 100% вакансий требуется опыт, но "опыт" в мобайле - это ссылки на маркеты/аккаунт апворка.
#341 #610141
>>609622

>


>phenom x4 960T


>фикс


Haxm только под процессоры интел
#342 #610153
>>609754
лол, а сколько времени по-твоему это займет ? неделю ? Или месяц, как у бога кодинга-ТСа ?
#343 #610154
>>610129
Дизайн - работа дизайнера, с точностью до 1dp. У кодера есть дела поважнее
#344 #610177
>>610153
Неделю вполне займёт.
#345 #610182
>>610177
мне тебя жаль
#346 #610183
>>610182
Слив засчитан
#347 #610184
>>610183
если ты пишешь такое за неделю, то ты какбэ убогий недобаттонкликер
#348 #610187
Вот, что было написано мной за 5 дней к примеру. ( если хотите - чуть позже могу куски исходников привести )
В play маркете набейте "чугунное яйцо"
Немного халтурно, но время жало
#349 #610189
>>610183
все еще слив, лалка ?
#350 #610191
>>610184
Уже переходы на личности делаешь? Ладно: если ты пишешь такое за 3 часа, то ты пиздабол каких поискать, иных вариантов не существует.
Я не смотрел приложение, сейчас глянул — там используются некоторые возможности, всё проще, чем я представлял. Неделя тут и правда много, но 3 часа — невозможно, это цифра с потолка и пустой выебон.
#351 #610192
>>610191
кхм, что там сложного ? Разметка ? Не смеши
#352 #610194
>>610189
А ты предоставил что-то, что отменяет твой слив?

Я посмотрел твою приложуху, её за 5 дней реально сделать, но речь не о твоей проге, а о проге того анона. Более того, я не вижу в твоей проге чего-то такого, из-за чего её создание займёт в 10 раз больше времени по твоим представлениям.
#353 #610195
>>610192
А почему там что-то должно быть сложное? Что сложного в твоей проге, например?
Это дело техники, я не учитываю время на изучение. Ты садишься и проектируешь, пишешь, делаешь разметку, тестируешь, отлаживаешь. И за 3 часа ты это не сделаешь.
#354 #610197
>>610194
как минимум неплохая для подобной аппликухи производительность и огромное количество разметки. Большое количество кастомных элементов. Поддержка различных экранов, фильтр свопов вправо и влево
#355 #610198
>>610195
разметку сфарганить это и есть сложное, если она не по гугловскому материалу. Если же по нему, то все делается за несколько часов и минут 15 на тест на паре устройств
#356 #610204
>>610197
И это не потребует в 10 раз больше времени, няша. По крайней мере, в данном конкретном случе, т.к. в том приложении, помимо также не-дефолтного интерфейса, есть ещё некая логика работы и использование множества компонентов.
>>610198

> разметку сфарганить это и есть сложное, если она не по гугловскому материалу.


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

> Если же по нему, то все делается за несколько часов и минут 15 на тест на паре устройств


Зависит от приложения, конечно, но то приложение нельзя оценить в 3 часа, это выебон и пердёж в лужу.
#357 #610207
>>610204
оценщик, бля, у тебя опыт разработки есть вообще ?
#358 #610210
>>610204
неужели это слив ?)
#359 #610218
>>610207
Я не он, но ты еблан, сори уж. Это первое приложение человека.
Ему для начала нужно почитать, что такое материал десигн, прежде чем его лепить. Тоже самое касается всего остального.

Опыт у всех разный, и если ты клепанул десяток приложений и сходу представляешь, как такое реализовать до мелочей - все зависит от скорости набора кода.
#360 #610221
Ананасы, как цивилизованные люди передают коллекции между активитями и фрагментами? Я засовывал в строку Json и дальше через интенты и бандлы. Неужели нет ничего покрасивше?
#361 #610224
>>610221
Из активити в дочерний фрагмент через вызов метода
Из фрагмента в родительскую активити через коллбэк
#362 #610225
>>610207
Да, очень давно этим занимаюсь. Продолжаем переходить на личности?
>>610210
То есть то, что ты мне в первый раз ответил только через 14 часов — это ок, а стоит мне отлучиться на полчаса, так это уже слив? Ммм.
#363 #610245
>>610198

>разметку сфарганить это и есть сложное, если она не по гугловскому материалу.


Я ньюфаг, обьясните, чем гугловский материал выгодно отличается в сторону простоты от старых версий? Ну, там кардвью вместо фреймлэйаутов, ресайклер вместо лист, фаб, тулбар, пэпербатн вместо обычной, эвалуэйшн, но в чём конкретно упрощение? Или вы имеете в виду, что раньше вы тени пердолили вручную?
sage #364 #610304
>>610183
Но он прав, ты тупорылый мудак.
#365 #610384
#366 #610391
>>610304
нетуды, а сюды:
>>610245
#367 #610394
>>610384
А как в ресайклервью реализовать контекстное меню без особого пердолинга, например? У меня получилось только с передачей коллбэка для фрагмента, но там MenuItem всё равно нулевой и нужно сделать было дополнительную еблю с определением, какой именно элемент нажимается.
Да onClick реализовывать в самом холдере приходится, что есть говно. У меня по клику навигэйшн дравер закрывается, если ListView использовать, то там уже в ListFragment есть onItemLickListener, можно работать с дравером прямо из фрагмента. А в ресайклере нужно снова или коллбэки, или делать адаптер нестатическим классом. Плохо зделали, тупо, листвью в плане удобства программирования пока что гораздо лучше.
#368 #610431
>>610141
и как тогда начинать учиться если амд, качать эклипс?
#369 #610527
>>610431
есть же эмулятор с SDK идет, тормозит, но работает. А вообще нужен девайс. Рекомендую Galaxy S3 из старых, недорогих, но до сих пор актуальных.
#370 #610628
>>610431
Тебе нужен i5 4690k и LG Nexus 5.
#371 #610633
>>610628
а чёж тогда не 5ого поколения камень?
#372 #610800
Есть 2 стула: на одном Java энтерпрайзная, на другом Android с материал дизайном. На какой сядешь, на какой мать посадишь? Алсо, ещё есть табуретки с руби и питоном.
Про стулья опыт есть, хоть и не большой. А табуретки 1 раз вижу.
Стоит ли выкатываться со стульев? Или сесть уж на один из них?
#373 #610801
>>610800
Мы не знаем.
#374 #610934
Нормально будет, если сразу начну проходить курс по разработке под андройд без изучения джавы?
Решил взять курс на startandroid.сру
35 Кб, 488x398
#375 #611035
Дали задание сделать курсовой проект на Андроиде. Недолго думая скачал Android Studio.
Тут-то мне знатно пригорело. В старом-старом C++ Builder 6 хочешь вкладки - просто поставь элемент на форме и всё заебись. Хочешь сделать список? Вот тебе список, заполняй, как хочешь. Хочешь таблицу? Нет проблем, у каждой клетки есть свой идентификатор, занести данные занимает пару строк.
В андроид студио нужно ебаться по 5 часов, чтобы хотя бы заставить какой-нибудь виджет работать. Перелопатить дохуищу примеров, ебаться с какими-то адаптерами, причем во всех примерах в гугле гайд по вставке изображений. Нахуй мне изображения, дайте БД.
Очень, очень больно работать в этой среде. Простоты какой-то не хватает, что ли, или я дебил.
#376 #611036
>>610633
Как будто на этом работать не будет.
246 Кб, 1024x728
#377 #611037
>>611035
Есть билдер под андроид. Хз как он.
337 Кб, 915x662
#378 #611038
Не тот скрин.
#379 #611084
>>611038

>Не тот скрин.


И xml сверстается?
#380 #611433
>>610934
Без явы не куда. Хотябы основы и ООП нужно знать.

>startandroid.сру


Уроки там очень хорошие. Прочитай первые 40-50 уроков, потом пили свой эпп вместе с гуглом.
189 Кб, 1920x931
#381 #611558
Есть идеи, что тут может с чем быть связано?
6 Кб, 256x216
#382 #611651
Антоши, мне требуется запилить несложное приложение с меню, парой форм и таблиц, но яву я не знаю, знаю всякие си и пхп.
Сильно ли я буду страдать или для таких несложных штук глубокого знания языка не требуется?
#383 #611702
Поясните за стандартный дизайн: почему итт говорят, что зашквар его использовать?
Сейчас открыл приложения Сбера, Деливери клаб, никаких выебонов нету, стандартные инпуты, менюхи, у всяких Яндексов вообще белое на белом, хули вы мне пиздите что его нельзя использовать?
#384 #611712
>>611702

> хули вы мне пиздите что его нельзя использовать?


Кто это говорит? Такое говорят только дизайнеры с БРЕНДБУКАМИ.
#385 #611714
>>611712
Вот этот хер что-то говорит:
>>610204

>> разметку сфарганить это и есть сложное, если она не по гугловскому материалу.


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



О каком он вованстве?
#386 #611742
>>611702
>>611714

Я конечно ньюфаг, но материал дизайн использовать совсем не зашквар.
#387 #611863
>>611714

> Вот этот хер что-то говорит:


Я наоборот сказал, что использование полностью кастомных элементов дизайна — вованство. Система даёт материал — надо использовать материал.
#388 #611885
>>611714
мой только верхний пост
#389 #612123
>>596036 (OP)
Есть ли возможность держать включенным led индикатор во время включенного экрана?
#390 #612310
>>611742
Используй тот дизайн, который подходит к твоему приложению.
Не используй материал, если хочешь, чтлбы твоё приложение выделилось среди остальных.
#391 #612589
Блять, уже задолбался весь день трахаться с апи ластфма: http://pastebin.com/YM4ZAaUr
В закомменченом испробованы различные варианты, уже и ссылку использую базовую, а всё равно FileNotFoundException при попытке чтения входного стрима и ResponseCode=400. При этом через браузер компа всё нормально: отдаётся XML. Что ещё можно придумать?
#392 #612735
Посоветуйте аналог FragmentTabHost, только чтобы фрагменты НЕ пересоздавались.
Т.е. чтобы поведение у него было как у ViewPager, но без скролла, у меня в одной фрагменте карта и скролл будет только мешать.
#393 #612736
>>612589
Поставь User Agent от любого современного браузера.
#394 #612749
>>612735
Во вьпейджере фрагменты тоже унижтожаются до OnDestoyView включительно. И там, где будет карта, если нажимать на неё, скролла страницы самой не будет, только скролл карты.
#395 #612756
>>612310
пфф, не используй материал, если у тебя есть хороший дезигнер. Только когда он есть
#396 #612758
>>612749
Там соседние фрагменты же не уничтожаются, не?
#397 #612792
>>612758
Да, но долистаешь до третьего - первый уничтожится.
#398 #612796
>>612792
Ясное дело, что уничтожится.
#399 #612978
Почему перечеркнут getLastNonConfigurationInstance в андроид.стидии? Правильно ли я понял, что ему давно другой механизьм придуман в замену?
23 Кб, 696x282
#400 #612981
>>612978
Или я может быть неправильно использую? Т.е не по назначению.
#401 #613038
>>612981
навести мышку и почитать не пробовал ?+
#402 #613102
>>613038
Сразу пропадает что-то
#403 #613154
>>613038
ДА КАК ПРОЧИТАТЬ ЭТО СООБЩЕНИЕ?! ОНО ТУТ ЖЕ ПРОПАДАЕТ СТОИТ МНЕ ПЕРЕМЕСТИТЬ МЫШКУ ССССУКА КАК БЕСИТ!
#404 #613176
>>612981
И даже если устаревший, но работать то он должен?
#405 #613615
Охуенный тред
44 Кб, 660x582
#406 #613795
как сделать так чтобы при создании модуля в андроид студии сразу устанавливалсь кодировка utf8? что-то дописывать в build.gradle? или все же есть где это дело в настройках?
34 Кб, 687x423
#407 #613799
>>613795
сорян, в этот раз прогуглилась проблема)
#408 #613985
>>596036 (OP)
как мне жидеевский проект добавить депенденси? (там нет градловского файла)
#409 #614016
>>612978
Вообще, в доках к сдк прописано обычно, почему депрекейтед, и чем заменено
#410 #615326
Какую ЗП можно запрашивать, если я по сути сделал только пару приложений для себя?
#411 #615331
public boolean onCreateOptionsMenu(Menu menu) {
menu.add( "Menu1" );
menu.add( "Menu2" );
return true;
}

Создаю меню, а оно почему-то имеет прозрачный бэкграунд. ЧЯДН? Тоже самое если и через хмл, а не программно создавать меню
#412 #615332
>>615326
минимально прожиточную, чтобы завидовать альфачам с потока менеджмента и экономики
#413 #615368
>>615331
Ну же, анон! Я уверен ты с этим сталкивался.
#415 #615408
>>615370
И что это за меню тогда вызывается в версиях 2.3 андроида если попап? Все приемы применительные к последнему никак не действуют на мою меню, я даже цвет текста установить не могу через стили(программно можно).
45 Кб, 400x486
#416 #615421
>>615408
Это просто пиздец какой-то! Ни с чем ещё так не приходилось ебаться!
#417 #615442
Ну же, анон! Что это за меню вызываемое по кнопке меню? OptionMenu допустим оно и есть. Но как к нему хотя бы стиль применить? Я уже всё перебрал. Ему просто похуй, прозрачный бэкграунд и всё тут.
#418 #615443
Вот человек предлагает:
Change the theme to android:Theme.NoTitleBar. It looks similar enough to Theme.AppCompat.Light.DarkActionBar

А можно ли как-то посмотреть что прописано в этих темах? Так чтобы я сравнив содержимое ВОЗМОЖНО нашёл бы тот параметр который отвечает за задник элементов меню.
#419 #615448
В общем кроме как поправить стиль:

<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name ="android:panelBackground">@color/back</item>
</style>
<color name = "back">#a1a1a1</color>
</resources>

Решения я так понял больше нет.
8 Кб, 482x238
#420 #616116
Антоши, как сделать материал табы?

Не могу нагуглить, либо деприкейтед, либо ещё какая шляпа со стороннними либами.
#422 #616223
>>611702
Кто такое говорит? Или не стандартный это материал с примесями?
Все у материала норм, правда не всегда дизайн делают люди которые выкупают как ведроид работает. В результате куча говнокода жопа в архитектуре.

А вообще пиздовать по гайдбукам и не выебываться это лучшее решение. Не все из коробки доступно, но найти на стековерфлоу решение ты точно сможешь.
#423 #616225
Ну и с новым годом всех, да.
#424 #616389
Котаны, есть приложение в котором испльзуется VK API.
Нужно загружать список музыки.
Как наиболее красиво сделать загрузку данных из ВК?
При помощи VK API я получаю ответ в JSON формате, мне нужно преобразовать это в объекты.
Ок. Беру Gson и получаю объекты.
Но весь этот код с коллбеками и т.п. очень хочется вынести куда-нибудь за пределы фрагмента, тем более в нескольких фрагментах запрашиваются одни и те же данные.
Создать свой класс типа: VkProvider и реализовать в нем методы getMusic(String userid, Callback callback)?
Тогда получится коллбек в коллбеке.
Или это нормальный подход?
#425 #616464
>>616389
По хорошему - через контент провайдер, гугли презентации с I/O про архитектуру приложения. Но я на него забил и обмазываюсь realm'ом уже полгода.
#426 #616471
Поучусь тоже под ведроид писать программы, а то все в тырпрайзе сижу.
#427 #616506
>>616464
Зачем контент провайдер, все эти странные ссылки, когда мне только анутри приложения эти данные нужны?
#428 #616518
>>616506
Вот видео которое я не смотрел, но все умные дяди тычут им в нос
https://www.youtube.com/watch?v=xHXn3Kg2IQE
#429 #616629
Есть сервис, который занимается проигрыванием музыки.
Он может генерить всякие события, типа: переключили следующую песню, обновилось время и т.д.
Это сделано при помощи LocalBroadcast сообщений.
Но, мне же еще надо как-то управлять этим сервисом, всего около 20 методов с разными аргументами.
Использовать binding, везде где нужен сервис, получать на него ссыль и вперед?
#430 #616640
Если использую setRetainInstance(true) у фрагмента, то без разницы где сохранять состояние при перевороте экрана?
Мне например надо восстановить searchView который в ActionBar. Можно сохранить в onSaveInstance(), можно просто завести переменную в которую сохранить текст из SearchView.
#431 #616697
>>616629
Не смешивай. Начал бродкасты, делай бродкастами.
#432 #616779
Кстати, а кто нибудь пробовал вторую студию? Опишите впечатления о производительности? П.С. просьба указывать юзаете HDD или SSD, а то некоторые облоатели SSD и раньше чувствовали себя комфортно
#433 #616812
>>616779
Использую Android Studio 2.0 preview 3 rb на HDD, i5 4690, 8 gb ram. Работает как надо, Gradle как всегда неспешный.
877 Кб, 1567x2765
#434 #616946
Анон, как нормально хранить объекты в ресурсах?
Мне нужно сохранить информацию о страницах в примерно таком формате:
[
{
id : "main",
text : "Главная",
icon : "home.png"
},
{
id : "favorits",
text : "Избранное",
icon : "star.png"
},
{
id : "settings",
text : "Настройки",
icon : "coug.png"
}
]
#435 #616959
>>616946
Храни в объектой БД.
Например Realm:
https://realm.io/news/realm-for-android/
#436 #616961
>>616946
Статик лист. Постоянно так в дровере делаю, зависимость лютая.
357 Кб, 2950x1490
#437 #616963
>>616959
Не хочется что-то подключать ради пары объектов.
>>616961
Не понял, ты в коде задаёшь все переменные? Я хочу хранить вью данные отдельно от кода.

А вообще, насколько хреново будет хранить приятную внешне JSON строку в ресурсах?
Типа

<string name="pagesJSON">
[
{
id : "main",
text : "Главная",
icon : "home.png"
},
...
]
</string>

А потом парсить её?
#438 #616967
>>616963
Лучше хранить конкретно json-файл в assets. Алсо, я бы тупо сделал три независимых string-array, наверное. Но у тебя, вроде, покрасивее решение. Вообще, если это сорт оф меню, то можно сделать в меню файле.
#439 #617003
Есть recyclerView с картинками, загружаю картинки вот так:
http://pastie.org/10665316

Нормальное это решение?
#440 #617019
>>616963
Вопрос в том, зачем она тебе, какого она размера и что ты с ней делать будешь?
106 Кб, 922x682
#441 #617045
>>616967
Да, это разумно, спасибо.
>>617019
Это небольшие массивы однородных объектов, типа вышеописанного меню, вкладок, буквально по 3-4 элемента массива с 2-3 полями в каждом элементе. Применяться будет для отображения меню, полей списка и т.д.
#442 #617073
Как мне заставить НЕ засыпать телефон, чтобы сервис в моем приложении не отваливался?
#443 #617184
>>617045

> Применяться будет для отображения меню, полей списка и т.д.


Ну и в чем проблема задавать это в тех кусках кода, где это используется? Велосипеды вещь интересная, но нахуя?
Как я уже писал выше, drawer я задаю программно через recyclerview + статический лист объектов id - id текста - id картинки.
#444 #617190
>>617184
У меня навигация в drawer сделана более оптимально:
В разметке MinActivity внутри DrawerLayout находится фрагмент - собственно содержимое дровера.
Разметка дровера: linear layout внутри scroll view.
А если нужно динамически формировать меню, то ты можешь подключить к этой linear layout обыкновенный адаптер, который наследуется от BaseAdapter. Чуть чуть подумав.
В MainActivity реализован интерфейс Navigation и коллбек, в котором входной параметр: id пункта меню. Id пунктов меню заданы в R.id.
И таким образом переключаются фрагменты.
Заебись сделано?
другой анон
496 Кб, 1924x1517
#445 #617194
>>617184
Да, наверное, проблемы нету, просто я не привык генерить вид напрямую кодом, включая данные в код, всё хотел их вообще все вытащить в ресурсы, чтобы все эти списки были там.
#446 #617199
Постите лучше няшных мальчиков, под запретом только фуррятинка.
#447 #617218
>>617184

>drawer я задаю программно через статический лист объектов


http://habrahabr.ru/post/236567/
#448 #617306
>>617218
Лучше бы кинул тогда дизайн либрари тогда, довольно классно выглядит. Только вот однотипное меню все реже и реже встречается. Да и уебанство дизайнеров и заказчиков никто не отменял, которые хотят как на айфоне и срать хотели на материал.
>>617190

> В разметке MinActivity внутри DrawerLayout находится фрагмент - собственно содержимое дровера.


Стандарт же.

> Чуть чуть подумав.


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

> В MainActivity реализован интерфейс Navigation и коллбек, в котором входной параметр: id пункта меню. Id пунктов меню заданы в R.id.


Тоже стандартно же.
#449 #617392
Есть ли в андроид студии файл эксплорер для виртуального устройства? Не смотреть через само устройство например сохранился ли файл(долго), а через какой-нибудь встроенный браузер в компиляторе?
#450 #617402
>>617392
android device monitor
#451 #617416
За одним глупым вопросом сразу другой.
Сохраняю с помощью getSharedPreferences некоторые данные, а внутри него они почему-то не по порядку записываются. ЧЯДН?!
#452 #617417
>>617416

>внутри него


Внутри указанного файла.
#453 #617425
>>617416
Порядок не гарантируется, так и должно быть.
#454 #617427
>>617425
Но ведь я последовательно заполняю и коммит вызываю. Странно как-то. Ну да ладно.
#455 #617428
>>617427
В эдиторе хэшмап используется для хранения, с ним порядок теряется.
#456 #617546
>>616629
Если у тебя сервис, проигрывающий музыку - лучше сначала запускать его старт сервисом, потом биндиться.
И то, и другое можно делать практически в любой момент. Если вызывать сервис онли биндом - он помрет, когда уничтожатся все привязаннные к нему контексты.
Ресивер создавай и регай где-нибудь в активити - тогда при её дестрое, у тебя одновременно отвалится приём событий.
#457 #617548
>>616640
onSaveInstance у тебя вообще не вызовется, т.к. фрагмент не пересоздается. Так что единственный вариант - через переменную.
#458 #617551
>>616389
Гугли mvp, например. Слой по работе с апишкой лучше выноси отдельно, со всеми его коллбэками. Полностью избавиться от коллбэчного ада не получится - ибо на каждый запрос всеравно чаще всего нужен свой листенер.
Если у тебя дохуя преобразований - юзай rxjava
#459 #617554
>>617551
У меня в основном наполнение списков.
Сделал так: класс PublicsAPI, методы: reload(), loadMore(), cancellAll().
При помощи Handler.Callback получаю 3 вида сообщений: LOAD COMPLETE, LOAD MORE, ERROR.
#460 #617555
>>617548
Если не ошибаюсь, то он вызывается. Сегодня проверю.
Мне надо понять в чем разница и какой подход лучше.
#461 #617557
>>616640
При setRetainInstance состояние сохраняется само, если есть айдишники у элементов, вроде. Если не сохраняется, то проверь, не обнуляются ли у тебя поля где-нибудь в onCreateView/onActivityCreated
#462 #617559
>>617546
Ага! Правильно я понимаю, что если использую коллбеки, чтобы передавать информацию от сервиса в активити, то в еденицу времени сервис должен быть забинден только в одной активити или фрагменте, где используется этот фрагмент?
#463 #617560
>>617559
*этот коллбек
#464 #617576
>>617559
Я думаю биндить можно из нескольких мест же одновременно. А вот чтобы колбэк вызывался в разные места, нужно делать лист колбэков.
860 Кб, 2700x1665
#465 #617670
Котаны, есть задача портировать готовое андроид-приложение на iOS, писать с нуля на шарпах не хочется, как можно упростить задачу?
#466 #617706
>>617670

>на шарпах


кек
#467 #617711
>>617706
проиграл сам с себя, на обжективе, ок. Собственно, поэтому и не хочу писать с нуля.
#468 #617719
>>617670
Можно сделать хорошо, только переписав его с нуля на objective-C.
#469 #617724
>>617670
https://code.google.com/p/java2objc/
Гугл для тебя старались, по заверениям из описания и классы конвертирует.
#470 #618053
Есть список в каждом элементе которого есть список элементов в linear layout. Как избежать вызова findViewById, при наполнении элементов вложенного списка?
Использовать пул объектов?
#471 #618071
>>617559
А нахуй тебе вообще юзать коллбэки для взаимодействия с активити? Этож геморрой, постоянно надо проверять активити на null, и состояние жизненного цикла.
Лучше юзай
сервис -> активити - броадкасты
активити -> сервис - биндинг, и ссылка на сервис
#472 #618123
>>618071
Ага. Логично.
Насколько я потеряю в производительности, если будут отправлять от сервиса к активити через LocalBroadcast serializable объекты?
#473 #618342
>>596036 (OP)
утречка, Андроид-анон!
Понимаю, вопрос несколько поднадоевший, но сейчас тороплюсь, нет времени скроллить тред: что посоветуете почитать для изучения легитимного набора? Английский ли язык, русский - неважно
Джаву учил когда-то, но забросил, общие принципы ООП знаю.
#474 #618350
Возможно ли узнать размеры View в dp, которые были заданы в XML?
#475 #618368
>>618350
Думаю, что можно узнать размер в px и потом конвертировать в dp.
#476 #618449
Анончики, приглашаю вас в конфу в телеграме

Конфа общая как для обычной джава, так и для ЕЕ

https://telegram.me/joinchat/Bbfo5gUiYnQn8tWtl0OlrA
#477 #618450
>>618449
Android-господам тоже будут все рады
#478 #618451
>>618449

> для обычной джава


> для ЕЕ


А андроид то каким боком? Читать про ваши AbstarctSingletonProxyFactoryBean'ы не очень интересно.
#479 #618452
>>618368
>>618350
Верно, вытаскиваешь LayoutParams и смотришь. Если не -1 и -2, то явно заданы, переводи в px.
#480 #618454
>>618451
Добавил слово "Android" в название конфы

Не только это обсуждаем
#481 #618663
>>618454
>>618449
В чём особенность этих конф в телеграмме?
#482 #618747
При повороте экрана нужно сохранять данные из фрагмента, некоторые уже созданные объекты его внутренних классов. В бандл ведь их не запихнуть, так? Не разбивать же класс на составляющие, заебёшься. Сейчас пока работает через файл, убого же, наверняка дольше, чем в оперативной? Так как быть?!
#483 #618756
>>618747
C помощью onRetainNonConfigurationInstance не получается совершенно:

//1 .Сохраняю созданный ранее объект
public Object onRetainNonConfigurationInstance() {
return frag;
}

// 2. При восстановлении получаю ссылку на него
public void onCreate( Bundle savedInstanceState ) {
super.onCreate( savedInstanceState );
setContentView( R.layout.main_activity );

frag = ( WorkshopFragment ) getLastNonConfigurationInstance();
if( frag == null )
frag = ( WorkshopFragment ) getFragmentManager().findFragmentById( R.id.workshop_main );
}

Всё правильно?
#484 #618786
>>618663
Поболтать, что-то спросить, посоветоваться, там поменьше всякого потешного сброда которое только унизить то и хочет кого нибудь.
#485 #618802
>>618786
Вы тут-то никому не помогаете, а ещё конфу им подавай.
#486 #618830
>>618756
Ну йопта! Тут кто-нибудь вообще бывает? Или не стоит ждать помощи?
#487 #618848
>>618747
setRetainInstance(true) в onCreate фрагмента. Всё, больше ничего не надо. Фрагмент не будет пересоздаваться при повороте, будут вызываться только onCreateView - onActivityCreated - onAttach. Переменные внутри фрагмента сохраняют значение.
После этого поправь свой код в активити, оставь только
frag = ( WorkshopFragment ) getFragmentManager().findFragmentById( R.id.workshop_main );
А что такое onRetainNonConfigurationInstance(), я вообще не знаю, никогда не видел, чтоб использовалась, и судя по тому, что деприкейтед, никогда и не увижу.
#488 #618869
>>618848
Увы, но всё не так просто. Наткнулся на страничку где человек нечто подобное расписывал. Говорит, что фрагмент-то не пересоздаётся, а вот его представление создаётся. А Я УЖЕ НЕ ПОНИМАЮ ЧТО У МЕНЯ В ОНКРИЕНТВЬЮ ПРОИСХОДИТ, что забил(не стал разбираться в чем проблема) и просто забабахал через тот же onRetainNonConfigurationInstance.
Забудьте, нет вопроса.
#489 #618870
>>618869
Быдлокод as it is. Меня в стажёрстве за такое по рукам бамбуковой палкой хуярили. Переделай по-нормальному лучше, если это, конечно, не твой последний проект на андроид.
#490 #618872
>>618870
Почему же быдлокод?
onRetainNonConfigurationInstance
Сохраняет указанные объект, после восстановления активити я его спокойно могу использовать.

Или устаревшие методы определяют?
#491 #618875
>>618872
Если метод deprecated, то его не следует использовать. Единственное исключение, если замещающий метод не поддерживается на текущей версии (например, camera2 api с 21, по-моему, версии, а сейчас обычно разрабатывают приложения для 11+ или в крайнем случае для 14+), в таком случае можно оставить, хотя лично я тогда делаю две реализации (camera api для 11-21 версии, а если версия 21+, то camera2 api, выбор простой проверкой, через if (Build.VERSION)).
#492 #618883
>>618875
Ничего не могу пока поделать, почему-то не рисуются после поворота созданные объекты в нём(во фрагменте).
Так что пусть пока побудет быдлокод у меня, в дальнейшем буду иметь ввиду.
Первый проект.
#493 #618890
>>618875
Вот нашёл
http://4ybakut2004.blogspot.ru/2015/01/android-save-fragment-after-screen.html
Он пишет:

>Теперь фрагмент не пересоздается после поворота экрана, однако его представление все равно создается заново, так как вызывается метод onCreateView.


И предлагает:

>((ViewGroup) view.getParent()).removeView(view);


Но, блин, это ошибку как раз и вызывает(что-то не может из xml-разметки прочитать).
#494 #618896
Ну вот почему логкэт такое говно? Сообщения об ошибках вообще мало о чем говорят - где она блядь произошло? Выход за пределы массива? Какого именно? Писто как всё плохо в сравнении с вижлстудией.
#495 #618904
>>618896
Тебе стек вызовов выдаётся, ищи по нему, где у тебя это произошло.
#496 #618924
Покажите свои программы в сторе. Не ссыте ведь?
185 Кб, 1920x1200
#497 #618961
Программач, есть куча форм с валидацией в приложении и есть желание написать простенькую функцию для работы с ними, причём так, чтобы она делала следующее:
1. Принимала идентификатор формы (родительского лейаута для эдиттекстов) и искала внутри все эдиттексты.
2. Собирала из эдиттекстов значения и отсылала на сервер.
3. Принимала ответ от сервера и запускала некий коллбэк.
Как подобное можно реализовать? Особенно интересует п.1, т.к. сейчас есть подозрение, что придётся перечислять все поля вручную, а их порой очень много.
Спасибо.
#498 #618962
Рисую средствами канвы сетку, при масштабировании некоторые линии пропадают, полный хаос! Подскажите пожалуйста может как-то параметры рендеринга настроить нужно чтобы линии сглаживались, но не пропадали?
Спасибо!
#499 #618992
>>618896
Не припомню таких проблем. Кажется, ты ньюфаг.
#500 #618993
>>618961
1. Мысли верные. Как перебрать все дочерние элементы, я думаю ты разберешься. Обязательно проверь тип, чтобы это был именно EditText.
2. Для каждого EditText можешь задать в XML тег:
android:tag="@string/item_tag", далее когда будешь строить POST или GET запрос, используй эти теги в качестве названий параметров в запросе.
3. Одна из многих библиотек для асинхронных запросов, простая в использовании: http://loopj.com/android-async-http/
#501 #618994
>>618993
Если ответ от сервера в формате JSON, то можешь при помощи одной строчки кода преобразовать его в объект при помощи Gson https://github.com/google/gson
#502 #619037
Есть у меня фрагмент со списком.
В onCreate вызываю setRetainInstance(true) и создаю адаптер.
Мне нужно 1 раз загрузить данные из сети и занести в список.
Т.е. мне не нужно, чтобы при возврате из backstack данные снова загружались из сети.
Но как это сделать?
#503 #619041
>>619037
setRetainInstance(true) - чтобы не перезагружать здоровенный список при повороте экрана.
#504 #619042
>>619037
Вообщем, котаны, завел static переменную, которую инициализирую в onCreate.
#505 #619185
Кто-нибудь ведет свой open source проект под android?
Интересно было бы поучаствовать исключительно для прокачки навыков.
#506 #619203
Бамп лимит или еще нет?
#507 #619360
Анончик, я тред не читал, сразу спрашиваю.

Как поймать момент, когда View полностью загружен? Приложение валится с nullPointer иногда, когда после загрузки с камеры основная Activity помирает и затем пересоздаётся, и я пытаюсь реинициализировать какую-нибдуь кнопку/ползунок или ещё какой-нибудь элмент интерфейса и обратиться к его полям/методам.
#508 #619364
>>619360
Посмотри-ка жизненный цикл активити/фрагмента.
#510 #619379
>>619364

Фрагменты не задействовал, думаю переписать основную активити чтобы весь интерфейс таки да был во фрагменте, поскольку у фрагментов есть событе, когда View загружен полностью.

Жизненный цикл активити более-менее понимаю. Но проблема не в том что я из Bundle состояние activity не восстанавливаю. После выгрузки activity из памяти и возврату к этой activity заново вызывается onCreate, вызывается onCreate, в нём зовётся setContentView заново, после чего начинаю реинициализировать View например баннера рекламного :

AdView mAdView = (AdView) findViewById(R.id.adViewMain); // setContentView ещё не закончил работу, и из-за этого mAdView нулевой
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest); // вот тут будет NullPointer из-за того что mAdView не была нормально инициализирована
#511 #619562
#512 #620074
>>596036 (OP)
Хотел посмотреть в Wireshark-e как проходит аутентификация одного андроид приложения (интересуют реквесты к закрытому API и ключи, которые оно отправляет).
Девайсов на андроиде нет, поставил Bluestacks, Wireshark видит его трафик, но пользы от этого мало - реквесты все идут через HTTPS.
Люди как-то получают нужные реквесты и ключи. В какую сторону смотреть? Реверс инжинирить приложение? Если да, то как? Если нет, то что посоветуете?
Чем грозит? #513 #620985
#514 #622265
Пачаны, есть строковый массив в файле ресурсов, как к нему получить доступ из класса? (Не активити который)
#515 #623558
>>622265
Пиши в живой тред.
По делу - передай в конструктор Resources или Context, если боишься утечек возьми у контекста контекст приложения - тогда не протечет, когда надо берешь стринг арэй.
#516 #624555
Привет, ребята, очередной чайник в треде. В общем задумал я сделать одну классную вещь под андроид, но ни с чем, связанным с программированием в жизни дел не имел. Так вот вопрос. На каком движке можно написать игру типа "Взломщик 1.6", если помните такие были популярны лет 10 назад. Много ли нужно времени для того, чтобы новичку написать подобное?
99 Кб, 1626x738
80 Кб, 1502x962
55 Кб, 720x1280
#517 #626365
>>596036 (OP)
Привет пацаны! Как и многие решил угореть по андроиду, написал приложуху (афишу для местных кинотеатров) и заметил, что скролл не такой плавный как в приложении ВК.

Ради такого дела полез смотреть трассировку - если мотнуть экран вниз, то первое время все нормально (пик 1), но в какой-то момент все становится плохо (пик 2) и дальше лучше не становится. Во фрэйме, после которого все ломается, происходит "Expensive Bitmap uploads" Pixels uploaded "0.31 million", Time spent 11.750 ms, Upload 1038x300 Texture took 11.75ms. О каких текстурах идет речь я не понимаю, у меня даже при всех закомменченных ImageView такая же фигня.

Может я накосячил в программе или еще что. Поэтому я собрал пример полностью по руководству гугла http://developer.android.com/training/material/lists-cards.html#Dependencies и, естественно, ничего не изменилось. Скролл такой же рваный. В моей пустой программе тормозят даже пустые карточки (пик 3).

Что можно сделать, пацаны? Мой телефон говно? Или это я не понимаю сути андроида?
34 Кб, 640x526
#518 #627002
Не понимаю как работает сборка мусора. Допустим, у меня есть Activity, с методом onResult. Activity создаёт другой объект, допустим Dowloader с помощью new Downloader(this).
Downloader сохраняет эту переданную ссылку в поле mCallback. Внутри Downloader объявляется AsyncTask, который в onPostExecute вызывает mCallback.onResult(yoba).
Вопрос: если в момент выполнения AsyncTask Activity будет убита, что произойдёт? Будет ли собран сборщиком объект Downloader? По идее объект AsyncTask будет иметь ссылку на родительский объект, значит ли это что он будет жить? Значит ли это что ссылка mCallback вмесие с Activity также останется жить?
Если всё да, то какой нормальный выход? Сделать WeakReference mCallback? Сделать AsyncTask static?
#519 #627439
Аноны, денёчка! Хочу сделать шапку для своего приложения, которая будет включать в себя пикчу и текст, со шрифтами, цветом и размером которого хотелось бы поиграть.
ActionBar скрыл, в как это сделать Toolbar`е тоже не догоняю.
Надежда на тебя, анон!
#520 #627733
Аноны, можно ли писать простые программы в Xamarin? Есть базовые знания в C#. Стоит ли лезть в эту тему?
377 Кб, 1600x1200
#521 #629627
>>596036 (OP)
Аноны, пилю клавиатуру без активити. Нужно, чтобы при клике на Key он менял изображение. Нихуя не пойму в http://developer.android.com/intl/ru/reference/android/inputmethodservice/Keyboard.Key.html Помогите разобраться.
The Busy Coder’s Guide to Android Development #522 #629640
Сап, андроны. Полистал я эту вашу The Busy Coder’s Guide to Android Development, годнота годнот. Но в интернетах одно старье, хотя автор уже запилил 7-ую версию с SDK6.

Сходил я на https://commonsware.com/warescription, годовая подписька (включает все обновления) стоит СОРОК ПЯТЬ БАКИНСКИХ, что в новых реалиях слишком дохуя. В связи с чем предлагаю скинуться. Заявки принимаются неделю (до 27.01) по адресу: tbc)7{gtadANUSya'w'ndexPUNCTUMr>X%u. Указывайте потолок, который готовы выложить (лично я готов потратить $5-7 из своих $19 стипухи). Если есть знакомые ведродевелопы -- зовите.

Все принявшие участие будут получать обновления как только они будут выходить (или пока какой-нибудь крысакун не скинет книжку в сеть и нашу подпиську аннулируют -- лицензии у книжки именные.)
#523 #631234
Анон что хуйня с этой обновой?

To install:
- Google APIs Intel x86 Atom_64 System Image (system-images;android-21;google_apis;x86_64)
- Android SDK Tools (tools)

Installing Google APIs Intel x86 Atom_64 System Image
Downloading https://dl.google.com/android/repository/sys-img/google_apis/sysimg_x86_64-21_r10.zip
An error occurred during installation: Cannot download 'https://dl.google.com/android/repository/sys-img/google_apis/sysimg_x86_64-21_r10.zip': На устройстве не осталось свободного места
, response: 200 OK.
Failed to install Google APIs Intel x86 Atom_64 System Image!

Installing Android SDK Tools
Downloading https://dl.google.com/android/repository/tools_r25.0.2-linux.zip
#524 #631264
>>631234
Скчала новую ДроидСтудия, новый эмулятор ахуенен
#525 #631265
>>631264
Canary bild конечно
#526 #634007
Начал учить жаву неделю назад, пока все окей. На каком моменте мне нужно завязывать с джавой и вкатываться в андроид?
#527 #636585
>>634007
лучше параллельно всё это делать.
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 28 января 2016 года.

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

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