Сохранен 521
https://2ch.hk/pr/res/525732.html
Прошлые домены больше не функционируют, используйте адрес ARHIVACH.HK.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Разработка под Android тред №5

 Аноним OP 05/08/15 Срд 05:06:10 #1 №525732 
14387403705930.png
Учитывая, что яблоко ненужно разработка под яблоко и андроид нихуя не одно и то же, решил таки создать отдельный тред.
Коротко о главном:
1) Если ты учил джаву но не хочешь пилить тырпрайз до конца жизни - то добро пожаловать в андроид разработку.
2) Android Studio & Java - единственный легитимный набор.
3) Xamarin -для богатых и ебанутых виндовсопоклоников, медленно и невыгодно, но на шарпах.
4) PhoneGap - не пробовал но осуждаю, как и весь не-web на 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. Хотя чего тут объяснять.

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


Пред. тонет тут: http://2ch.hk/pr/res/514927.html
Аноним 05/08/15 Срд 05:08:18 #2 №525734 
И снова я врываюсь со своим https://2ch.hk/mobi/res/568871.html

Хотел бы найти тут людей, которые бы мне помогли:

1. Сделать учебник по ассемблеру dalvik - это просто, надо написать 2 сотни функций вида

int testopcode_12345(int a, int b){
int c=a+b;
return c;
}

C подробным описанием. Это несложно, но долго. Если хотите выучиться ассемблеру под ведро, это для вас. Мануалами снабжу

2. Нужно составить карту фреймверков ведроида. По ссылке есть архив, в нем текстовая база с пермишшенами, хотелось бы расширить примерно так:

Landroid/os/Environment;.getExternalStorageDirectory (Info) Access to default SDCard

Ljava/io/FileOutputStream;.<init> (Possible) File writing

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

3. Нужно создать базу пекеджей вроде
android/annotation - ненужное говно от компилятора
android/support/v4 - библиотека костылей
com/actionbarsherlock - костыль для акшонбара и не только
com/google/ads - реклама от гугля
com/google/android/gms - гуглозонд
com/lmsa/cqkv143768 - airpush троянец
com/startapp/android - еще одни рекламные пидоры

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

По такой базе можно резать гадости/обновлять нужности

Если заинтересовались, пишите какие-то контакты. Ну и предложения как такие базы наполнять тоже, я слабо представляю как запилить групповой датаентри.
sageАноним 05/08/15 Срд 05:20:29 #3 №525737 
>>525732 (OP)
> Учитывая, что яблоко ненужно разработка под яблоко и андроид нихуя не одно и то же, решил таки создать отдельный тред.
Долбоёбы, опять из-за своего ctrl+c ctrl+v проебали зачёркивание. И вообще в пизду этот юморок для семиклассников.
> Android Studio & Java - единственный легитимный набор.
И сразу пошли нахуй.
Аноним 05/08/15 Срд 15:22:43 #4 №525843 
>>525737
Тебя ебет что там написано? Главное ссылки же и сам тред.
Проебал потому что Срд 05:06:10, приехал сонный в говно, а тред в бамплимите.
>И сразу пошли нахуй.
Потому как официальная поддержка маня и тысяча,нет сотни тысяч примеров, сам на чем пишешь?
Лучше доебался бы до ссылок и тд, они хотя бы несут реальную пользу.
sageАноним 05/08/15 Срд 16:02:06 #5 №525871 
>>525843
> сам на чем пишешь?
Eclipse+Java. До некоторых пор этот набор был официальным.
Аноним 05/08/15 Срд 17:39:20 #6 №525941 
>>525871
>Eclipse
Все, иди нахуй. Говно ненужно так как есть идея.
Аноним 05/08/15 Срд 18:10:16 #7 №525953 
14387874166450.png
>>525732 (OP)
XAMARIN-мажор вкатился, есть ли тут еще такие аутисты?

первый-раз-в-тематике
Аноним 05/08/15 Срд 18:47:04 #8 №525974 
>>525871
Просто иди нахуй, убогий говноед. Я после идеи/студии вообще забыл про эклипс.
sageАноним 05/08/15 Срд 18:55:03 #9 №525977 
>>525941
>>525974
В андроид студии нельзя держать несколько проектов открытыми одновременно в одном окне. В идее, скорее всего, тоже. И нахуй они мне такие нужны?
В чём их профиты перед эклипсом?
А главное с хуяли наборы eclipse+java и даже idea+java нелегитимны? Потому что какой-то хуила в 1 посте так написал?
Аноним 05/08/15 Срд 19:02:35 #10 №525980 
>>525977
> В чём их профиты перед эклипсом?
В том что Eclipse ADT плагин прекратили поддерживать

http://android-developers.blogspot.ru/2015/06/an-update-on-eclipse-android-developer.html
Аноним 05/08/15 Срд 19:19:29 #11 №525991 
>>525953
Для серьезных проектов не подходит.
sageАноним 05/08/15 Срд 19:27:31 #12 №526001 
>>525980
Ну и похуй. Создали неудобное говно и форсят, забивая на привычные удобные инструменты. Хотя я сам плагин не обновлял около года, надеюсь, он ещё долго проработает.
Аноним 05/08/15 Срд 21:33:59 #13 №526056 
>>526001
>привычные удобные инструменты
>устаревший говноеклипс
Аноним 05/08/15 Срд 21:43:42 #14 №526063 
14388002221290.png
14388002221301.png
В студии не работает дебаг. Пик2 - рабочие брейкпоинты в отладке только в первой лаунчер активности, как только перехожу на вторую, получаю пик1 и выполнение не останавливается. Причем первый пик именно в отладке.
sageАноним 05/08/15 Срд 21:50:51 #15 №526067 
>>526056
Нынче вместо аргументов принято сразу использовать гринтекст? Вроде долбоёб, а вроде всегда есть что сказать.

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

А судя по здешним постам, из-за градла студия тормозит весьма значительно, а памяти она так же ест овердохуя хоть это и не проблема для меня.
Аноним 05/08/15 Срд 22:33:24 #16 №526094 
>>526067
>напоминаю про несколько проектов в 1 окне
Это не профит а говно. Открывая один преокт у тебя несколько вариантов его отображения что удобно пи создании интерфейсов и тд. Да и индексирование для многих проектов долго делать. Нужно два проекта открывай два окна, тебе дали возможность, да и путаешься меньше.
Градл вообще не проблема студии.
А еще ты тупая утка.
Аноним 05/08/15 Срд 22:35:02 #17 №526097 
>>526063
Нихуя не понятно. Обнови версию, у меня две обновы назад проблемы с дебагом были.
sageАноним 05/08/15 Срд 22:54:32 #18 №526104 
>>526094
> Открывая один преокт у тебя несколько вариантов его отображения что удобно пи создании интерфейсов и тд.
Редко когда вообще пользуюсь xml разметкой, да и в итоге всё равно надо эмулятор открывать чтобы нормально всё отладить.
> Нужно два проекта открывай два окна, тебе дали возможность, да и путаешься меньше.
Нужно 10 проектов - открывай 10 окон. Классно придумал.
> Градл вообще не проблема студии.
Ну да, ведь студия может и без градла... Нет блядь, не может.
> А еще ты пок кудак кококо
Ясно.
Аноним 06/08/15 Чтв 02:06:47 #19 №526181 
Анонсы, было полусырое приложение с двумя активити - одно для логина, второе главное. В главном активити было дохуя фрагментов внутри фрагментов иногда ещё внутри фрагментов. Решил подробить эту ебалу на 5 активити, внутри которых уже нет такой вложенности. Теперь вопрос - как сделать для пяти активити один тулбар? Чтобы и код не дублировал и чтобы не отжирал ресурсов инб4 нихуя не отжирает, а у меня пунктик на ресурсы
Аноним 06/08/15 Чтв 02:09:54 #20 №526182 
>>525977
Так несколько рабочих столов заведи. У макосей ваших есть, у линуксов есть, даже на шин завезли.
sageАноним 06/08/15 Чтв 02:37:24 #21 №526192 
>>526182
В студии можно в разных окнах проекты держать, что одно и то же.
А вот в одном окне нельзя.
Аноним 06/08/15 Чтв 07:22:12 #22 №526242 
>>525991
А ты пробовал? Хочу услышать дельные аргументы.

У меня есть парочка законченных коммерческих проектов. Не вижу особых проблем, это же просто C# обертка над android-api классами - там можно делать все тоже что и в чистом android.

>>526181
Android может убивать невидимые активити (если у тебя нет жестких ссылок на них) - освобождая память.
Аноним 06/08/15 Чтв 09:35:24 #23 №526266 
>>526104
>Редко когда вообще пользуюсь xml разметкой, да и в итоге всё равно надо эмулятор открывать чтобы нормально всё отладить.
Ебать мой хуй.
А когда добавляешь 5 елментов в уж существующий лейаут? Удобнее октрывать андроид отображением.
А когда только создаешь удобнее обычным пекеджем и тд.
>Нужно 10 проектов - открывай 10 окон. Классно придумал.
Это нечитабельное говно будет.
>Ну да, ведь студия может и без градла... Нет блядь, не может.
Градл сейчас офф борщик, пиши петицию.
А теперь иди на хуй.
Аноним 06/08/15 Чтв 13:49:46 #24 №526362 
>>526181
На ум приходит только создавать Тулбар программно в onCreate() абстрактной активити, а все твои 5 активити унаследовать от этой и вызывать там super.onCreate().
Аноним 06/08/15 Чтв 15:49:34 #25 №526437 
>>525953
Сап, начал работать на Xamarin пару недель назад, ибо студент первый курс, и весь курс учили шурп, было стрёмно, что с джавой зафейлю (т.к. появилась неплохая возможность проявить себя, написав моб приложение для одного сайта, и надо было решать быстро). По итогу, часть туториалов смотрел на джаве, на уровне синтаксиса всё совершенно поянтно, и проблем никаких небыло вообще. Как думаешь, для такого ньюфага, как я, есть смысл дальше юзать Ксамарин, или проще то же самое на Джаве делать (т.е. лютым знанием аптек Шарпа не обладаю, что один из его плюсов главных, а с Джавой тупо больше мест, с которых учиться/копипастить)?
П.С. Бизнес-версию Ксамарина бесплатно получил по студентской программе, работаю в ВС13 Ultimate, знание английского очень хорошее.
sageкеккер 06/08/15 Чтв 17:32:42 #26 №526491 
>>525737
2чую
Аноним 06/08/15 Чтв 17:35:38 #27 №526494 
>>526192
Не знаю, зачем тебе держать больше одного проекта в одном окне. По мне так куда проще прыгать по по рабочим столам по хоткею.
Аноним 06/08/15 Чтв 17:36:56 #28 №526496 
>>526242
То есть по тулбару для каждого активити - нормальная практика и меня не обоссут коллеги по цеху, увидев такой подход?
Аноним 06/08/15 Чтв 17:38:27 #29 №526497 
>>526362
Попробую так сделать, спасибо.
Аноним 06/08/15 Чтв 17:40:41 #30 №526498 
>>526437
Выучи или азы освой, это не долго core java. И себе проще сделаешь, и людям, которые не будут потом охуевать с проекта, составленного из непонятной пасты.
Аноним 06/08/15 Чтв 18:01:05 #31 №526505 
>>526498
Java Core это, другими словами, "основы Джавы"?
Пока весь проект я сам пилю (приложение это), вполне неплохо получается, всё более чем читабельно. Не понял про непонятную пасту.
sageАноним 06/08/15 Чтв 18:15:26 #32 №526510 
>>526494
Просто потому что их много и нередко приходится править что-то сразу во всех.
Аноним 06/08/15 Чтв 18:33:22 #33 №526517 
Поясните за drawable. Вот есть у меня картинки для разных экранов - mdpi, hdpi, xhdpi, xxhdpi. Есть пустая папка drawable в проекте и соответствующие разрешениям 4 папки mipmap. Как рекомендует гугл в этих mipmap папках надо закидывать только иконку твоего приложения, а для остальных картинок использовать папку drawable. Хорошо, я беру и создаю в пустой папке drawable 4 папки с приставками mdpi, hdpi и так далее. Закидываю туда файлы, но из кода (R.drawable.myimage) картинок из этих папок не видно. А если закидываю картинки еще и в корень папки, то все норм.
Так вот вопрос, в корень папки drawable какого разрешения картинки кидать?
Аноним 06/08/15 Чтв 18:38:39 #34 №526524 
>>526505
>больше мест с которых можно копипастить
Аноним 06/08/15 Чтв 18:40:07 #35 №526526 
>>526517
Делай все в векторе. Лоллипоп поддерживает, старте умеет в библиотеку суппорта. Есть утилиты, которые из svg преобразуют в XML.
Аноним 06/08/15 Чтв 18:41:14 #36 №526528 
>>526437
> Бизнес-версию Ксамарина бесплатно получил
В свое время пробовал триал, потыкался в VS2015 - это же ад, все тормозит и глючит, на маке как-то лучше кодится в Indie. Единственное нехватает CI (она только у бизнеса).

> есть смысл дальше юзать Ксамарин
Я бы посоветовал на Java напирать - тупо вакансий в 10 раз больше. Также Xamarin обычно юзают кампании которые экономят на разработке.
Да я сам java-разработчик, просто хотел попробовать что-то новое.
Аноним 06/08/15 Чтв 18:55:28 #37 №526534 
>>526526
Ну а если уже все в png сделано. Таки какое разрешение в корень папки drawable класть? Или я не там ищу или хуй знает. На developer.android объяснения не нахожу.
Аноним 06/08/15 Чтв 19:27:09 #38 №526542 
>>526524
Реализацию каких-то моментов мелких я имел ввиду, типа обновлений местоположения или еще чего-то. В смысле, что больше каких-то похожих проектов готовых будет, где можно посмотреть, каким образом кто-то сделал то, что ты хочешь сделать. Только по документации официальной сложновато разбираться мне.

>>526528
Не знаю, всё отлично. Чему тормозить, как бы надстройка над ВС, как СВН какой-то. Пару секунд .axml-и грузит, внешний вид именно, соурс сразу доступен. Запускается на их эмуляторе намного быстрее чем на андроида стандартном.

То есть нативно разрабатывать тупо выгоднее? Я думал, что говорят, мол сделай моб приложение классное, и всё равно чем достигаешь результата.
Вроде разница не большая, и если всё равно джаву планировал учить, то перебраться и часть опыта использовать можно будет легко?
Аноним 06/08/15 Чтв 19:49:37 #39 №526548 
>>526542
> То есть нативно разрабатывать тупо выгоднее?
Лучше идти в компанию где разрабатывают нативно.
Просто я встречался с такими подходами:
Мобильный отдел iOS и отдел Android - в каждом из них параллельно разрабатывают приложение. Общего кода либо нет либо по минимуму.
Отдел из универсалов/эникейщиков - которые фигачат на xamarin (может еще и бэкенд на asp.net рубят)
Очевидно что первый вариант более дорогой и его может себе позволить компания с хорошим доходом.
Аноним 06/08/15 Чтв 20:47:51 #40 №526565 
>>526548
Но опыт перед этим какой-то должен быть. Я к тому, что последующие возможности лучше реализовывать через нативный кодинг моб приложений. Вот сейчас делаю на андроид на ксамарине, на iOS тогда лучше на Objective-C писать стараться, и следующие под ведро приложения на Джаве в их средах разработки, правильно понимаю?
Аноним 06/08/15 Чтв 21:00:38 #41 №526568 
>>525953
Поясни за ксамарин, будь добр, я нубс:
1) что там с ценой? Я скачал с их сайта и установил всякие вещи в визуальную студию; я теперь могу написать апликейшн и выложить его в стор? Какие ограничения и вот это всё?
2) Какие вообще подводные камни? В сисярп-треде написали, что приложение грузится около-долго и ещё что-то.
Аноним 06/08/15 Чтв 21:29:54 #42 №526577 
>>526568
2) просрешь в производительности, она и так хромает из-за огромного разнообразия девайсов, так тут вообще пипец.
Аноним 06/08/15 Чтв 22:22:21 #43 №526592 
>>526534
мб ты обосрался с именованием папок. Папка drawable предназначена для xml файлов. Если ты кидаешь в папку drawable-hdpi иконку и она не видна через R.drawable, то либо ты папку не там разместил, либо сделай clean.

>>526497
ТруЪ вариант это создать стандартный menu.xml. в котором будут все стандартные кнопки тулбара, а цвет для всех тулбаров установить через тему в style.xml
Аноним 06/08/15 Чтв 22:23:02 #44 №526593 
>>526534
Если иконки не сильно сложные в исполнении, ничего сложного перерисовать в том же inkscape в svg. Самому так пришлось недавно корячиться, дело одного туториала на ютубе и полутора часов времени.
Аноним 06/08/15 Чтв 23:29:47 #45 №526629 
>>526592
> Папка drawable предназначена для xml файлов.
Вообще drawable аналогичен drawable-mdpi. Но потом уже повелось кидать xml в drawable, а пикчи для mdpi в drawable-mdpi.
Аноним 07/08/15 Птн 16:37:50 #46 №526860 
Бля, работу найти не могу.
Сделал тестовое, вообще всем похуй, хоть бы блять отписали что-ли.
Аноним 07/08/15 Птн 18:54:26 #47 №526909 
>>526565
Я бы советовал забыть про Xamarin и решать кем ты хочешь быть: Android/Java или iOS/Object-C девелопером

>>526568
1) без крэка ты и не скомпилишь ничего под VS, там нужна минимум BUSINESS лицензия. Можешь на Xamarin Studio попробовать, но на free ты только калькулятор собирешь (ограничение 64kb на код)
2) Это я и написал :) реально долго стартует, пришлось даже splash-screen делать. А дальше будешь долго искать утечки памяти и думать, а как же оптимизировать, ведь их профайлер работает тоже только под BUSINESS
Аноним 07/08/15 Птн 19:16:37 #48 №526919 
Короч 2 вопроса.

1. Нативные либы аллочат память в куче?
2. Реально ли в рантайме через рефлекцию вытащить все объекты заданного типа в стиле Runtime.getObjectsOfType(Foo.class)
3. Можно ли так тащить объекты, инстансированные в нативной либе?

Суть: вытащить объект Camera из нативной либы, которая работает с видео.
Аноним 07/08/15 Птн 19:22:14 #49 №526926 
Ребят, подскажите годный эмулятор для арча. Стандартный наверняка будет грузиться оче долго, как и на винде.
Аноним 07/08/15 Птн 19:25:25 #50 №526927 
>>525871
А я поддержу тебя. Сам хочу спрыгнуть с идеи на эклипс, т.к. во многих компаниях требуют его. Осталось только дебагом научиться пользоваться и я перепрыгиваю.
Аноним 07/08/15 Птн 19:37:50 #51 №526934 
>>526919
1) через какой-нибудь malloc нет, но если ты создашь java объект то да
2) нет
3) нет
в правильности ответов не уверен

Я бы посоветовал бы найти api которые создает Camera и изучить его сорцы, может оно где-нибудь хранить копию ссылки (типа массив всех созданных инстанцев в Android это любят) и через рефлексию вытащить.
Аноним 07/08/15 Птн 19:42:36 #52 №526937 
>>526909
Я как бы студентота, на второй курс перехожу, просто пробую всё, где появляется хоть какая-то возможность проявить себя. С узкой специализацией сложно решить, когда нигде ничего не делал, та и рано еще, в принципе. Например, с осени буду еще Python+Django пробовать. А это приложение, которое почти допиленное на Xamarin.Android (на Джаву потом тоже для интереса смогу переписать), хочу еще и на iOS сделать аналогичное, так на чем лучше это сделать, на Xamarin или нативно написать?
Аноним 07/08/15 Птн 20:24:04 #53 №526952 
>>526937
Уже говорили что нативно.
На ведро и иос сразу забей, потому как и так дохуя ньюансов в самом ведер, как в иосе хз.
Аноним 07/08/15 Птн 20:45:42 #54 №526955 
>>526909
>>526577
спасибо за ответы, анончеки
Аноним 08/08/15 Суб 01:46:33 #55 №527054 
>>526926
Genymotion же. А так возьми телефон, открой 5555 порт и adb connect, ещё захочешь.
Аноним 08/08/15 Суб 21:44:53 #56 №527318 
Посоны,а как вы монетизируете свои приложения и какой выходит доход?А то я реальных цифр нигде не могу найти,одна вода кругом.
Аноним 08/08/15 Суб 21:55:01 #57 №527321 
>>527318
Плюсую вопрос. И сколько первый залив в плеймаркет идет, и сколько - обновлений?
Аноним 08/08/15 Суб 22:09:03 #58 №527324 
>>527318
>>527321

Очевидный ответ: рекламой, in-app purchases.

Реальная цифра от меня: 500р месяц. Желание увеличить эту цифру есть, но нет времени.
Аноним 10/08/15 Пнд 18:46:21 #59 №527935 
14392215818060.png
Сап, аноны, подскажите ньюфагу.
1. Хочу сделать переходы между двумя внешними видами (список айтемов каких-то, клик на один из них - страница с подробной информацией) (пикрелейтед). А при нажатии "назад" в тулбаре страницы подробной информации, возвращаться назад. Как лучше это реализовать? Проще всего двумя активити наверно (стартовать второе при клике на айтем из списка), а как тогда тулбары связать? Или фрагменты в МейнАктивити менять, засунув в какой-то ФрагментХолдер?
2. В МейнАктивити есть вкладки (Sliding Tab), на одной из них Gmaps Fragment. Как при нажатии некой кнопки на этом фрагменте, менять его на другой фрагмент (вышеописанный список)?
Постарался суть объяснить, если совсем другие реализации этих действий проще - укажите, как считаете нужным.
Аноним 10/08/15 Пнд 18:53:57 #60 №527938 
>>527935
> Как при нажатии некой кнопки на этом фрагменте, менять его на другой фрагмент (вышеописанный список)
fragmentManager.replace
> а как тогда тулбары связать
Во второй активити тулбару назначаешь this.onBackKeyPressed()
Аноним 10/08/15 Пнд 18:58:23 #61 №527940 
>>527935
1. Тулбар в общем родителе активити, от которой наследуются все остальные.

2. Реплейсить фрагмент в фрагмент контейнере. Если нужно перейти на фрагмент из слайдинтабс, то через вьюпейджер установить нужный фрагмент текущим.
Аноним 10/08/15 Пнд 19:17:19 #62 №527947 
>>527935
Тестовое?
Аноним 10/08/15 Пнд 19:28:37 #63 №527949 
>>527935
1. Оба варианта верны. Что значит "связать тулбары"? Если тебе нужен они переход назад по стрелке, как на пике - для этого вроде есть встроенная опция тулбара. Реализовать выход из активити можно и самому.

2. Тебе нужно перелистывать вкладку, на которой висит этот список, или менять фрагмент в этой-же вкладке?
Аноним 10/08/15 Пнд 19:44:43 #64 №527956 
14392250833710.png
14392250833721.png
>>527938
>>527940
>>527949
На счет тулбаров вроде разобрался, можно просто во втором активити гасить текущее при нажатии на стрелку, и тогда сразу попадешь обратно в момент выхода из первого, ведь так? Быстродействие от такого "лобового" способа не пострадает?

На счет второго: менять фрагмент в текущей вкладке. Опять же постарался изобразить (первый пик). Во втором - то, как создаются сами вкладки, и конструктор, который используется. Как в таком случае это сделать можно?

Да, C#, да, VS, да, Xamarin, не бейте ногами, синтаксис практически один в один с Джавой.
Аноним 10/08/15 Пнд 19:46:06 #65 №527957 
>>527956
Ну и во втором варианте (первый пик) такая же кнопка где-то есть, чтоб вернуть в изначальный вид.
Аноним 10/08/15 Пнд 20:14:14 #66 №527969 
>>527956
Ксамариноблядь не человек. Вон из треда! Твоё место у C# - параши
Аноним 10/08/15 Пнд 20:26:04 #67 №527975 
>>527969
Лол, ты серьезно?
Ну скажи, как на Джаве ты бы это сделал, я разберусь.
Аноним 10/08/15 Пнд 20:32:45 #68 №527976 
>>527975
>синтаксис практически один в один с Джавой.
Боюсь представить как оно на иос работает.
Аноним 10/08/15 Пнд 20:50:19 #69 №527985 
>>527976
Еще скажи, что шарп и джава не похожи в синтаксисе. Зная шарп на слабеньком уровне, читать код/гайды на джаве вообще проблем нет.
Аноним 10/08/15 Пнд 22:01:48 #70 №528016 
>>527985
Двачую, только делегатов и событий не хватает дико. Везде эти ебанные сопли-листнеры.
перекатился с вп на ведро
Аноним 10/08/15 Пнд 22:02:50 #71 №528018 
>>527985
Та мне вообще интересно как оно на иосе работает. Так как ксамарин перепизженый на шарп андроид сдк.
Аноним 10/08/15 Пнд 22:03:17 #72 №528019 
>>528016
>Двачую, только делегатов
Ты где их юзал то?
Аноним 10/08/15 Пнд 22:03:38 #73 №528020 
>>528016
В 1.8 есть же.
Аноним 10/08/15 Пнд 22:05:36 #74 №528021 
>>528019
А ивенты как делать будешь? Дальше сопли анонимных листнеров жевать?
>>528020
Ну здорово, только на ведре 1.7.
Аноним 10/08/15 Пнд 22:16:56 #75 №528027 
>>527956 >>527957
Срачи это, конечно, традиционно, но бампану вопрос.
Аноним 10/08/15 Пнд 22:22:22 #76 №528031 
>>528021
Во-первых, я юзаю листенер со свичем и твой делегат насасывает.
Во-вторых делегаты нечетабельны что критично для листенера.
В-третьих иногда один листенер имеет несколько методов.

>Ну здорово, только на ведре 1.7.
Я это так и не понял, юзаю себе 1.8 и спокойно все компилится. Подтверждениям жабы 8 считаю то что студия сама мне лямда выражения хуярит.

И таки я хз почему они взяли 1.7 а не 1.8
Аноним 10/08/15 Пнд 22:23:01 #77 №528034 
>>528031
>лямбда
Аноним 10/08/15 Пнд 22:23:06 #78 №528035 
>>527956
Самое время пихать фрагменты во фрагменты!
У тебя общий фрагмент создается в адаптере, в котором уже будет 2 фрагмента - детаилвью и мапвью.
Аноним 10/08/15 Пнд 22:40:43 #79 №528039 
>>528035
Не совсем понял. Сделать в Таб1Фрагменте ФрагментКонтейнер некий, и в него Трансактить Таб1КартаФрагмент или Таб1СписокФрагмент в зависимости от нажатия кнопки?
Аноним 10/08/15 Пнд 23:01:56 #80 №528044 
Завтра собеседование, пожелайте удачи.
Аноним 10/08/15 Пнд 23:20:23 #81 №528053 
14392380231330.jpg
>>528044
Аноним 10/08/15 Пнд 23:22:36 #82 №528055 
>>528053
Вот пидоры.
Аноним 10/08/15 Пнд 23:45:14 #83 №528073 
>>528031
> И таки я хз почему они взяли 1.7 а не 1.8
Потому что андроид вышел хуй знает когда, когда 1.8 не было.
Аноним 10/08/15 Пнд 23:50:23 #84 №528079 
>>528073
Лолка? 1.7 сейчас на 5.0.+
А лолипоп вышел позже 1.8 вроде.
Аноним 11/08/15 Втр 00:25:23 #85 №528102 
>>528079
> Лолка? 1.7 сейчас на 5.0.+
И?
Аноним 11/08/15 Втр 02:38:44 #86 №528131 
14392499248050.jpg
Сделал приложение которое показывает погоду по забитым координатам по гайду с одного сайта. Все заебись, работает. Решил добавить определение местоположения и по нему показывать погоду. Залез на developer.android.com кое-как разобрался с гуглаписервисами, получил охапку ошибок(долго не мог понять почему градл не собирает проект, оказалось я преодолел порог в 65к+ методов), короче все поисправлял, получил долгожданные координаты своего местоположения.
Дальше решил еще отображать строкой город в котором находится на данный момент пользователь, полез опять на developer.android.com, нашел гайд и охуел от кол-ва кода. Это реально для получения просто названия города по широте-долготе надо столько кода? http://developer.android.com/training/location/display-address.html

И еще такая проблема, у меня в приложении иконка погоды (тучки, солнце, дождь и т.п.) и кнопка refresh, так вот, я когда запуская приложение они одного размера, а при нажатии на кнопку рефреш, эти две иконки уменьшаются в размере и в таком и остаются, с чем это может быть связано?
Вообще с этой папкой drawable ничего не понятно, гайды везде старые. Аноны вот посоветовали использовать векторы везде, но мне не очень хочется убивать кучу времени на перерисовку, учитывая, что это просто учебное приложение.
Аноним 11/08/15 Втр 02:46:42 #87 №528134 
>>528131
> долго не мог понять почему градл не собирает проект, оказалось я преодолел порог в 65к+ методов
Лол, как вы это делаете?
Я за 4 года ни разу не преодолевал этот порог. Ради интереса делал подсчёт - больше 15к не набиралось никогда.
Аноним 11/08/15 Втр 03:56:01 #88 №528149 
>>528134

Ну достаточно просто подключить гуглапи библиотеку.
In versions of Google Play services prior to 6.5, you had to compile the entire package of APIs into your app. In some cases, doing so made it more difficult to keep the number of methods in your app (including framework APIs, library methods, and your own code) under the 65,536 limit.
Вот у меня + еще 2 библиотеки и уже вылез за лимит.
Аноним 11/08/15 Втр 08:37:56 #89 №528167 
>>528102
То что 5.0.1 вышел позже жабы 1.8
>Потому что андроид вышел хуй знает когда, когда 1.8 не было.
Это хуйня.
Аноним 11/08/15 Втр 09:55:05 #90 №528185 
>>528167
Там наверняка появились новые инструкции и вся хуйня, из-за которой надо расширять возможности вм. То есть фичи 1.8 были бы доступны только на 5 и выше. А если ниже, то такой байткод просто бы не компилился => программа без совместимости с 4 андроидом. Классно придумано.
Аноним 11/08/15 Втр 12:01:33 #91 №528218 
>>528185
Где-то так, я думаю от виртальной машини зависит. Просто сколько тогда они свой арт пилили лет. Жабе 8 уже года 2-3.
Аноним 11/08/15 Втр 12:02:50 #92 №528219 
>>528185
Ах да, 1.7 штуки типа даймондов на 1.6 тоже не работают, так что хз-хз.
Аноним 11/08/15 Втр 13:08:49 #93 №528243 
>>528219
Даймонды - синтаксическая фишка. С ними или без - байткод одинаковый.
А вот например с лямбдами я не уверен. Там для них есть особые типы, которых нет в сдк - уже несовместимость.
Плюс они там какой-то новый инвок добавили, а значит + операция, которая в принципе не будет поддерживаться старыми вмками.
Аноним 11/08/15 Втр 13:12:57 #94 №528246 
>>528243
>А вот например с лямбдами я не уверен.
Ты мне либо не доверяешь либо хз.
У меня в коде студия сама в лямбды преобразовывает и все работает на ок.
А штука компилятор 1.6 что он неебет как даймонды хавать.
С байткодом поинтереснее, делегаты на физическом уровне вроде как тоже классы, но это уже слишком байтоебство.
Аноним 11/08/15 Втр 13:13:39 #95 №528248 
>>528246
>А штука в том, что компилятор 1.6 что он неебет как даймонды хавать.
Аноним 11/08/15 Втр 13:17:22 #96 №528250 
>>528246
> У меня в коде студия сама в лямбды преобразовывает и все работает на ок.
Я хуй знает, может какая-то фича в студии. У меня нет студии и 1.8 даже не стоит. Я видал плагин какой-то не помню для какой иде, который позволяет лямбды на 1.6 использовать - они просто сводились к интерфейсам.
Аноним 11/08/15 Втр 13:26:16 #97 №528251 
14392887768550.jpg
Программач, че за хуйня. Не могу закинуть сюда код, макаба ёбу дала, пишет, что использую слова из спам листа.
Аноним 11/08/15 Втр 13:29:06 #98 №528253 
>>528251
Уёбывай, спамер ебучий. На пастбин заливай, тут давным давно так.
Аноним 11/08/15 Втр 13:38:35 #99 №528254 
>>528253
http://pastebin.com/QY14ZUp8 (Не ебу, так залил или нет, надеюсь увидите)
Вобщем при вызове customAdapter.notifyDataSetChanged(); Выкидывает с nullpointer. Причем когда вызывается метод из onResume, всё окей. А когда я вызываю его ручками, то крашится. Собственно краш после того как я вызываю метод, а вызываю я его когда удаляю один элемент из списка. Поясните за notifyDataSetChanged, что я делаю не так? Андроши спасайте.
Аноним 11/08/15 Втр 13:44:30 #100 №528256 
>>528254
По Брикпоинтам выяснил что после customAdapter.notifyDataSetChanged(); вообще ничего происходит. Тоесть краш ровно на вызове метода. http://pastebin.com/DSE2PWSx
Аноним 11/08/15 Втр 13:56:49 #101 №528258 
>>528256
>>528254
Начал догадываться что я еблан. Инициализировал CustomAdapter в onCreate с ArrayListom, а когда он обновляется, естественно и nullPointer. А так как onResume вызывается после onCreate, вот он и не крашился, а если вызывал ручками то он обновлялся со старым Arraylist. Вобщем теперь новый краш, на этот раз на inflater = ( LayoutInflater )context.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
Вот вам лог
java.lang.IllegalStateException: System services not available to Activities before onCreate()
Аноним 11/08/15 Втр 13:59:17 #102 №528259 
>>528258
Вот вам лог
>java.lang.IllegalStateException: System services not available >to Activities before onCreate()

http://pastebin.com/JXRfYyuh
Аноним 11/08/15 Втр 14:07:44 #103 №528265 
>>528254
>Private Paste ID: QY14ZUp8
Ну тут я ебал регатся.
Аноним 11/08/15 Втр 14:10:00 #104 №528266 
>>528265
Ебучая макаба со своим спам листом. Раньше заливал код через MakabaCode и не выёбывался.
Сорян братишка, перезаливать уже нет смысла, я на каждый свой пост, нахожу ответ, а на каждый ответ по новому Экспешену.
Аноним 11/08/15 Втр 14:16:32 #105 №528269 
>>528266
Покажи блядский адаптер и я попробую помочь.

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

Аноним 11/08/15 Втр 14:17:29 #106 №528270 
>>528269
Хот не факт что у тебя именно это, мне код нужен короче.
Аноним 11/08/15 Втр 14:22:44 #107 №528278 
>>528270
Вот тебе код адаптера.
http://pastebin.com/1gtVnQqY

Вот тебе экспешен
http://pastebin.com/X1AdirWB

Теперь инфлейтер вызываю в MainActivty
inflater = getLayoutInflater();
И передаю с конструктором в адаптер.

Всё норм работает, до тех пор, пока я не удаляю элемент списка. Кстати если в списке элемент только 1, то всё ок, экспшена нет.
Аноним 11/08/15 Втр 14:26:11 #108 №528284 
>>528278
Через пол часика отпишу
Аноним 11/08/15 Втр 14:27:02 #109 №528287 
>>528284
Жду тебя антош.
Аноним 11/08/15 Втр 15:15:45 #110 №528322 
>>528287
Лол бля.
Во-первых, не нужнов конструктор кидать и мейнАктивити и лейаутИнфлейтер из него.
Кидай просто мейнАктивити и делай
mInflater = LayoutInflater.from(context);
Активити наследуется от контекста так что захавает. Если нужно из mInflater можно обратно контекс достать если нужно.
mInflater.getContext().
Во-вторых, замени на это, может в рут ноль не хочет жрать
row = mInflater.inflate(R.layout.item_list, parent, false);
Аноним 11/08/15 Втр 15:24:57 #111 №528335 
>>528322
Антош, не помогло.
Поменял на http://pastebin.com/7PVBLKd5
И опять пишет что вызвал систем сервис после онКриэйта. System services not available to Activities before onCreate()

parent, false тоже не помог.
Аноним 11/08/15 Втр 15:34:17 #112 №528340 
14392964579010.png
>>528322
>>528335
Получить контекст из инфлейтера тоже не может после удаления элемента списка.
Аноним 11/08/15 Втр 15:45:44 #113 №528348 
>>528340
>>528335
>>528322
Анончики помогайте. Нихуя не пойму, всё пашет, всё работает. Работает даже если в списке только один элемент и ничего не крашится когда я удаляю его. А когда элементов больше чем один, всё летит впизду.
Аноним 11/08/15 Втр 15:53:20 #114 №528355 
14392976000590.png
>>528348
Когда я удаляю эелмент из списка, в котором больше чем один элемент, почему то инфлейтер равен нулю.
Аноним 11/08/15 Втр 16:07:10 #115 №528368 
>>528355
Для удаления ты пересоздаешь адаптер?
Я хуею что-то с логики работы этой штуки.
Аноним 11/08/15 Втр 16:07:38 #116 №528369 
14392984582780.jpg
>>528355
Как я понял, инфлейтер живёт только от onCreate до onResume, всё остальное время null. Но мне блядь надо запускать обновку после удаления элемента из списка. Анооооныыыыыы
Аноним 11/08/15 Втр 16:08:08 #117 №528372 
>>528340
Короче, давай адаптер и давай активити где ты его юзаешь, сейчас подробно посмотрю что там за хуйня.
Аноним 11/08/15 Втр 16:08:38 #118 №528373 
>>528368
Я пересоздаю адаптер после удаления. Ведь notifyseDatachanged не пашет и выкидывает nullPointer.
Аноним 11/08/15 Втр 16:09:21 #119 №528375 
>>528373
Кидай код я перепишу ровно.
Аноним 11/08/15 Втр 16:11:12 #120 №528377 
>>528375
http://pastebin.com/vu0PTa7U MainActivity
http://pastebin.com/JFYYy3JS CustomAdapter
Аноним 11/08/15 Втр 16:25:37 #121 №528385 
>>528377
Это пиздец чувак, тут просто блять глаза выкатываются.
У тебя холдерпатерн нихуя не делает.
Какого-то хуя адаптер сидит в активити. Так не делай.
Советую переписать заново эти три класса ибо это вообще ни в какую.

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

Оставляешь свои uris в виде листа как уже сделано, хуяришь его в адаптер в онкрейте.
Адаптер создаешь один раз и навсегда.
Теперь при удалении из uris вызывай adapter.notifyDataSetChanged();

Если кинет ошибку пиши сюда, это хотя бы правильный подход.
Аноним 11/08/15 Втр 16:30:30 #122 №528392 
>>528385
Я так и делал с самого начала, просто я перепробовал всё, и конечным вариантом было пересоздавать каждый раз адаптер, так он хотя бы не выкидывал при удалении одного элемента.

По поводу говнокода это да. Он построен на экзамплах со всех интернетов. Дико извиняюсь, напишу функцию удаления, начну переписывать эти классы.
Аноним 11/08/15 Втр 16:31:43 #123 №528395 
>>528392
Делай так как я сказал, пускай будет как было с самого начала, как перепишешь кидай сюда ошибку.
Аноним 11/08/15 Втр 16:32:06 #124 №528396 
>>528392
>>528385

P.S
customAdapter.notifyDataSetChanged();
Вот так
java.lang.NullPointerException
at com.example.user.*.MainActivity.refreshView(MainActivity.java:231)

Аноним 11/08/15 Втр 16:32:44 #125 №528398 
>>528396
Подебаж, customAdapter до вызова не нал?
Аноним 11/08/15 Втр 16:35:03 #126 №528402 
>>528398
Именно нуль. В чем проблема?
Аноним 11/08/15 Втр 16:40:08 #127 №528409 
>>528402
Дай мне новый класс уже без пересоздания адаптера.
Аноним 11/08/15 Втр 16:42:07 #128 №528413 
>>528409
http://pastebin.com/F49w7iwK Main
http://pastebin.com/wMPACXbJ Adapter (уже без холдера ^_^)
Аноним 11/08/15 Втр 16:45:19 #129 №528416 
>>528413
Странно.
Попробуй напрямую с вьюхи вытянуть.
Аноним 11/08/15 Втр 16:48:44 #130 №528419 
14393009242760.png
>>528416
Что вытянуть, с какой вьюхи? Сорян но нихуя не поняль.
Аноним 11/08/15 Втр 16:51:32 #131 №528422 
>>528416
Если ты про вызвать notifyDataSetChanged из другой view, то всё ок, всё вызывается не крашится адаптер не нуль.
Аноним 11/08/15 Втр 16:52:22 #132 №528423 
>>528419
lvTest.getAdapter().notifyDataSetChanged();

>>528422
Не из другой, а из той которая именно этот юзает.
Аноним 11/08/15 Втр 16:54:38 #133 №528427 
14393012785220.png
>>528423
Пару десятков эксепшенов назад, я пытался в поиски решений проблемы, и там был такой вариант. Но почему то адаптер мой не видит этот метод.
Аноним 11/08/15 Втр 16:56:52 #134 №528429 
Лол я решил вот этим.


BaseAdapter adapter2 = (BaseAdapter) lvTest.getAdapter();
adapter2.notifyDataSetChanged();
Аноним 11/08/15 Втр 16:58:52 #135 №528431 
>>528429
Блять, ты в кастомной вьюхе походу неоднозначно адаптер отдавал, потому и не видело метод.
((BaseAdapter) lvTest.getAdapter()).notifyDataSetChanged();
Аноним 11/08/15 Втр 17:02:47 #136 №528434 
>>528429
Не удивлюсь если ты внутри вьюхи этой удалял адаптер кстати.
Аноним 11/08/15 Втр 18:44:54 #137 №528508 
А подскажите пожалуйста, как можно запилить подобие фильтра для гуглокарт, чтобы при запуске активити на карте отображались все ближайшие макдональдсы или суды или церкви. Так вообще можно?
Аноним 11/08/15 Втр 18:48:57 #138 №528513 
>>528044
На джуна? Взяли?
Аноним 11/08/15 Втр 18:49:00 #139 №528514 
>>528434
Бля антош, спасибо за помощ. Завтра перепишу вызов notify как написал ты выше. Извиняюсь за мой говнокод.
Аноним 11/08/15 Втр 19:02:55 #140 №528520 
>>528514
Не за что.
>>528513
Ну зарплата джуна да.
Та хуй знает, я там буду один единственный на проекте опять. В рот ебал что-то. Хотя может еще и не возьмут.
Аноним 11/08/15 Втр 19:38:04 #141 №528543 
>>528520
ЗП джуна - это сколько? Город? Что спрашивали, почему "опять"? Или у тебя опыт есть?
Аноним 11/08/15 Втр 19:58:24 #142 №528554 
Аноны, как лучше реализовать список с константными значениями элементов? В моём случае, каждый элемент списка - это день недели (наименование), и ещё несколько параметров? Можно конечно просто сделать адаптер с неизменяемым списком внутри - но м.б. есть способ сделать это красивее, либо вообще задать всё через XML?
Аноним 11/08/15 Втр 23:48:32 #143 №528662 
>>528543
Пока еще нихуя не ясно потому говорить не хочу.
А из опыта есть апликуха полумертвая на плеймаркете, бывшая работа на стартапе.
Спрашивали просто чем занимался и тд, собеседовал явно не андроид разраб так как их там нету, потому все легко было.
Аноним 12/08/15 Срд 01:32:41 #144 №528696 
>>528554
Не думаю.
Но зачем тебе листвью тогда? Ее создали для динамического говна.
Ебани просто скроллвью со своими итемами.
Аноним 12/08/15 Срд 04:21:36 #145 №528721 
>>528696
> Ее создали для динамического говна.
Не обязательно.
Аноним 12/08/15 Срд 09:11:21 #146 №528768 
>>528721
Там половина методов всякие геткаунты и тд.
Аноним 12/08/15 Срд 12:26:07 #147 №528846 
>>528768
И что? У меня вот константные данные есть, 500 моделей. Здесь можно и нужно использовать listview или аналоги.
Аноним 12/08/15 Срд 12:29:17 #148 №528849 
>>528846
А у него блять 7 штук.
не ровняй жопу с пальцем, тебе вообще лучше подгружать их в процессе из бд.
Аноним 12/08/15 Срд 12:35:10 #149 №528856 
>>528849
Да всё равно, листвью даёт возможность кликать, рисовать разделители и главное это выглядит как и все остальные элементы системы. Искаропки - не надо ничего настраивать: въебал листвью, вьебал arrayadapter и добавил туда 7 строк.
> тебе вообще лучше подгружать их в процессе из бд.
Хуйню какую-то несёшь, при чём тут процессы и бд вообще?
Аноним 12/08/15 Срд 13:26:20 #150 №528885 
>>528856
>Хуйню какую-то несёшь
>500 моделей
Ты долбоеб если держишь их в оперативе.
И поясню специально для тебя что значит в процессе для листвью, когда скролишь блять.
7 элементов можно выводить статик вьюхами и не ебаться с заумными кликлистенерами внутри адаптера, не инфлейтить 7 вьюх отдельно.
Твое "из коробки" юзает овердохуя ресурсов и тд, усложняет написание ради нихуя.
А 500 элементов как раз требует листвью.
И вообще иди нахуй.
Аноним 12/08/15 Срд 13:43:11 #151 №528899 
7 статик элементов, вероятно, должны выглядеть одинаково и если потребуются обработчики нажатий на них, то код будет один. Дак почему бы не использовать для этого listView?
1 строчка кода для инициализации массива, вторая для создания адаптера из этого массива, третья для листвью из адаптера.
ListView в данном случае выполняет задачу "нарисовать всё одинаково, как список, чтобы потом не ебаться".
А для 500 я бы использовал RecyclerView. Говно то ещё, но он как раз для таких случаев.
Аноним 12/08/15 Срд 14:01:06 #152 №528902 
>>528899
>вторая для создания адаптера
Там не один текствью, потому прийдеться кастомный класс писать.

>А для 500 я бы использовал RecyclerView.
Это не ты доказывал что оно оптимальнее обычного листвью?
Хуйня с задачами, но если ты не юзаешь анимацию то в пизду.
Аноним 12/08/15 Срд 14:11:53 #153 №528904 
>>528902
Нет, не я. Я пробовал его, насосался хуёв, понял, что он по функционалу не дотягивает до ListView и вернулся к ListView.
>если ты не юзаешь анимацию то в пизду.
сосачую. Но разве recycler не бережёт ресурсы?
Аноним 12/08/15 Срд 15:46:32 #154 №528944 
Аноны, подскажите, как одну вью наложить на другую?
Аноним 12/08/15 Срд 15:46:40 #155 №528945 
>>528904
Каким боком? Основная работа в адаптере же.
Берешь листвью, наследуешься от бейсадаптера и хуяришь холдерпатерн.
Все. Остальное - байтоебство.
Сказал безработный джун.
Аноним 12/08/15 Срд 15:47:30 #156 №528946 
>>528944
Релейтив.
Аноним 12/08/15 Срд 15:49:07 #157 №528948 
14393837478710.jpg
>>528946
Спасибо анон.
Аноним 12/08/15 Срд 16:09:48 #158 №528962 
>>528885
> Ты долбоеб если держишь их в оперативе.
Сколько занимают в памяти простенькие молели? 50 кб? 100 кб? Или, о ужас, 150 кб?
С хуяли их не хранить в оперативке?
> 7 элементов можно выводить статик вьюхами и не ебаться с заумными кликлистенерами внутри адаптера, не инфлейтить 7 вьюх отдельно.
А и не нужно. Адаптер вообще не надо переопределять. 9 строк:
new ArrayAdapter
add
add
...
add
setAdapter
Сложно пиздец.
> Твое "из коробки" юзает овердохуя ресурсов и тд
Листвью юзает овердохуя ресурсов?..
Просто пиздец, что за хуйню я читаю.
>>528899
> А для 500 я бы использовал RecyclerView. Говно то ещё, но он как раз для таких случаев.
Сорта на самом деле.
Аноним 12/08/15 Срд 16:10:42 #159 №528965 
>>528946
Нахуя? Лучше FrameLayout.
Аноним 12/08/15 Срд 16:16:26 #160 №528972 
>>528962
>Сколько занимают в памяти простенькие молели? 50 кб? 100 кб? Или, о ужас, 150 кб?
Ну если понадобится прокинуть их куда-то насосешься хуев и обоже! замедлишь работу.
>А и не нужно. Адаптер вообще не надо переопределять. 9 строк:
Жопочтец, там несколько вьюх в итеме.
>Листвью юзает овердохуя ресурсов?..
Сравни с минимальными затратами на 7 отдельных итемов и отсоси.
>>528965
Сугубо удобнее.
Аноним 12/08/15 Срд 16:30:03 #161 №528977 
>>528972
> Ну если понадобится прокинуть их куда-то насосешься хуев и обоже! замедлишь работу.
Куда прокинуть? Я, кажется, несколько абстрактный пример с 500 итемами придумал в качестве аргумента за листвью. Куда тебя понесло?
> Жопочтец
Значение знаешь?
> там несколько вьюх в итеме.
Зависит от модели. Может там 1 строка, мне хватит передать ид дефолтного simple_list_item_1 или хуй знает как он называется.
> Сравни с минимальными затратами на 7 отдельных итемов и отсоси.
Байтоёб незаметен. Затраты сравнимы и не стоят отказа от листвью.
> Сугубо удобнее.
Одно и то же с той поправкой, что FrameLayout гораздо проще в своей реализации. Всё равно что использовать LinkedHashMap вместо HashMap, когда тебе фичи линкеда не нужны.
Аноним 12/08/15 Срд 16:57:29 #162 №529000 
>>528977
Ну 500 итемов в реальности нужно где-то хранить кроме оперативы. При опрокидывании в любое активити прийдеться тратить дохуя времени и тд.
>Значение знаешь?
Значит что ты жопой читаешь.
>Зависит от модели. Может там 1 строка, мне хватит передать ид дефолтного simple_list_item_1 или хуй знает как он называется.
Это к жопочтецу.
>каждый элемент списка - это день недели (наименование), и ещё несколько параметров
>Байтоёб незаметен. Затраты сравнимы и не стоят отказа от листвью.
Больше лишнего кода, больше ресурсов, хуйня короче, это не пейджервью у которой и аналога то нету.
>Одно и то же с той поправкой, что FrameLayout гораздо проще в своей реализации.
Проще, но это не одно и тоже, с рейлетивом мне лично было удобнее, хотя весь основной юи делаю блочной с линеарами.

Аноним 12/08/15 Срд 16:59:12 #163 №529002 
>>529000
>ВьюПейджер
Аноним 12/08/15 Срд 17:06:12 #164 №529010 
>>529000
> Ну 500 итемов в реальности нужно где-то хранить кроме оперативы. При опрокидывании в любое активити прийдеться тратить дохуя времени и тд.
Если это те же 100 кб - нет, не долго. Если это 1мб и более - оно просто не передастся.
> Это к жопочтецу.
Я не читал его пост, да. Ну тогда придётся гетвью писать, что нихуя не сложно.
> Больше лишнего кода, больше ресурсов, хуйня короче, это не пейджервью у которой и аналога то нету.
Кода меньше, причём ощутимо. Ресурсов больше совсем ненамного.
> Проще, но это не одно и тоже, с рейлетивом мне лично было удобнее, хотя весь основной юи делаю блочной с линеарами.
Задача: сделать одну вьюху поверх другой.
Реализация: Х-лейаут и 2 дочерних вьюхи, где Х-лейаут - Frame или Relative. Особых атрибутов нет, а значит разница в том, что ты напишешь в названии тега.
Вот и получается, что Frame в данном случае логичнее, а Relative не может быть удобнее. Это всё равно что использовать LinkedHashMap и не пользоваться итераторами, но заявлять, что "с ним удобно".
Аноним 12/08/15 Срд 17:12:18 #165 №529013 
>>529010
>Если это те же 100 кб - нет, не долго.
Это для твоего глаза недолго, а так это не оптимизированное говно.
>Кода меньше, причём ощутимо.
Это с листом-то кода меньше? Даже спорить не буду. Уже написал про адаптер.

>Вот и получается, что Frame в данном случае логичнее, а Relative не может быть удобнее
У рилейтива прямая связь к вьюхам. То что у тебя "не может быть удобнее" сугубо твое мнение. Хуярить блочный интерфейс на рилейтиве ошибка, а тут все ок.
С линкедом можешь ступать нахуй, так как это такое же байтоебство на кое ты мне указал, когда я обосрал листвью.
Аноним 12/08/15 Срд 17:22:02 #166 №529017 
>>529013
> Это для твоего глаза недолго, а так это не оптимизированное говно.
Байтоёбы-байтоёбушки
> Это с листом-то кода меньше? Даже спорить не буду. Уже написал про адаптер.
9 строк + еще getView.
Вручную это: 7 раз инфлейтить вручную вьюхи, вешать на каждый клик листенер, резолвить ресурсы фона вьюх и разделителей, ставить фон для вьюх, ставить разделитель в лейаут.
Можно через xml, но тогда опять получим весьма длинную разметку + скорее всего придётся вынести разметку одного итема. Ощутимо больше работы, тебе так не кажется?
> У рилейтива прямая связь к вьюхам
Чего?
> То что у тебя "не может быть удобнее" сугубо твое мнение.
Нет, я привёл сухой объективный факт в данном случае.
> С линкедом можешь ступать нахуй, так как это такое же байтоебство на кое ты мне указал, когда я обосрал листвью.
Пиздец ты тупой. Ты предлагаешь отказаться от удобств листвью в виду того, что он тяжёлый.
А в этом вопросе я предлагаю перейти на фрейм потому что релайтив вообще никаких удобств не прибавит для решения конкретной задачи.
Аноним 12/08/15 Срд 17:29:38 #167 №529024 
>>529017
>Ты предлагаешь отказаться от удобств листвью в виду того, что он тяжёлый.
В данном случае удобств ноль, одни блядь затраты. Я про это и толкую.
Тупой пиздец просто.

Аноним 12/08/15 Срд 17:32:19 #168 №529028 
>>529017
> 7 раз инфлейтить вручную вьюхи
Таки не удержался.
Это просто пиздец. Там статик данные их в тупую в иксемель засунуть можно. Но нет блять, я буду делать модели, буду держать словари для них и хуярить кастомный адаптер.
Иди нахуй.
Аноним 12/08/15 Срд 17:33:27 #169 №529031 
>>529024
> В данном случае удобств ноль, одни блядь затраты. Я про это и толкую.
Не делай вид, что не заметил разъяснений по поводу удобств в том же посте.
> Нет это ты тупой и ты байтоёб!
Кек.
Аноним 12/08/15 Срд 17:34:58 #170 №529032 
>>529028
> Это просто пиздец. Там статик данные их в тупую в иксемель засунуть можно.
Я и про это написал.
> хуярить кастомный адаптер.
Просто создать анонимный класс,7 дополнительных строчек - не много.
Аноним 12/08/15 Срд 17:35:03 #171 №529033 
>>529031
> но тогда опять получим весьма длинную разметку + скорее всего придётся вынести разметку одного итема. Ощутимо больше работы, тебе так не кажется?
Весьма длинная разметка версус куча исполняемого нахуй ненужного кода.
Сказать победителя?
Аноним 12/08/15 Срд 17:35:51 #172 №529035 
>>529032
>Просто создать анонимный класс,7 дополнительных строчек - не много.
Если бы 7.
Аноним 12/08/15 Срд 17:37:49 #173 №529037 
>>529033
> Сказать победителя?
Очевидный код потому что его меньше и без феерического размножения одних и тех же элементов разметки. Я так и представляю этот xml длинною в 400 строк против 30 строк кода.
Аноним 12/08/15 Срд 17:38:44 #174 №529038 
>>529035
> Если бы 7.
Для такого простого адаптера особо много строчек не надо.
Аноним 12/08/15 Срд 17:40:10 #175 №529040 
>>529037
>Я так и представляю этот xml длинною в 400 строк
>30 строк кода.
Дебил что-ли? Каких 400 бля? Уже не 7 строк кода?

>>529038
Да ты блять холдер только сделаешь уже больше будет.

Короче нахуй, меня это заебало. Пиздуй листвью куда попало, хуй с тобой.
Аноним 12/08/15 Срд 17:43:16 #176 №529042 
>>529040
> Дебил что-ли? Каких 400 бля?
Несколько textview, каждый в своём лейтауте и так 7 раз. Вполне 400 выйдет, а то и больше.
> Уже не 7 строк кода?
С новыми условиями - уже не 7, я и не отрицал.
> Да ты блять холдер только сделаешь уже больше будет.
Холдер тоже примерно на 5 строк, лол. А можно вместо холдера ёбнуть массив textview, не самый плохой вариант.
Аноним 12/08/15 Срд 18:52:54 #177 №529069 
14393947744850.png
Аноны, у меня сложный вопрос:

Хочу запилить небольшую библиотеку для быстрой интеграции с GCM.
Уже в принципе её запилил, но столкнулся с такой проблемой: при обновлении приложения с Play Market обновляется token девайса который надо передавать на сервер.

Чтобы сделать это, из библиотеки мне нужно запускать сервис приложения, в которое она интегрируется. Каким образом это можно сделать (minSdk = 14, Target = 22) ?
Аноним 12/08/15 Срд 19:07:27 #178 №529080 
>>529069
Ничего не понял.
В чем проблема сдублировать процесс который ты делаешь при установке апликухи?
Аноним 12/08/15 Срд 19:08:32 #179 №529082 
14393957126090.gif
Скажите, пожалуйста, вплоть до каокой версии API сейчас актуально вводить поддержку? Какова практика в большинсве контор?

Изучаю Support Library, поставил целевую SDK 22-ой версии, а минимальную 8-ую. Надо ли поддерживать такую архаичность?

Заранее спасибо.
Аноним 12/08/15 Срд 19:09:53 #180 №529083 
>>529082
14+
Аноним 12/08/15 Срд 19:11:26 #181 №529085 
>>526063
Хоть и не по твоей проблеме, но скажу. super.onStop(); должна быть первой строчкой метода.

http://developer.android.com/training/basics/activity-lifecycle/stopping.html#Stop
Аноним 12/08/15 Срд 21:26:36 #182 №529161 
Если в xml указывать в dp всё, то внешний вид будет одинаковый на всех устройствах?
Аноним 12/08/15 Срд 21:38:32 #183 №529164 
>>529161
Нет. Он будет зависеть от разрешения.
Он не будет зависеть от плотности пикселей - т.е. физический размер элементов в dp будет везде одинаков.
Используй библиотеку sdp.
Аноним 12/08/15 Срд 21:39:59 #184 №529165 
>>529164
Используй её только там, где это необходимо. Например экран ознакомления должег смотреться на всех экранах одинаково. Экран со списком должен га больших экранах вмещать больше элементов.
Аноним 12/08/15 Срд 21:49:54 #185 №529167 
>>529164
Еще библиотеки посоветуешь какие? Может для материал дизайна под все девайсы и тд?
Аноним 12/08/15 Срд 21:58:36 #186 №529173 
>>529164
>>529165
Спасибо, но тогда, видимо, забью и буду добавлять веса в элементы и в LinearLayout всё складывать. Тогда же пропорции сохранятся?
Аноним 12/08/15 Срд 22:10:41 #187 №529183 
14394066419810.png
Сразу вдогонку:
http://pastebin.com/x4APpYvM
Какого хуя два последних элемента, вложенных в один LinearLayot, и разделенные по весу, при выполнении выглядат рандомно? Причем этот рандом одинаковый, как я веса не менял.
Или я что-то неправильно делаю? Должно получится, как на пике, дезайнер показывает, что всё вроде как так, начинаю выполнение программы, добавляю текст - и всё совсем не так.
Аноним 12/08/15 Срд 22:23:40 #188 №529191 
>>529183
у тебя там всякие гравити и алигны, я бы попробовал их убрать. Для LinearLayot в этом мало смысла. И еще поставь layout_width = "0dp" для чайлдов. Их ширина определится по весу, нет нужды ее задавать.
Аноним 13/08/15 Чтв 00:02:32 #189 №529226 
>>529191
>И еще поставь layout_width = "0dp" для чайлдов. Их ширина определится по весу, нет нужды ее задавать.
Боже, лол, заработало. Спасибо огромное.
Аноним 13/08/15 Чтв 09:58:52 #190 №529323 
>>529083
Спасибо. Объясни, пожалуйста, почему именно именно эта версия, если тебя не затруднит?
Аноним 13/08/15 Чтв 10:02:34 #191 №529326 
>>529173
Веса влияют только на свободное пространство. Предположим, что существует несколько элементов с врэп_контэнт, но один из них в два раза больше других, а места, чтобы все выглядели пропорционально не хватает, тогда этот элемент и останется самым большим, а остальные разделят пропорционально свободное место между собой и будут одинаковыми.
Аноним 13/08/15 Чтв 10:34:07 #192 №529336 
>>529323
Не помню где отображается, но это около 95% устройств.
Аноним 13/08/15 Чтв 10:36:59 #193 №529337 
>>529323
А и да, с этой версии вроде именно с этой, это же 4.0.1 уже нормально хавает рефлексию и тд, фрагменты родные.
Короче 2+ уже ненужен.
Аноним 13/08/15 Чтв 11:02:24 #194 №529352 
14394529447700.png
>>529336
Понял, спасибо.

При создании проекта табличка есть :3
Аноним 13/08/15 Чтв 11:26:05 #195 №529358 
>>528508
бамп вопросу
Аноним 13/08/15 Чтв 12:43:23 #196 №529392 
>>529352
Я считаю, что можно даже на 4.1 уже переходить. Серьёзно.
Аноним 13/08/15 Чтв 13:19:07 #197 №529410 
>>529392
Да там похуй, много всяких фич уже в киткате+, все равно придется делать проверки на версию и тд.
Аноним 13/08/15 Чтв 13:51:05 #198 №529424 
>>529173
Используй размерность sdp для элементов,размер которых должен быть везде одинаков.
Аноним 13/08/15 Чтв 13:51:53 #199 №529425 
>>529424
https://github.com/intuit/sdp
Аноним 13/08/15 Чтв 17:07:45 #200 №529539 
Анончики, накидайте ресурсов где либы глянуть можно, типа этих:
https://android-libs.com/
http://android-arsenal.com/demo
Аноним 13/08/15 Чтв 17:14:05 #201 №529549 
>>529410
Нет, не похуй. В 4.1 добавили множество удобных геттеров, добавили кучу новых методов, пометив старые как устаревшие, и т.д.
Аноним 13/08/15 Чтв 17:20:56 #202 №529552 
>>529549
Может и так, я делал на 14+ проект и все ок было, ебался только с экономными батереями на киткатах и лолипопах.
Аноним 13/08/15 Чтв 17:33:22 #203 №529558 
14394764024130.png
Антоны, как уничтожить активити. Заебался уже. Есть стартовая активити, вызываю интентом следующую, там выполняются какие то действия, заполняются листвью и т.д. Как при нажатии баттона, мне вернуться на предидущую, а эту уничтожить, что бы при повторном её запуске, создалась уже новая активити, а не старая, заполненная.
Аноним 13/08/15 Чтв 17:38:47 #204 №529561 
>>529558
Разобрался, System.exit(0);
Аноним 13/08/15 Чтв 19:31:12 #205 №529614 
>>529558
> Как при нажатии баттона, мне вернуться на предидущую
this.onBackKeyPressed()

Ненужно ничего уничтожать, тем более >System.exit(0); таким способом.
Аноним 13/08/15 Чтв 19:40:09 #206 №529618 
>>529614
finish() еще есть для этого.
Аноним 13/08/15 Чтв 19:41:08 #207 №529620 
Если у меня есть небольшая БД (сообщения пользователей и всякая метадата к ним), стоит писать ContentProvider?
Аноним 13/08/15 Чтв 19:56:14 #208 №529625 
Антоны, есть один BatteryManager, но нужные свойства выделены серым и в коде выдают ошибку. Как до них добраться?
Аноним 13/08/15 Чтв 20:14:51 #209 №529632 
Ребят, а как сделать, чтобы когда человек достраивался до поле ввода начинался отсчет, а когда нажимал на кнопку "ок", счётчик прекращался?
Аноним 13/08/15 Чтв 20:48:02 #210 №529644 
14394880828660.png
14394880828701.png
Как сделать такое же "вытягивающееся" окно, как в приложении Гугл Мапс? Есть ли какие-то источники, где Гугл свои исходники выкладывает?
Аноним 13/08/15 Чтв 20:58:41 #211 №529648 
>>526860
Какое тестовое делал?
Аноним 13/08/15 Чтв 21:04:29 #212 №529652 
>>529625
>нужные свойства в документации выделены серым (http://developer.android.com/reference/android/os/BatteryManager.html)
фикс
Аноним 13/08/15 Чтв 22:10:52 #213 №529676 
>>529620
Нет
Аноним 13/08/15 Чтв 22:51:30 #214 №529693 
Аноны, как работать с sms после 4.4? Стаковерплов говорит, что никак - но всякие чёрные списки с маркета как-то работают
Аноним 14/08/15 Птн 01:12:52 #215 №529733 
У меня одного эти анимации не работают?
http://developer.android.com/training/animation/cardflip.html
Аноним 14/08/15 Птн 07:40:38 #216 №529784 
>>529644
Что за вытягивающееся?
Если речь про хуйню внизу на первом скрине, то попробуй SlidingUpPanel от umano. Ето может уже и в СДК появилась возможность такое делать.
Аноним 14/08/15 Птн 09:20:06 #217 №529793 
>>529693
Читать можно, отсылать только через главное приложение.
Аноним 14/08/15 Птн 16:15:56 #218 №529919 
Почему результат Debug.MemoryInfo().getTotalPss() отличается от adb shell dumpsys meminfo?
Пихаю getTotalPss() где только можно в коде, ищу максимальное, а в итоге Total PPS в meminfo дает результат примерно на 10 мб больший. И это я meminfo просто случайно запускаю во время работы процесса. И в догонку - как найти у meminfo максимальное значение?
Аноним 14/08/15 Птн 22:05:24 #219 №530120 
Для разработки на Андроиде надо ЕЕ? И если да, скиньте годных учебников по ЕЕ!
Аноним 14/08/15 Птн 22:10:45 #220 №530124 
>>530120
Ну это уже слишком.
Аноним 15/08/15 Суб 09:54:25 #221 №530424 
>>530120
Веря в бесконечную глупость людей, отвечу прямо. Нет.
Аноним 15/08/15 Суб 10:22:01 #222 №530425 
14396233217730.png
хочу запилисть клиент-серверный чатик, который на самом деле будет свободным РПГ. С ответам как на харкаче на андроид. То есть пользователь отвечает на пост другого пользователя тем самы продлевая сюжтную линию, как на пикрелейтед. И по ответам будет рисоваться картинка с линиями, где указаны посты ответов. Как это реализвать? может лучше использовать не андроид, а намутить сайт. Подскажите с чего начать?
Аноним 15/08/15 Суб 11:11:13 #223 №530434 
>>528721
>>528768
>>528849
>>528885
>>528899
>>528962

Спасибо за холивар, посоны. Я тогда не учёл одно условие: в этих 7 элементах должен сохранятся пользовательский ввод при скроллинге. При этом, нельзя при каждом изменении сохранять что-то в БД. В БД идёт запись только при нажатии отдельной кнопки на тулбаре, при этом, просто перезаписываются все значения из списка.
Там 100% нужен обычный набор вьюх.
Хотя, тогда непонятно, как решать эту задачу, например, для 1к элементов
Аноним 15/08/15 Суб 11:19:11 #224 №530439 
>>530120
Да, надо. Гугли различные EE технологии, они используются в андроиде постоянно. Почитай про EJB, JPA, JSF и пр. Потом, попробуй написать простенькое приложение-сервер на 1к запросов в секунду, и выложи его в гуглплей.
Аноним 15/08/15 Суб 11:56:50 #225 №530452 
14396290105170.png
>>530425
бумп
Получается мне нуно организовать клинет-серверное приложение. на клиенте пользотватель заходит в тред, видит ответы, может отвечать на них, при ответе наверху рисуется дерево сюжетов. При нажатии на точку в дереве переходишь к посту. Как это лучше реализовать?
Аноним 15/08/15 Суб 12:37:27 #226 №530472 
>>530425
> может лучше использовать не андроид, а намутить сайт
Может
> И по ответам будет рисоваться картинка с линиями, где указаны посты ответов
Горизонтальный скрол с линиями и текствьюхами
>>530452
> Получается мне нуно организовать клинет-серверное приложение
Да
> При нажатии на точку в дереве переходишь к посту
По текущему дизайну у тебя точки слишком мелкие, хуй попадешь пальцем. Да и посты хуево выглядят. К тому же хули они у тебя однострочные, если это целая РПГ?
Аноним 15/08/15 Суб 13:31:22 #227 №530505 
Есть простенькое приложение, парочка скролвьюх и карты.
1. Сколько указывать Java Heap Size? Поставил 1G, при работе с картами говорят столько нужно, если это самая ресурсоёмкая часть приложения по сути, то можно не менять? На что это влияет в принципе? Внятного гугл ничего не говорит.
2. Нужно ли как-то описывать поведение приложения в фоновом режиме? Пока OnPause выключаю слежение GPS, и на OnResume включаю, вроде если свернуть, другие приложения понажимать недолго и вернуться, всё будет в виде, при котором юзер выходил из приложения, т.е. какое-то автоматическое сохранение состояния есть. Нужно ли вручную еще что-то допиливать?
Аноним 15/08/15 Суб 13:36:15 #228 №530506 
>>530434
Эта задача и через listview решается
Аноним 15/08/15 Суб 14:12:40 #229 №530515 
>>530505
Где ты собрался указывать Java Heap Size? В своей IDE?
На андроиде все что тебе доступно это android:largeHeap
Аноним 15/08/15 Суб 14:15:48 #230 №530517 
>>530505
Твое приложение могут убить если вдруг память заканчивается. Включи в дебаге Don't keep activities и посмотри. Если тебя устраивает, то копай в сторону onSaveInstanceState()
Аноним 15/08/15 Суб 14:39:30 #231 №530529 
>>530517
Так убийство процесса не отладить. Только сохранение/восстановление состояния.
Аноним 15/08/15 Суб 16:40:35 #232 №530599 
14396460355130.jpg
>>530472
Большое спасибо за ответ! Однострочные - высмысле в одну троку, нужно текстовое поле добавить?
С чего лучше начинать, я понимаю, что вообще нужно с книжки, но это долго, в общем - как искать то, что мне нужно для решения задачи? Вообще дизайн не главное, основное что мне нужно - реализовать чат с ответами и прорисовку дерева с возможностью переходить на пост и подсвечивать выбранную ветку.
Аноним 15/08/15 Суб 16:40:52 #233 №530601 
>>530529
Оно именно так отлаживается, по крайней мере, когда в приложении несколько Активити. К примеру, при перехода с первого во второе, первое уничтожается.
Аноним 15/08/15 Суб 17:18:18 #234 №530619 
>>530601
Но процесс при этом не убивается.
Аноним 15/08/15 Суб 17:21:46 #235 №530622 
Аноны, есть одно активити c некоторым количеством полей. Данные должны сохраняться только при клике на определённую кнопку. Есть два стула:

1) Открывать транзакцию в OnCreate, закрывать в OnStop, обрабатывать каждое изменение поля.

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

Что будет работать быстрее в SQLite?
Аноним 15/08/15 Суб 17:43:14 #236 №530629 
Есть один edittext
Как проверить ввел ли в этот edittext что-нибудь человек?
if (editText1.equals(""))
Это не подходит =(
Аноним 15/08/15 Суб 17:46:23 #237 №530631 
>>530622
Второе правильнее. Причём можно в отдельный поток вынести сохранение в бд.
Аноним 15/08/15 Суб 17:47:32 #238 №530633 
>>530629
Лол пиздец.
getText().length() != 0
Аноним 15/08/15 Суб 17:57:23 #239 №530639 
>>530633
>getText().length() != 0
Ну я вот так сделал:
EditText editText1 = (EditText) findViewById(R.id.editText);
editText1 = editText1.getText().toString();
А мне пишет, мол ошибка. Не подскажешь?
Аноним 15/08/15 Суб 18:11:22 #240 №530648 
>>530639
Я не знаю, какую ошибку пишет. Но, скорее всего, ты пытаешься в переменную типа EditText записать строку. Мне кажется, тебе надо программированию получиться сначала.
Аноним 15/08/15 Суб 18:21:10 #241 №530654 
>>530648
Уже все сделал. Я удивлен, что ты меня.
Спасибо
Аноним 15/08/15 Суб 19:26:37 #242 №530673 
Нужны хорошие материалы по тому, как делать fancy UI, от которых любой дизайнер будет ТЕЧ. Остальное, что относится к программированию на жаве и программированию вообще не интересует.
Аноним 15/08/15 Суб 19:34:38 #243 №530679 
>>530673
"Вначале научитесь рисовать как старые итальянские мастера, потом начнёте рисовать как я" (Сальвадор Дали).
>хорошие материалы по тому, как делать fancy UI
Apple Macintosh Human Interface Guidelines, 1995.
Повторяю, 1995...
1995.
Аноним 15/08/15 Суб 19:38:28 #244 №530682 
>>530633
> getText().length() != 0
Лол, пиздец.
getText().isEmpty()
Аноним 15/08/15 Суб 20:05:25 #245 №530691 
>>530682
> isEmpty()
> Returns true if the length of this string is 0.
Поди подмойся.
Аноним 15/08/15 Суб 20:29:21 #246 №530710 
>>530599
Еще бумп
Аноним 15/08/15 Суб 22:09:54 #247 №530773 
>>530691
И че типа нельзя !getText().isEmpty() ?
мимо
Аноним 15/08/15 Суб 22:28:48 #248 №530783 
>>530773
Кто сказал что нельзя?
Аноним 16/08/15 Вск 03:40:22 #249 №530879 
Андрончики, если я хуевенько знаю джава кор, на троечку, то будет ли это блокировать меня в андроиде? Можно забить на эккелей-шмекелей и сразу курить http://developer.android.com/training/index.html ? Или все же нужно задрочить пару фундаментальных книжек по яве?
Аноним 16/08/15 Вск 09:49:58 #250 №530930 
>>530691
Зря ты так, он асболютно прав. isEmpty() - это куда более ООП, чем сравнение длины с нулём.
Аноним 16/08/15 Вск 09:50:53 #251 №530932 
>>530879
Прочти Core Java первый том, пропуская главы про Spring.
Аноним 16/08/15 Вск 09:57:35 #252 №530934 
>>530930
Нет, не "куда более". Сложность реализации обоих методов эквивалентна. А ООП не жалует выноса абсолютно всех простых операций в отдельный метод.
Иначе говоря, в данном случае нет никакой разницы.

При работе с классами иногда вообще есть смысл работать с более сложной реализацией просто для наглядности.

Я поправил принципиально не работающий код. Меня поправили на эквивалентную реализацию во всех смыслах. Так что нет, не зря.
Аноним 16/08/15 Вск 10:26:02 #253 №530938 
Есть ли дебаггер, которым можно словить падение приложения? Заебала падающая Opera Mobile Classic, хочеься пофиксить.
Аноним 16/08/15 Вск 10:42:50 #254 №530943 
>>530938
Посмотри adb logcat для начала.
Аноним 16/08/15 Вск 15:12:50 #255 №531024 
>>530124
>>530424
>>530439
Ну не ругайтесь антончики, я тут новичок, я думал для приложений использующих интернет может понадобиться что то из ЕЕ, например при написании клиента на базе андроида, ну или к примеру для получения нужных данных из сети(сервера), обработки и отправки.
Аноним 16/08/15 Вск 15:35:31 #256 №531044 
>>530934
На мой взгляд, лучше было бы применить .isEmpty(), т.к. это вызов лишь одного метода, а не вызов метода и сравнение полученного значения с нулём.

Это не критично.
Аноним 16/08/15 Вск 15:40:04 #257 №531050 
Edittext. К нему нужно возвращаться n раз. После первого использования edittext'a в нём остаётся заполненное слово, когда уже второй раз возвращаешься. Как "обнулить" едиттекст? С помощью сеттекст?
Аноним 16/08/15 Вск 15:43:10 #258 №531054 
>>531044
> Это не критично.
Вот именно.
Аноним 16/08/15 Вск 15:45:26 #259 №531057 
>>531050
Да.
Можно еще через getEditableText().clear();
Аноним 16/08/15 Вск 16:02:20 #260 №531064 
>>531057
помогло! Спасибо огромное.
Слушай, может кинуть статью какую-нибудь или сам написать, как сделать, чтобы был массив стринг слов, и рандомно оттуда бралось слово и присваивалось чему-то?
Аноним 16/08/15 Вск 19:29:22 #261 №531153 
14397425628430.png
А на чем вообще кроме явы можно пилить под ведроид? Есть какие-то другие годные варианты?
Я хочу попробовать себя в кодинге под андроид, но боюсь этой жавы, блять.
Аноним 16/08/15 Вск 19:36:26 #262 №531159 
>>531153
Кресты, Шарп, Скала.
Гнойный 16/08/15 Вск 19:37:31 #263 №531161 
Собственно, завтра начну погружаться в ведро.
inb4: не начнёшь.
Аноним 16/08/15 Вск 19:38:01 #264 №531163 
>>531161
Спойлер проебал, ну и ладно.
Аноним 16/08/15 Вск 19:42:40 #265 №531167 
>>531153
Почему, блядь, подобный вопрос задают по нескольку раз в каждом треде, когда всё расписано в ОП-посте
Аноним 17/08/15 Пнд 03:04:05 #266 №531335 
>>531153
Зря. Жава удобна и освобождает от множества головных болей, присущих разработке на каком-нибудь цпп.
Аноним 17/08/15 Пнд 08:34:11 #267 №531369 
>>531024
Сокеты и хттп запросы не ЕЕ, также как и многопоточность.
Аноним 17/08/15 Пнд 08:40:16 #268 №531371 
>>531024
EE - это серверная технология. в Android'е она не нужна (её там и нет, равно как и Java Swing, к примеру).
Аноним 17/08/15 Пнд 10:34:56 #269 №531429 
Почему в Андроид примерах от Гугла используются имена переменных, начинающиеся с "m", разве это не плохой стиль? Существует ли гайдлайн, или это автору просто так приятнее писать?

// Instantiates a new DownloadStateReceiver
DownloadStateReceiver mDownloadStateReceiver =
new DownloadStateReceiver();
// Registers the DownloadStateReceiver and its intent filters
LocalBroadcastManager.getInstance(this).registerReceiver(
mDownloadStateReceiver,
mStatusIntentFilter);
Аноним 17/08/15 Пнд 11:50:42 #270 №531441 
>>531429
protected и private поля принято начинать с m.
Аноним 17/08/15 Пнд 12:52:02 #271 №531462 
Что скажете о курсе от гугла. Стоит ли? Можно ли будет получить после него хоть какую-то работу?
Аноним 17/08/15 Пнд 12:52:11 #272 №531463 
>>531429
http://google-styleguide.googlecode.com/svn/trunk/javaguide.html
Аноним 17/08/15 Пнд 14:23:44 #273 №531500 
>>531462
Можно искать работу прочитав и поняв Training и Design разделы на developer.android.com.
Аноним 17/08/15 Пнд 15:21:11 #274 №531529 
14398140713540.png
Полный ноль в Android Studio, нихуя не выходит ПОМОГИТЕ. Значит задача такая, что при первом нажатии кнопки меняется цвет, при повторном возвращается. Главное ошибок не выдает APK лежит в папке, но при открытие краш, что в эмуляторе, что на телефоне.

.xml-

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<Button
android:layout_width="75dp"
android:layout_height="75dp"
android:text="2"
android:id="@+id/b2"
android:layout_x="10dp"
android:layout_y="164dp"
android:onClick="onClick2"
/>
</AbsoluteLayout>

java.-приклеил пик
[bump] Аноним 17/08/15 Пнд 15:31:16 #275 №531534 
аноны, поясните нюфане как осуществить в быдлокоде педерачу данных через синий зуб ведрофона на синий зуб ардуино?
Аноним 17/08/15 Пнд 15:44:59 #276 №531553 
>>531529
В onCreate запихни строку b2 = (Button)...

А над onCreate Button b2;
Аноним 17/08/15 Пнд 15:47:15 #277 №531555 
>>531529
private String arryImgFromUris[];
private Button b2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b2 = (Button)findViewById(R.id.b2);
Аноним 17/08/15 Пнд 15:47:53 #278 №531557 
>>531555
private Button b2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
b2 = (Button)findViewById(R.id.b2);

>*самофикс
Аноним 17/08/15 Пнд 15:57:27 #279 №531565 
>>531529
Чет странный алгоритм
Аноним 17/08/15 Пнд 15:58:49 #280 №531570 
14398163293330.png
>>531553
>>531555
>>531557
Спасибо, анон.
Аноним 17/08/15 Пнд 16:05:56 #281 №531576 
>>531565
Чем?
Аноним 17/08/15 Пнд 16:17:03 #282 №531580 
Аноны, поясните за ButterKnife, чем он лучше нативных вызовов, чуть короче запись?? :
@Bind(R.id.tvState) TextView textView;
чем
TextView textview= (TextView ) findViewById(R.id.tv);
По производительности на пару ms уступает, а вызов того же onClick ничем не отличается, кроме указания ссылки на кнопку прямо в коде а не в xml

public void onClick(View v){}

@OnClick(R.id.submit)
public void submit(View view) {}

Поясните плз, мейби я не втупляю?
Аноним 17/08/15 Пнд 16:23:40 #283 №531584 
Двач, а как организовать плавную смену цветов на Java?
Видел такое на джаваскиипт для веб, но забыл где
Аноним 17/08/15 Пнд 17:04:42 #284 №531617 
>>531463
Там говорится, что не стоит применять префиксы.
Аноним 17/08/15 Пнд 17:08:51 #285 №531620 
Вкатываюсь в тред

Пришло письмо от e-legion с последней попыткой пройти тест. У кого есть ответы на эти вопросы?
Аноним 17/08/15 Пнд 17:10:01 #286 №531622 
>>531620
facepalm
Аноним 17/08/15 Пнд 17:14:29 #287 №531625 
>>531622
PalmOS
Раньше выкладывали документ из гугла с ответами, я и выкладывал. Но не нахожу его теперь.
Аноним 17/08/15 Пнд 17:21:59 #288 №531631 
>>531584
Бамп
Аноним 17/08/15 Пнд 18:10:13 #289 №531642 
>>531617
Вот и слушай гугол и не применяй.
Аноним 17/08/15 Пнд 18:20:31 #290 №531644 
>>531642
Да уж. Сами в документации используют.
Аноним 17/08/15 Пнд 19:12:43 #291 №531664 
Дайте годный гайд как имплементировать плеймаркетоподобный интерфейс.
Т.е. в меню дохуя пунктов каждый из которых меняет главное окно но само меню остается старым, а тулбар либо просто меняет элементы либо просто перерисовывается с анимацией.
Я понимаю что это жонглирование фрагментами, но хотел бы почитать прямую реализацию.

Алсо, с RPC кто-то работал?
Аноним 17/08/15 Пнд 19:35:11 #292 №531674 
Напомните, как найти видеоурок от каких-то людей из гугла в котором рассказывается про оптимизацию custom view при помощи отключения прозрачности.
Аноним 17/08/15 Пнд 20:35:23 #293 №531694 
>>531664
Ну же, не хочу писать велосипеды.
Аноним 17/08/15 Пнд 20:37:32 #294 №531696 
А есть те, кто пишет на QT под андроид?
Аноним 17/08/15 Пнд 20:40:11 #295 №531697 
>>531696
Интересно как оно работает. Неужели без VM?
Аноним 17/08/15 Пнд 20:42:07 #296 №531699 
>>531697
Ну сиха в ассемблер компилируется. А байткод = ассемблер.
Алсо, там ебатня с компиляторами разными под разные платформы, а у жабы всегда один.
Аноним 17/08/15 Пнд 20:47:06 #297 №531701 
Почаны, почаны, кому сегодня легион отправил сообщение об оффлайн школе, отпишитесь. Интересно, сколько нас тут. Охуею если еще на оптиков потом пересечемся, лол.
Аноним 17/08/15 Пнд 21:12:00 #298 №531708 
>>531580
> чуть короче запись
Да.
>>531694
> не хочу писать велосипеды
Свои велосипеды - это здорово. Всегда пишу велосипед, а только потом начинаю использовать либу.
Аноним 17/08/15 Пнд 21:16:01 #299 №531709 
>>531701
собираюсь на днях взяться за задачу
Аноним 17/08/15 Пнд 21:20:42 #300 №531712 
>>531708
>Всегда пишу велосипед, а только потом начинаю использовать либу.
Я прошу не любу а реализацию, которую я смогу скопировать и редактировать так как мне нужно. Пишу не для себя, потому хочу ровно все сделать.
Аноним 17/08/15 Пнд 21:33:12 #301 №531717 
14398363927930.png
Анон, делал ли ты подсказки на первый запуск своего приложения? Как это лучше реализовать?
Аноним 17/08/15 Пнд 21:34:09 #302 №531718 
>>531674
Точнее про ускорение отрисовки засчет переопределения какого-то метода.
Помню очень годные советы были.
Аноним 17/08/15 Пнд 21:34:33 #303 №531719 
>>531674
https://plus.google.com/+CyrilMottier/posts/gAnib4nJyVT

Как вы без английского гугла живете?
Аноним 17/08/15 Пнд 21:35:07 #304 №531720 
>>531717
Забей. В 99% случаев не нужно.
Аноним 17/08/15 Пнд 21:40:39 #305 №531723 
Как называется такой тип Drawer'a (выдвигающаяся панель слева)?
Аноним 17/08/15 Пнд 21:43:15 #306 №531724 
>>531720
Возможно, у меня как раз 1%. Ну и делать с нуля не хочу, просто спросил, вдруг что-то готовое есть, либа какая-то, еще чтот, почему бы и не сделать в таком случае.
Аноним 17/08/15 Пнд 21:44:46 #307 №531725 
14398370864310.png
>>531723
фикс
Аноним 17/08/15 Пнд 21:57:11 #308 №531728 
>>531725
NavigationDrawer
Аноним 17/08/15 Пнд 22:12:43 #309 №531732 
>>531728
Ну это стандартный, который ActionBar не закрывает, а этот Лоллипоповский?
Аноним 17/08/15 Пнд 22:57:09 #310 №531756 
>>531580
Из плюсов - удобнее, с @OnClick можно не беспокоится о том что название в onClick не будет совпадать с название функции.
Из минусов - он генерит код, в эклипсе с ним иногда приключается беда, так же если его использовать в наследовании классов то приходится каждый раз клинить проект.
Аноним 17/08/15 Пнд 22:57:55 #311 №531757 
>>531584
ArgbEvaluator?
Аноним 17/08/15 Пнд 22:59:21 #312 №531758 
>>531664
>RPC
Ты про AIDL?
Аноним 17/08/15 Пнд 23:04:41 #313 №531759 

>>531758
https://ru.wikipedia.org/wiki/JSON-RPC

>>531664
Бампану еще раз, нужна самая прямая реализация которую вы видели. Пока думаю делать по гайду через интерфейсы.
Аноним 17/08/15 Пнд 23:56:26 #314 №531790 
>>531732
Это один и тот же. СТАТУС бар дровер закрывает если в теме установить translucentChtoto атрибут.
Аноним 17/08/15 Пнд 23:58:28 #315 №531791 
>>531790
И да, дровер поверх статус бара может быть только начиная 4.4. Всё что раньше только костылями.
Аноним 18/08/15 Втр 00:00:09 #316 №531792 
>>531791
Статус бар до китката вообще не часть окна апликухи.
Аноним 18/08/15 Втр 01:58:54 #317 №531838 
>>531717
Через WindowManager. Оформление уже дело техники.
Аноним 18/08/15 Втр 02:02:09 #318 №531843 
>>531792
Да он и сейчас не часть окна. Однако, цвет и способы его отображения можно регулировать.
Аноним 18/08/15 Втр 04:46:17 #319 №531868 
Не думаю что есть смысл пилить одельный тред. Кто сколько зарабатывает? После месяцев практики стоит взять свое первое фрилансерское задание? После скольки лет можно будеи хардовые задания? Или тут все работают на себя? Просто боюсь что не взлетит то что буду придумывать я. Пишу тут - иьо ведроид мне интересен, хотел бы в его сторону работать. Не спал всю ночь, простите за неровный почерк.
Аноним 18/08/15 Втр 10:03:33 #320 №531937 
>>531868
85к, офис, ДС2
Аноним 18/08/15 Втр 13:31:01 #321 №532001 
Подскажите как сделать popup window посередине экрана с отступами от краев, не используя padding.
Аноним 18/08/15 Втр 13:42:18 #322 №532002 
>>532001
Расчитать размер окна исходя из размера экрана и отобразить с отступом.
Аноним 18/08/15 Втр 13:42:19 #323 №532003 
>>531620
https://docs.google.com/spreadsheets/d/1D00RsC1a9tYBA_nQDxVV7L-dIzV0buw5GRPE34IEYhA/htmlview#gid=0
Аноним 18/08/15 Втр 19:29:41 #324 №532136 
Нужно штобы телефон читал и говорил, выведенные на экран строки. Как это сделать? Android Studio. Помоги, онон.
Аноним 18/08/15 Втр 21:08:18 #325 №532202 
2 часа уже мучаюсь.
новичок.
Все знаю, как взять текст из edittext и вставить его себе куда надо.
Но как быть, если edittext находиться на предыдущем layoute?
Аноним 18/08/15 Втр 21:10:28 #326 №532203 
>>532202
Удалить из старого, вставить в новый.
Аноним 18/08/15 Втр 21:13:00 #327 №532205 
>>532203
Блять, да не может быть, чтобы все так не правильно было. Я хочу несколько layoutov, шквариться об invisible не хочу
Аноним 18/08/15 Втр 21:18:59 #328 №532214 
>>532205
Это правильно. Одна вьюха не может иметь нескольких родителей.
Либо создавай новые вьюхи, либо удаляй её из прошлого родителя.
Аноним 18/08/15 Втр 21:21:08 #329 №532215 
>>532214
Видимо я не правильно тебя понял. Или ты меня. У меня 2 layout'a.
На одном- едитекст и кнопка.
На другом - текствью.
Хочу, чтобы когда пользователь в edittext вводил "моча" и нажимал на кнопку, появлялся следующий вью, где у текстview заменен сам текст. Переключить-то легко, а вот с текстом беда
Аноним 18/08/15 Втр 21:24:02 #330 №532217 
>>532215
А, да, понял.
В момент клика берёшь текст из эдиттекста, меняешь лейаут, ставишь в новом лейауте текст.
Аноним 18/08/15 Втр 21:24:57 #331 №532218 
>>532217
И вылетает ошибка.
Аноним 18/08/15 Втр 21:25:38 #332 №532219 
>>532218
Уже когда на устройстве смотрю приложение вылетает. Если текст не менять все отлично идет. Меняется лаяут
Аноним 18/08/15 Втр 22:38:32 #333 №532259 
Есть кнопка и textview.
Когда нажимаешь на кнопку в текствююшки кое-что меняется.
Но когда перезапускаешь приложение оно пропадает. Представляете?
Как сделать, чтобы постоянно сохранялось значение с последнего нажатия кнопки?
Аноним 19/08/15 Срд 00:44:59 #334 №532301 
Здравствуйте, программисты.
Есть один реквест.
Суть - есть вот это приложение
https://play.google.com/store/apps/details?id=com.music.star.startag
(apk могу дать если нужно), и нужно отучить его показывать рекламу (причем убрать как сам баннер, так и белый кирпич-плейсхолдер). Насколько я понимаю - это делается с помощью удаления пары строчек в AndroidManifest.xml и папки ad, это я сделал, но скомпилировать apk потом не могу - apktool в командной строке выдает исключение с какими-то файлами Java. Анон, очень прошу, помоги, если это так просто - то для тебя это пять минут работы. Я бы и заплатил, но живу в Беларуси так что на телефон положить не могу, и ни вебмани ни яндекс.деньгами не пользуюсь.
Дайте знать если кто возьмется это сделать.
Если хотите - вот фейкомыло: [email protected]
Аноним 19/08/15 Срд 01:04:39 #335 №532306 
>>532301
Попробуй http://2ch.hk/mobi/res/568871.html
Аноним 19/08/15 Срд 08:05:52 #336 №532362 
>>532259
SharedPreferences
Аноним 19/08/15 Срд 13:17:48 #337 №532453 
Платиновый вопрос.
Если вакансия называется IOS/Android разработчик, значит 100% нужно хуячить под обе платформы или хотябы под одну из них?
Аноним 19/08/15 Срд 14:16:45 #338 №532488 
>>532453
Это значит, что заказчики — пидорасы. Вот что это «значит».
Аноним 19/08/15 Срд 14:39:46 #339 №532501 
>>532306
АПК вылетает сразу при запуске если прогнать через эту штуку. Так что очень прошу кого-нибудь отозваться.
Аноним 19/08/15 Срд 15:09:53 #340 №532515 
Аноны, поясните за DataBinding, второй день изучаю эту хуиту введённую с 1.3.0 студией. Чому так все текут от MVVM?
Аноним 19/08/15 Срд 17:44:25 #341 №532565 
>>532453
Двачую, тоже сейчас ищу работу и встретил уже несколько подобных вакансий. Словно если пишешь под мобильную платформу, то должен знать сразу всё, и не важно, что там разные языки и фрэймворки.
Аноним 19/08/15 Срд 17:45:25 #342 №532566 
>>532453
Двачую, тоже сейчас ищу работу и встретил уже несколько подобных вакансий. Словно если пишешь под мобильную платформу, то должен знать сразу всё, и не важно, что там разные языки и фрэймворки.
Аноним 19/08/15 Срд 18:57:29 #343 №532618 
14399998497140.png
>>527956
обсмеясля с этого, что же ты творишь содомит
Аноним 19/08/15 Срд 20:30:33 #344 №532670 
Есть один TextView..
Хочу сделать так, чтобы была функция увеличения длины между буквами этой текствью и временем, как это сделать? Нигде не нашел
Аноним 19/08/15 Срд 22:05:30 #345 №532724 
Как выбирать размер графики при созданииигры под android?
Аноним 20/08/15 Чтв 07:44:15 #346 №532839 
>>532515
> Чому так все текут от MVVM
Меньше шелупони свзяананной с однообразным действивем уровня нескольких setText'ов в ряд.
>>532670
Нихуя не понятно, каким временем еще?
>>532724
Элементы на экране - процент от экрана. 10% от 2К (максимальный сейчас экран) - 256x256 или 204xчто-то, если пихаешь в атлас.
Дальше даунсемпилишь до 720п графики (нищенки с 480п мобилками не будут платить тебе за игру).
Аноним 20/08/15 Чтв 10:46:51 #347 №532877 
>>532839
>временем
1) Включается первый layout
2) В 0 секунду расстояние между буквами - a, в 5 секунду - б. Измение от а до б должно идти плавно. Это возможно реализовать?
говно (0 секунда)
г о. в. н. о(5 секунда. Надеюсь пробелы между буквами видны)
Аноним 20/08/15 Чтв 10:58:26 #348 №532878 
Двач, как сделать в своей игре, чтобы пользователи могли делиться успехом в вк? Или не нужна? Делаю игру, которая помогает от прокрастинации
Аноним 20/08/15 Чтв 11:26:00 #349 №532887 
для начала сгодились статьи которые в топике, однако есть проблема которую трудно загуглить и нет в теории. может кто поможет?
в общем пишу мессенджер, внешний вид чата такой:
заголовок
контейнер для сообщений
поле ввода + кнопка отправить
Также как у VK и Viber. Но когда я нажимаю на поле ввода, все элементы, включая заголовок смещаются вверх, а мне надо чтобы заголовок оставался в шапке. VK/Viber сохраняют заголовок как надо, как пример. Значит как-то можно это сделать. Но как?
Спасибо
Аноним 20/08/15 Чтв 11:43:50 #350 №532899 
>>525732 (OP)
>пилить тырпрайз
Объясните инженеру-электронику что это и чем это плохо
Аноним 20/08/15 Чтв 12:11:33 #351 №532913 
>>532899
сидеть на монстропроектах где старые библиотеки, очень много саппортной работы, документацию хрен найдешь, надо постоянно общаться с людьми

ну в моём понимании
Аноним 20/08/15 Чтв 12:12:39 #352 №532914 
>>532670
так в чем проблема: свойство + анимация

private void animateLetterSpacing(TextView textView) {
ObjectAnimator.ofFloat(textView, "letterSpacing", 0, 5).setDuration(2000).start();
}
Аноним 20/08/15 Чтв 12:16:59 #353 №532915 
>>532887
вроде это через манифест делается

android:windowSoftInputMode="adjustResize"
Аноним 20/08/15 Чтв 12:24:44 #354 №532916 
>>532914
спасибо! А вот это потом нужно вызвать в onCreate с помощью animateLetterSpacing() или просто написать после oncreate то, что ты написал?
Аноним 20/08/15 Чтв 12:32:30 #355 №532918 
>>532916
все получилось, спасибо огромное!
Аноним 20/08/15 Чтв 12:39:22 #356 №532920 
>>532918
в общем это на всех устройствах по разному показывается =( На нексусе 5 распидорашивается, на нексусе 7 все отлично.
Аноним 20/08/15 Чтв 13:06:12 #357 №532929 
>>532915
ага, оно, спасибо!
механизм работы тогда загуглю
Аноним 20/08/15 Чтв 15:28:31 #358 №532984 
бляять. есть один текст вью. норм стоит, дизайн тоже.
пытаюсь поставить второй снизу и как все распидорашивается, пиздец. Уже не могу, блин.
Аноним 20/08/15 Чтв 16:40:06 #359 №533014 
14400780062670.jpg
Анон тред не читал помоги с вопросами
Что будет если в манифесте не указать "главную" Activity?
1) Возникает ошибка сборки приложения
2) Возникает ошибка при установки приложения
3) Возникает ошибка при установки приложения при API >= 11
4) Приложение соберется и установиться, но не появиться в списке приложении на устройстве

Какой метод класса ViewGroup (или его потомков) при первой отрисовке вызовется первым?
1) onDraw
2) onSizeChanged
3) onMeasure
4) onLayout

Каким способом нельзя сохранить ссылку на AsyncTask при пересоздании activity
1) С помощью методов onRetainNonConfigurationInstance() / getLastNonConfigurationInstance()
2) С помощью методов onSaveInstanceState() / onRestoreInstanceState()
3) Сохранить ссылку в объекте Application
4) Сохранить ссылку в объекте Fragment

Какие из методом (onPause, onStop, onDestroy) будут вызваны у activity, если в результате нажатия пользователем кнопки внутри этой activity будет показан диалог (наследник DialogFragment)
1) onPause -> onStop -> onDestroy
2) Только onPause -> onStop
3) Только onPause
4) Ни один из методов

Какой тип данных можно положить в Bundle?
1) Любой Object можно передать в bundle (и все варианты что ниже)
2) Можно передавать Map - связка ключ, значение
3) Можно передавать Bundle в Bundle
4) Bundle не предназначен для передачи данных

Какой из ниже перечисленных механизмов или компонентов, привязывается к жизненному циклу Activity или Fragment?
1) Поток, созданный в активити
2) Компонент Services
3) LoaderManager + Loaders
4) AsynkTask с методами onPostExecute и onPreExecute

Что произойдёт, если вернуть null из Fragment.onCreateView?
1) Возникнет исключительная ситуация NullPointerException в конструкторе фрагмента
2) Возникнет исключительная ситуация NullPointerException во время транзакции если не указан тег
3) Возникнет исключительная ситуация NullPointerException во время транзакции
4) Допустимо возвращать null

Чем могут быть вызваны утечки памяти?
1) Сохранение ссылки на Activity или View в статической переменной
2) Вызов FragmentManager.replace() не на GUI-потоке
3) Циклические ссылки
4) Отсутствие вызова setContentView(null) в методе Activity.onDestroy()



Аноним 20/08/15 Чтв 16:47:32 #360 №533020 
>>533014
Откуда такие вопросы? Я только один ответ знаю. 3) Только onPause.
Так что либо вопросы требуют знаний, не нужных девелоперу, либо у меня сейчас начнёт гореть.
Аноним 20/08/15 Чтв 17:07:36 #361 №533037 
>>533014
> Что будет если в манифесте не указать "главную" Activity?
4) Приложение соберется и установиться, но не появиться в списке приложении на устройстве
> Какой метод класса ViewGroup (или его потомков) при первой отрисовке вызовется первым?
3) onMeasure
> Каким способом нельзя сохранить ссылку на AsyncTask при пересоздании activity
2) С помощью методов onSaveInstanceState() / onRestoreInstanceState()
> Какие из методом (onPause, onStop, onDestroy) будут вызваны у activity, если в результате нажатия пользователем кнопки внутри этой activity будет показан диалог (наследник DialogFragment)
4) Ни один из методов
> Какой тип данных можно положить в Bundle?
3) Можно передавать Bundle в Bundle
2 тоже верно при некоторых условиях.
> Какой из ниже перечисленных механизмов или компонентов, привязывается к жизненному циклу Activity или Fragment?
3) LoaderManager + Loaders
> Что произойдёт, если вернуть null из Fragment.onCreateView?
4) Допустимо возвращать null
> Чем могут быть вызваны утечки памяти?
1) Сохранение ссылки на Activity или View в статической переменной

Не на все вопросы уверен, но скорее всего всё так.

>>533020
Зависит от того, чем занимаешься.
Аноним 20/08/15 Чтв 17:09:19 #362 №533039 
Тест на e-legion прохожу анончик выручай
Аноним 20/08/15 Чтв 17:16:33 #363 №533043 
>>533037
Я изучаю ведроид по докам гугла, хочу устроиться хотя бы джуном на удалёнку куда-нибудь. Реально ли такое?
Аноним 20/08/15 Чтв 17:17:43 #364 №533045 
>>533043
Не знаю, я никогда не работал.
Аноним 20/08/15 Чтв 17:20:24 #365 №533047 
>>533037
вот и нахрен ты ему помог, теперь у этого лоботряса будет сертификат с которым его возьмут в google :)
Аноним 20/08/15 Чтв 17:22:08 #366 №533050 
>>533047
Ну и заебись. Я тест завалил, мне похуй уже.
Аноним 20/08/15 Чтв 17:28:35 #367 №533060 
14400809155800.gif
>>533050
А я то думаю, зачем ты ему неправильные ответы даешь.
Аноним 20/08/15 Чтв 17:30:23 #368 №533064 
>>533060
Но они правильные :3
Аноним 20/08/15 Чтв 17:54:08 #369 №533087 
Спасайте, насосался уже таких хуев что сил нет.
Нужно сделать верхнюю панель Аля статустрей.
Все бы норм но ебучий ресайклервью со своим кривым лейаутменеджером не может в врапконтент, но хуй с ним, взял кастомный. Теперь при удалении итема оно враеит контакт без анимации и тд, получается равное говно.
Спасайте, заебали эти костыли.
Аноним 20/08/15 Чтв 17:54:26 #370 №533088 
Спасайте, насосался уже таких хуев что сил нет.
Нужно сделать верхнюю панель Аля статустрей.
Все бы норм но ебучий ресайклервью со своим кривым лейаутменеджером не может в врапконтент, но хуй с ним, взял кастомный. Теперь при удалении итема оно враеит контакт без анимации и тд, получается равное говно.
Спасайте, заебали эти костыли.
 Аноним 20/08/15 Чтв 17:58:26 #371 №533091 
>>533088
просто используй реакт нейтив.
Аноним 20/08/15 Чтв 18:03:16 #372 №533094 
>>533091
Чего доебался-то, вопрос нихуя не очевидный, мне нужно чтоб при изменении размера ресаклвьюва все вьюхи ниже него двигались плавно, все что нашёл еба реализацию с скроллейблом и ручной генерацией итемов
Аноним 20/08/15 Чтв 18:15:49 #373 №533110 
Аноны, как сохранить Коллекцию в SharedPreference?
Аноним 20/08/15 Чтв 18:17:30 #374 №533112 
>>533110
Или сохранить массив из чисел.
Аноним 20/08/15 Чтв 18:46:08 #375 №533145 
Поцоны, можно залить на вендровир вместо санной Гугловской говорилки-нашу?
Аноним 20/08/15 Чтв 18:48:26 #376 №533148 
>>533088
Ну же, бамп.
Аноним 20/08/15 Чтв 18:49:25 #377 №533149 
Как вообще жить с этим материалдизайном бля.
Куда ни плюнь анимации и тд. Самому рисовать это ж пиздос нахуй.
Аноним 20/08/15 Чтв 19:43:45 #378 №533194 
>>533110
>>533112
> putStringSet
Берешь и без задней мысли сохраняешь.
Аноним 20/08/15 Чтв 19:52:14 #379 №533200 
>>532984
bump
Аноним 20/08/15 Чтв 20:24:40 #380 №533219 
Бля, в пизду это ведро, этот гугл и их ресайклер говновью с еще говнянее менеджером.
Чтоб сделать элементарный лист с высотой врапконтент и свайпом для дисмиса я блять ебусь уже целый день и нихуя. То там баг то там. Да ебал я в рот.
Аноним 20/08/15 Чтв 20:29:39 #381 №533224 
>>533219
Ты просто некомпетентный, хули. Не можешь не лезь, андроид для умелых разработчиков с талантом.
Аноним 20/08/15 Чтв 20:32:52 #382 №533227 
>>533224
>некомпетентный
Значение знаешь?
Талантливый ты наш, может посоветуешь чего дельного или хуй простой?
Как вообще можно было выпустить линеарлейаутменеджер с таким-то багом. Тем более зуб даю что в треде никому ума не хватит ровно решить проблему.
sageАноним 20/08/15 Чтв 20:44:50 #383 №533240 
>>533227
Ой иди нафиг, год назад reclerview вообще не было. Делали через стандартные ListView/GridView (которые у каждой версии были со своим багами).

Не умеешь не суйся, не получается свайп, делай кнопку.
Аноним 20/08/15 Чтв 20:47:08 #384 №533243 
>>533240
Ну вот и приехали, ты сам ответа не знаешь.
Про это и говорю, ресайклервью говно, а старый добрый свайплиствью депрекейтед.
Какую кнопку нахуй, если у меня тут дизайн.
Но видимо возьмусь таки за старые либы ибо пиздец.
Аноним 20/08/15 Чтв 21:28:59 #385 №533273 
Какие части android studio имеет смысл поставить на ssd, чтобы не проебать место на ssd?
Аноним 20/08/15 Чтв 23:58:27 #386 №533398 
>>533273
null
Аноним 21/08/15 Птн 00:28:37 #387 №533414 
14401061177310.jpg
Можно ли изъебнуться и добавить подпапку в layot? Это ж пиздос какой-то.
Аноним 21/08/15 Птн 01:14:30 #388 №533422 
>>533219
Нахуй ты свайп для дизмисса делаешь руками? У тебя это первостепенная задача? Скачай готовое листвью со свайпами и пр., и юзай
Аноним 21/08/15 Птн 01:15:48 #389 №533424 
>>533149
Гугл сами говорят, что это не панацея, и использовать его надо в разумных приделах.
Аноним 21/08/15 Птн 18:55:11 #390 №533642 
>>533422
Так блять оно с рейсайклером делалось довольно быстро, но вот и наступил на подводный камень размером с гору.

Так и сделаю сегодня, просто либы которые юзал уже устарелы и тд.
Аноним 21/08/15 Птн 18:55:37 #391 №533644 
Где найти кладезь ровного кода и опенсорс проектов?
Заебало быдлокодить.
Аноним 21/08/15 Птн 19:21:02 #392 №533649 
Посоветуйте актуальной литературы на тему создания игр под android на java без использования сторонних движков.
Планируется исключительно 2D графика.
Аноним 21/08/15 Птн 19:33:07 #393 №533656 
>>533649
>игр под android на java без использования сторонних движков
Въебался? Это у джавы теперь родной движок есть?
libgdx смотри.
Аноним 21/08/15 Птн 19:39:41 #394 №533661 
>>533649
Берешь SurfaceView и рисуешь.
Аноним 23/08/15 Вск 14:23:15 #395 №533851 
Что-то гайды в оп-посте хуйня какая-то в стиле "изучим как повесить обработчик нажатия на баттон и блять целый урок о хуйне какой-то". Может кто-нибудь знает нормальные гайды вида "обзорная лекция + задание на самостоятельное выполнение", чтоб без даунического говна.
Аноним 23/08/15 Вск 18:50:59 #396 №534035 
Помогайте, Джаваны.
Есть приложение, детали не хочу пилить, суть такова: есть приложуха, все работает. Но очень желательно, чтобы присутствие приложения не было видно через таск менеджер. Следовательно приложение нужно переделывать в Сервис? В связи с этим несколько вопросов:
1. Правда ли что на 4-м ведроиде и выше сервис не стартует до первого запуска руками пользователя? Не стартует после остановки через настройки.
2. Возможно ли вообще повесить в сервис BroadcastReceiver таким образом, чтобы он перезапускался в случае внезапного краша?
Аноним 23/08/15 Вск 22:45:17 #397 №534195 
>>534035
Лол. У меня foreground сервис иногда сам перезапускается, если его грохнуть через stop service. Как же это бесит.
Аноним 23/08/15 Вск 23:19:48 #398 №534234 
>>534035
> Возможно ли вообще повесить в сервис BroadcastReceiver таким образом, чтобы он перезапускался в случае внезапного краша?
Вешается пендинг интент на перезапуск на thread.onunhandledexception в application'е
Аноним 24/08/15 Пнд 02:29:20 #399 №534272 
Насчет скорости сборки:
3 модуля:
1. 9000 строк
2. 14280 строк
3. 500 строк

Total time: 6.586 secs
Железо:
core i5 4690
SSD Plextor M6S
8 GB 1600Mhz dual channel
Аноним 24/08/15 Пнд 02:30:15 #400 №534273 
>>534272
Android SDK хранится на HDD.
Проекты и студия на SSD.
Аноним 24/08/15 Пнд 08:10:19 #401 №534304 
>>534272
У меня после включения multiDex на чистую сборку минута времени добавилась. Включение гредла как демона особо не повлияло. Такие дела.
Аноним 24/08/15 Пнд 09:55:14 #402 №534325 
>>534035
1. да и ресиверы не будут работать тоже
2. что-бы у тебя бесконечный цикл перезагрузки образовался? оберни просто все try/catch
Аноним 24/08/15 Пнд 11:08:22 #403 №534382 
>>534195
Насколько я понял Андроид выше 4-ки? Тогда отлично вообще. Спасибо.
>>534234
Про интент на перезапуск не очень понял.
>>534325
1. Как тогда у >>534195 работает?
2. Логично, спасибо
Аноним 24/08/15 Пнд 11:31:08 #404 №534397 
14404050681520.png
Мне нужно сделать список из постов, как на скриншоте (приложение Вконтакте), каждый пост - cardview.
В ней список песен.
Вопрос в том - как правильно обрабатывать клики по песням в списке? Как я понимаю, делать список песен придется при помощи linear layout.
Каждый элемент списка постов будет содержать:
1. Информацию об авторе, дату и т.д.
2. Список песен
Как мне определить - какому посту соответствует песня по которой пользователь кликнул?
Аноним 24/08/15 Пнд 11:38:16 #405 №534404 
>>534397
В тег лейаута добавить номер поста, например.
Ещё я такие костыли использую: беру вьюху и дёргаю getParent циклом, пока не дойду до ListView. Предыдущая вьюха - корневая.
Аноним 24/08/15 Пнд 13:25:13 #406 №534440 
Пасаны поясните за сторонние либы , есть просто must have вещи?
Что обычно используется для DI , HTTP?
Аноним 24/08/15 Пнд 14:39:42 #407 №534470 
Есть код и он не работает.
Суть: достать из файла рандомную строку и сет_текснуть её в TextView.

Вот как я это реализовал:


public void doAccess() {

try {

File file = new File("C:\\godno.txt");
RandomAccessFile raf = new RandomAccessFile(file, "rw");
byte ch = raf.readByte();
System.out.println("Read first character of file: " + (char)ch);
TextView textView44 = (TextView) findViewById(R.id.textView2);
textView44.setText(raf.readLine());
raf.seek(file.length());
raf.write(0x0A);
raf.writeBytes("This will complete the Demo");
raf.close();
} catch (IOException e) {
System.out.println("IOException:");
e.printStackTrace();
}
}

Но в чем я ошибся, братья?
Аноним 24/08/15 Пнд 15:10:02 #408 №534485 
Вопрос вроде по теме. Я могу собрать android и ядро под cygwin? Линукс ставить тупо некуда, а побыть васяном и портировать на свой телефон цианоген хочется.
Аноним 24/08/15 Пнд 15:12:46 #409 №534488 
>>534470
> достать из файла рандомную строку
Ты думаешь, что RandomAccess значит, что будет считана случайная строка?
Аноним 24/08/15 Пнд 16:54:10 #410 №534538 
>>525732 (OP)
Объясни по хардкору, почему до сих пор немнаучились компилировать в байткод далвик из любого языка через ллвм?
Аноним 24/08/15 Пнд 17:01:42 #411 №534541 
>>534485
юзай VirtualBox, нужно будет ~60GB свободного места для сборки (я так на windowx собирал)

>>534440
okhttp - если сервак поддерживает spdy
protobuf - модно/молодежно (google, yandex юзают), имеет смылс если у тебя много данных пересыпается

> Что обычно используется для DI
НИ когда НЕ используй guice/roboguice - приложение будет стартовать по секунде-две
Аноним 24/08/15 Пнд 17:32:06 #412 №534548 
>>533851
Ну найдешь - делись. Добавлю.
Аноним 24/08/15 Пнд 17:35:56 #413 №534550 
>>533851
Раздел "Training" на сайте d.android.com.
Аноним 24/08/15 Пнд 17:40:41 #414 №534553 
>>534541
> okhttp - если сервак поддерживает spdy
В ведре он искаропки, разве нет?
Аноним 24/08/15 Пнд 17:54:28 #415 №534560 
Здесь https://www.google.com/design/icons/ можно скачать иконки для кнопок в Android. Какое значение dp выбирать?
Аноним 24/08/15 Пнд 18:13:10 #416 №534569 
>>534553
Вроде бы 5.0, в старых точно нет + сама библиотека часто обновляется, в отличие от android

>>534560
для toolbar/actionbar 24 dp
Аноним 24/08/15 Пнд 18:28:15 #417 №534574 
>>534541
>60gb
Епт вашу мать, у меня хард на 80. Хотя почему-то простаивают два на 120 и 80, пойду накатывать дебиан.
Аноним 24/08/15 Пнд 18:40:13 #418 №534580 
>>533644
на гитхабе библиотечки
Аноним 24/08/15 Пнд 19:20:20 #419 №534594 
>>534569
>для toolbar/actionbar 24 dp
Мне нужно в качестве кнопок использовать стрелочки и сердечко не в ActionBar. Выбирать тот dp, который лучше всего смотрится?
Аноним 24/08/15 Пнд 20:02:18 #420 №534599 
14404357380120.png
Друзья, для того, чтобы начать программировать успешно на android достаточно ли знать только Java SE?
Аноним 24/08/15 Пнд 21:38:48 #421 №534633 
Есть какие то годные гайды по новому (материал) дизайну? Ну кроме стандартной http://developer.android.com/design/patterns/help.html#your-app . Как составляете дизайны для своих аппов?
Аноним 25/08/15 Втр 00:04:01 #422 №534693 
Чо там у VS2015? Тестил кто-нибудь эмулятор?
Аноним 25/08/15 Втр 01:32:38 #423 №534730 
>>534599
Да, энтерпрайз в андроиде не нужен. А я вообще вкатывался без знания джавы.
Аноним 25/08/15 Втр 11:46:04 #424 №534753 
>>534730
Это ты тот, кто в джава треде "решает" методы и не знает про дебаг?
Аноним 25/08/15 Втр 12:15:58 #425 №534763 
>>534753
[eqw
Аноним 25/08/15 Втр 12:17:00 #426 №534764 
14404942207730.jpg
Анон, хочу сделать следующую анимацию фрагментов, при том условии, что таких фрагментов будет очень много (50-500, к примеру). Как это можно реализовать?

Пикрилэйтед.
Аноним 25/08/15 Втр 12:35:51 #427 №534772 
>>534764
чувак ну базовые же вещи
http://developer.android.com/reference/android/support/v4/view/ViewPager.html
+
http://developer.android.com/reference/android/support/v4/app/FragmentStatePagerAdapter.html
Аноним 25/08/15 Втр 13:37:03 #428 №534804 
>>534772
Спасибо.
Аноним 25/08/15 Втр 17:27:14 #429 №534896 
Ребятки, ну-ка подскажите способы внедрения *.apk на устройство? Отбросим всякие аппсторы, плеймаркеты и т.д.
Аноним 25/08/15 Втр 17:32:19 #430 №534897 
>>534896
То есть, apk ты запилить справился, а adb никогда не пользовался?
Аноним 25/08/15 Втр 17:38:37 #431 №534898 
Помогите годной статьей по приклеиванию к проекту Базы данных SQLite пишу на Androi Studio.
Аноним 25/08/15 Втр 22:05:00 #432 №535016 
>>534897
Ну не траллькай плиз. Я про, например, сайты, на которые, если заходишь с ведра, то тебе настойчиво предлагает установить их БУСТЕР АНДРОИД, и прочие способы как навязать свое говно кому-то, кому оно даром не упало
Аноним 25/08/15 Втр 23:00:24 #433 №535038 
>>535016
Ну, может, надеются на говносборочки от ВОВАНА666 "ЛОЛИПОП ЗВОНОК КАК НА ВЕРТУ", где вся безопасность отключена.
Аноним 25/08/15 Втр 23:07:06 #434 №535041 
Кстати, может у кого есть идеи для мелких приложений? Или может кому класс написать? А то заняться нечем, а развиваться хочется.
Аноним 26/08/15 Срд 01:02:02 #435 №535077 
14405401222980.png
>>535041
Аноним 26/08/15 Срд 06:20:41 #436 №535160 
>>535077
Що это? Разве не навалом этого говна в гп?
Аноним 26/08/15 Срд 07:32:24 #437 №535176 
ОП ебанный аутист дегенерат. Написал говношапку и накидал говноссылок, все есть на русском языке, нет блдяь - хочу стакхуерфлоу и домашнюю страничку какого-то долбоеба с котиками. Тупой биомусор.

Вот тут есть все:
http://startandroid.ru/ru/uroki/vse-uroki-spiskom.html
Аноним 26/08/15 Срд 07:39:40 #438 №535178 
>>535176
Легко ищется же.
Аноним 26/08/15 Срд 11:33:04 #439 №535223 
>>535041
вот тема с open source проектами http://4pda.ru/forum/index.php?showtopic=200537 - присоединяйся к любому

если есть желание, можешь мне помочь с xamarin-android (проект на github)
Аноним 26/08/15 Срд 12:00:57 #440 №535236 
>>535223
Старьё. С ксамарин не работал
Аноним 26/08/15 Срд 17:08:55 #441 №535355 
Как анимировать выезд вьюхи внизу экрана?
Аноним 26/08/15 Срд 17:11:32 #442 №535356 
>>535355
Добавлю.
Снизу-вверх, поверх остальных вьюх.
Аноним 27/08/15 Чтв 09:42:56 #443 №535406 
>>535356
Есть библа специальная: slidinguppanel.
Кстати, кто какие годные библиотеки для UI использует?
Аноним 27/08/15 Чтв 14:42:26 #444 №535480 
Прошёл тест на e-legion, поздравьте меня. А теперь вопрос к работающим: значит ли этот сертификат на работу хоть что-то, или же это простая бумажка, по типу диплома за "1-е место на соревновании "Весёлые Старты" ученику 3-го класса А" при поступлении в МГУ?
Аноним 27/08/15 Чтв 14:42:56 #445 №535481 
>>535480
>на работу
при приёме на работу
fastfix
Аноним 27/08/15 Чтв 17:02:11 #446 №535565 
>>525732 (OP)
Что можно читануть про нейтив девелопмент на го, помимо факов самого языка?
Аноним 27/08/15 Чтв 18:53:39 #447 №535621 
>>535480
У меня даже на готовые проекты не смотрят, главное чтоб что-то было.
Правда я своим поиском работы устроил дикий демпинг среди джунов ведроидов. Теперь сижу думаю с хуяли так мало просил.
Аноним 27/08/15 Чтв 18:55:43 #448 №535622 
>>535565
Да хуй его знает.
http://habrahabr.ru/post/260609/
Посмотри это может поможет чем-то.
Аноним 27/08/15 Чтв 19:43:12 #449 №535641 
>>535621
Город? ЗП?
Аноним 27/08/15 Чтв 19:43:58 #450 №535642 
>>535641
Киев - 500
Аноним 27/08/15 Чтв 20:33:48 #451 №535666 
Бля, этот сертификат выглядит как говно. Стыдно кому-то показать.
Аноним 27/08/15 Чтв 20:43:57 #452 №535671 
>>535642
Я бы и за $400 согласился бы, но в моей мухосрани даже за еду нахуй не нужен. Почему я не родился в Москве, блять?
Аноним 27/08/15 Чтв 20:54:43 #453 №535674 
>>535621
Предлагай больше.
Подумают еще, что ты совсем нуб, потому и просишь мало.
Аноним 27/08/15 Чтв 20:56:04 #454 №535678 
>>535674
Так и думают. Вообще для меня и 500 норм, я просто неособо выкупаю какая сейчас на рынке цена. Да и подучиться бы еще у скиловых ребят а потом можно и на мида.
Аноним 27/08/15 Чтв 20:56:56 #455 №535679 
>>535671
Ну я из большой мухосрани переехал в универ, так что такое. Алсо, пробуй фриланс. На ведре довольно реально.
Аноним 27/08/15 Чтв 21:02:05 #456 №535682 
Коданы, а что есть по ВБ под андроид? Именно ПОД андроид, а не под винды.
И да, как там сейчас обстоят дела с "андроид-девелопер" (йцукен-слайдер от гугла)?
Аноним 27/08/15 Чтв 21:05:27 #457 №535685 
>>535678
Размести резюме прямой сейчас на 4pda.ru.
Кучу всяких заказов предложат.
Далее выбери среди них самый простой на твой взгляд и спроси здесь про подводные камни.
Далее выполняй и получай деньги.
Несложный заказа для новичка на ~5-6 дней стоит от 15 000 р.
Аноним 27/08/15 Чтв 21:06:39 #458 №535687 
>>535685
Где именно?
Аноним 27/08/15 Чтв 21:09:36 #459 №535689 
>>535685
Если можешь кодить - сможешь сделать почти любое приложение из предложенных.
Игнорируй следующие типы заказов:
1. Приложение завязано на железо (модифицировать прошивку, написать приложение под конкретный телефон).
Здесь очень много геммороя, а денег мало предлагают.
2. Приложение для соц. сетей. Рискуешь быть забаненным на маркете, если будешь публиковать из под своего аккаунта. Не используй названия брендов в описании приложения или публикуй с аккаунта заказчика.

Не передавай исходники. Если человек хочется взять для себя - бери дополнительную плату, т.к. он потом заебет тебя вопросами по коду.
Аноним 27/08/15 Чтв 21:10:21 #460 №535690 
>>535687
Сразу пиши, что ищешь удаленку.
http://4pda.ru/forum/index.php?showforum=477
Сильно не спеши, резюме аккуратно составь.
Аноним 27/08/15 Чтв 21:13:10 #461 №535691 
>>535689
.apk не спеши передавать - засними видео, чтобы продемонстрировать работоспособность программы. Если заказчик - частник, то можешь дать ему .apk с закладкой/урезанным функционалом.
Дизайн в 99% случаях делается без привлечения дизайнеров.
Аноним 27/08/15 Чтв 21:19:27 #462 №535695 
>>535689
>>535690
Понял, благодарю.
Аноним 27/08/15 Чтв 21:37:10 #463 №535703 
>>535685
Воспользуюсь спасибо, я пока на работе работаю просто.
Аноним 27/08/15 Чтв 23:05:22 #464 №535734 
>>535689
>Приложение для соц. сетей. Рискуешь быть забаненным на маркете, если будешь публиковать из под своего аккаунта.
Лол? Поподробнее, плиз, это о каких соцсетях идёт реч? А то собираюсь дописывать приложение для параши
Аноним 28/08/15 Птн 13:23:01 #465 №535903 
>>535355
layout transitions
Аноним 28/08/15 Птн 16:24:05 #466 №536009 
Реквестирую гайдов по поиску удалённой работы. Сейчас допиливаю первое приложение сложнее HelloWorld'а.
1) Обязательно ли размещать его в маркете или покатит просто кинуть ссылку на апк в резюме?
2) Реально ли найти фулл-тайм удалёнку в Москве или Питере если ты метишь на Android Junior+? Если да, то на какую ЗП можно расчитывать?
3) Фриланс. Сколько можно просить за свои услуги, если изучал андроид по гуглодокам и ни копейки не заработал ещё?
Аноним 28/08/15 Птн 18:16:41 #467 №536081 
Поясните мне кое-что , вот к примеру я хочу использовать либу Volley для того чтобы получить json с какого-нибудь ресурса. Я решил написать класс для общения с этим ресурсом - например пусть будет FakeService. В нем я описал метод getSomething(Callback callback) , который собственно выполнит запрос и внутри вызовет callback.onSuccess. Callback мой интерфейс с двумя методами onSucess,onError.
Так вот что допустим произойдет если я во время выполнения onCreate у activity вызову getSomething , передам туда класс реализующий Callback , и после этого сменю конфигурацию (ориентацию) , предположим что выполнение запроса еще не закончилось на момент уничтожения старой активити.
Аноним 28/08/15 Птн 18:46:44 #468 №536095 
>>536081
>предположим
Хуй его знает, похожая штука с ретрофитом. Но у меня в реальном юзании ниразу не получилось вызвать креш.
Но эти либы созданы для ведра, потому думаю там все ок с лайфсайклами.
Аноним 28/08/15 Птн 19:48:15 #469 №536123 
>>535734
Для вконтакта банят только так.
Для фейсбука - надо проверять.
Аноним 28/08/15 Птн 19:53:21 #470 №536125 
>>536009
4pda
3) Именно с фриланса и начинай. Рассчитывай цену исходя из времени и твоей зарплаты размером в 45 т.р.
Как присмотришь заказ - проконсультируйся здесь насчет сложности и сроков.
Бери в 2 раза больше времени, делай быстрее, но сильно тоже не спеши.
Тестируй на реальных устройствах (android 5; 4.4; 4.0)
test test test  viy 28/08/15 Птн 21:01:28 #471 №536156 
43 вопроса из теста E-legion. Крестиками отмеченные мои ответы. Из учета того, что я провалил тест то там масса ошибок. Кто храбрый и сможет ответить на вопросы налетай ...

1. Какое основное отличие между apply() и commit() у SharedPreferences.Editor при добавлении данных в Preferences?
- apply() вносит изменения только в память, но для сохранения их на диск нужно вызывать commit()
- commit() вносит изменения только в память, но для сохранения их на диск нужно вызывать apply
- commit() вызывается синхронно, а apply() асинхронно при сохранении данных на диск. Но при этом данные в памяти обновляются моментально.
+ apply() и commit() отличаются только тем, что commit() возвращает boolean значение об успехе операции изменения данных.
2. Какое основное предназначение метода onLayout() у View?
- Метод вызывается для определения местоположения текущего View в его Parent
- Метод предназначен для вычисления размеров текущего View
+ Метод вызывается для определения местоположения детей относительно текущего View
- Метод предназначен для вычисления размеров детей текущего View
3. Какой тип данных можно положить в Bundle?
- Любой Object можно передать в bundle (и все варианты что ниже)
- Можно передавать Map - связка ключ, значение
- Bundle не предназначен для передачи данны
+ Можно передавать Bundle в Bundle
4. Можно ли отправлять и читать SMS сообщения?
- Можно читать, если есть нужный permission, но отправлять нельзя
+ Можно читать и отправлять, если на это есть специальные permissions.
- Можно отправлять если есть нужный permission, но читать нельзя
- Нельзя ни отправлять, ни читать. Никаких похожих Permissions нет.
5. О каких событиях нельзя получить уведомление через BroadcastReceiver в приложении?
- Телефон загрузился
- Состояние сети изменилось
+ Текущее приложение было удалено
- Входящий звонок
6. Что произойдет, если несколько раз вызывать startService?
- Создастся столько инстансов сервисов, сколько раз вызывался startService
- Произойдет ошибка при повторном вызове. Приожение автоматически остановится. Необходимо делать проверку перед запуском сервиса, что сервис не запущен
- При каждом запуске startService будет создан новый инстанс, но запуск сервиса произойдет только после завершения предыдущего сервиса
+ Будет создан один истанс, все последующие startService() уведомляют ранее созданный экземпляр через специальный метод
7. Что характерно для IntentService?
- IntentService выполняется в отдельном потоке. При нескольких вызовах будет создано столько IntentService, сколько раз сколько вызывался запрос. Все выполняется параллельно
+ IntentService выполняется в отдельном потоке. При нескольких вызовах будет создан один IntentService, все запросы выполняются последовательно
- IntentService выполняется в UI потоке. При нескольких вызовах будет создано столько IntentService, сколько раз сколько вызывался запрос. Все выполняется параллельно
- IntentService выполняется в UI потоке. При нескольких вызовах будет создан один IntentService, все запросы выполняются последовательно
8. Какой метод не доступен для рисования на Canvas?
- drawLine
- drawPaint
- drawRect
+ Все методы доступны
9. От какого класса наследуются все UI элементы, способные содержать другие UI элементы?
- View
+ ViewGroup
- LayoutView
- RootView
10. Какого из Layout не существует в стандартном SDK?
- LinearLayout
- FragmentLayout
- RelativeLayout
+ TableLayout
11. Сколько раз вызывается Service.onStartCommand?
- Один раз, при запуске сервиса
+ Каждый раз, когда вызывается Context.startService с соответствующим Intent-ом
- Каждый раз, когда приложение «уходит» в фоновый режим работы
- Каждый раз, когда происходит binding к сервису
12. В каком потоке выполняется вызов метода OnClickListener.onClick у View?
- В потоке, который указан программистом при создании View
- В отдельном потоке, который создает Android при регистрации события
+ В потоке, в котором было создано View
- В главном потоке приложения
13. Если вернуть false из View.onTouchEvent, в ответ на MotionEvent с действием ACTION_DOWN, то:
+ Ни один MotionEvent текущего жеста больше не попадет в onTouchEvent данного View
- Если данное View не является ViewGroup, то Android никак не интерпретирует возвращаемое значение
- Все MotionEvent-ы текущего жеста будут попадать в это View
- Если данное View является ViewGroup, то Android никак не интерпретирует возвращаемое значение
14. Если печатать логи в каждом из перечисленных методов activity: onCreate, onStart, onResume, onPause, onRestart, onDestroy, какие цепочки логов невозможны?
+ onPause - onDestroy - onCreate — onStart
- onPause - onCreate — onStart
- onPause - onRestart - onResume — onPause
- onPause - onResume - onPause — onRestart
15. Какие ограничения имеют экземпляры класса Service?
+ Выполняться в том же процессе, что и само приложение
- Выполняться в отдельном от основного приложения процессе
- Запускать activity
- Все варианты неправильные
16. При каких значениях параметра “android:launchMode” activity будет существовать в системе максимум в одном экземпляре?
- standard и singleTop
- singleTop и singleTask
+ singleTask и singleInstance
- singleInstance и standard
17. Как внутри метода activity onCreate() определить, что activity была пересоздана, а не запущена в первый раз?
- Только так: getIntent() == null;
- Только так: savedInstanceState != null;
- Только так: isChangingConfigurations();
+ Можно использовать любой из вышеперечисленных способов
18. Чем могут быть вызваны утечки памяти?
+ Сохранение ссылки на Activity или View в статической переменной
- Вызов FragmentManager.replace() не на GUI-потоке
- Циклические ссылки
- Отсутствие вызова setContentView(null) в методе Activity.onDestroy()
19. Что из нижеперечисленного появилось в Android Lollipop?
+ Material design
- Поддержка нескольких пользователей
- Поддержка NFC
- Всё перечисленное
20. Как приложение может получить доступ к внутренним файлам другого приложения?
- У обоих приложений в AndroidManifest.xml должен быть указан одинаковый sharedUserId
- Приложения должны иметь одну подпись
+ Варианты 1 и 2 вместе
- Никак
21. Возможно ли изменять компоненты пользовательского интерфейса из background thread?
- Невозможно. UI может быть изменен только из UI thread. При попытке изменения системой будет выброшен Exception
- Невозможно. UI может быть изменен только из UI thread. При попытке изменения ничего не произойдет
- Возможно с использованием Handler или runOnUIThread()
- Возможно из любого потока
- Правильные вариант 1 и 2
+ Правильные вариант 1 и 3
22. Какие из методов (onPause, onStop, onDestroy) будут вызваны у activity, если в результате нажатия пользователем кнопки внутри этой activity будет показан диалог (наследник DialogFragment)?
- onPause -> onStop -> onDestroy
- Только onPause -> onStop
- Только onPause
+ Ни один из методов
23. В каких случаях пересоздается activity, созданная с параметрами по умолчанию?
+ После перезагрузки устройства
- При выходе приложения из background
- При повороте экрана
24. ContentProvider-ы можно использовать, как слой абстракции для следующих источников данных:
- только база данных SQLite
- только текстовые файлы
- только Shared Preferences
+ Для любых источников данных, включая описанные выше
25. Верно ли, что ContenProvider, реализованный в одном приложении, доступен другим приложениям?
- Верно
- Верно, но при первом использовании пользователю будет задан вопрос о разрешении доступа
+ Верно, если есть соответствующая настройка в манифесте
- Не верно
26. Что будет если в манифесте не указать "главную" Activity?
- Возникает ошибка сборки приложения
- Возникает ошибка при установки приложения
- Возникает ошибка при установки приложения при API >= 11
+ Приложение соберется и установиться, но не появиться в списке приложении на устройстве
27. Какой метод класса ViewGroup (или его потомков) при первой отрисовке вызовется первым?
- onDraw
- onSizeChanged
+ onMeasure
- onLayout
28. Каким способом нельзя сохранить ссылку на AsyncTask при пересоздании activity
- С помощью методов onRetainNonConfigurationInstance() / getLastNonConfigurationInstance()
+ С помощью методов onSaveInstanceState() / onRestoreInstanceState()
- Сохранить ссылку в объекте Application
- Сохранить ссылку в объекте Fragment
29. Какой из ниже перечисленных механизмов или компонентов, привязывается к жизненному циклу Activity или Fragment?
- Поток, созданный в активити
- Компонент Services
+ LoaderManager + Loaders
- AsynkTask с методами onPostExecute и onPreExecute
30. Что произойдёт, если вернуть null из Fragment.onCreateView?
- Возникнет исключительная ситуация NullPointerException в конструкторе фрагмента
- Возникнет исключительная ситуация NullPointerException во время транзакции если не указан тег
- Возникнет исключительная ситуация NullPointerException во время транзакции
+ Допустимо возвращать null
31. Что произойдет при попытке выполнить сетевой запрос с помощью URLConnection из основных методов компонента Services на Android OS 4+?
- Выполнится запрос, UI тормозить не будет
- Выполнится запрос, но UI системы будет тормозить, пока выполняется запрос
+ Запрос не выполнится, так как Services не предназначены для этого
- Запрос не выполнится, так как Services запускается в UI потоке и приложение упадет с ошибкой
test more  viy 28/08/15 Птн 21:02:11 #472 №536158 
32. Какой максимальный размер APK файла можно загрузить в Google Play?
+ 50мб
- 64мб
- 128мб
- Нет ограничений на размер APK файла
33. Какой порядок жизненного цикла правильный во Fragment?*
+ onAttach(), onCreate(), onCreateView(), onAcitivtyCreated(), onDetach()
- onAttach(), onAcitivtyCreated(), onCreateView(), onDetach()
- onAcitivtyCreated(), onAttach(), onCreateView(), onDetach()
- onCreateView(), onAttach(), onAcitivtyCreated(), onDetach()
34. Как называется набор утилит для подключения нативных библиотек?
- ADB
- SDK
+ NDK
- ADT
35. В каком порядке закончит свою работу два AsyncTask-а, запущенные последовательно?
+ Зависит от того, как долго они выполняются, так как AsyncTask-и работают параллельно
- Если API >= 11, то закончат в порядке запуска
- Если API < 11, то закончат в порядке запуска
- Если API < 11, то зависит от того, как долго они выполняются, так как AsyncTask-и работают параллельно
36. Какие компоненты никогда не прописываются в манифесте?
- Activity
- Service
- Receiver
+ Loader
37. Что нельзя сделать с помощью Intent?
- Запустить Activity
- Запустить Service
- Отправить широковещательное сообщение
+ Прочитать данные из ContentProvider
38. Какой способ сохранения ссылки на runtime-объект (например AsyncTask) при пересоздании activity рекомендуется в официальной документации android?
- С помощью методов onRetainNonConfigurationInstance() / getLastNonConfigurationInstance()
+ С помощью методов onSaveInstanceState() / onRestoreInstanceState()
- Сохранить ссылку в объекте Application
- Сохранить ссылку в объекте Fragment
39. При запуске Activity из Service нужно:
- Вызывать startActivity() на главном потоке Service
- Добавить в Intent флаг FLAG_ACTIVITY_NEW_TASK
- Добавить в Intent флаг FLAG_ACTIVITY_NEW_INSTANCE
+ Использовать метод Context.startActivityFromBackground()
40. В каких случаях в приложении может быть несколько файлов AndroidManifest.xml?
- В случае поддержки разных локализаций и конфигураций
- В случае, если в Google Play устанавливается разная цена в зависимости от региона
+ В случае наличия нескольких стартовых Activity
- Ни в каких, AndroidManifest.xml всегда один
41. Какой компонент не может быть запущен при помощи Intent?
+ Content provider
- Broadcast receiver
- Activity
- Service
42. Чему равен 1 dp., если плотность пикселей экрана устройства соответсвует hdpi?
- 1 px
+ 1,5 px
- 2 px
- 3 px
43. При нехватке ресурсов в системе какой из перечисленных процессов android убьет в последнюю очередь, при условии, что ни один из процессов в данный момент не отображает видимого пользователю UI-интерфеса?
- Процесс, в котором запущены три activity
+ Процесс, в котором запущен сервис и одна activity
- Процесс, который не содержит ни одного запущенного компонента
- Процесс, который занимает меньше всего памяти
Аноним 28/08/15 Птн 21:24:23 #473 №536167 
>>536156
Я не буду на все отвечать, только поправлю то, что думаю неправильно.

> 1. Какое основное отличие между apply() и commit() у SharedPreferences.Editor при добавлении данных в Preferences?
- commit() вызывается синхронно, а apply() асинхронно при сохранении данных на диск. Но при этом данные в памяти обновляются моментально.

> 2. Какое основное предназначение метода onLayout() у View?
- Метод вызывается для определения местоположения текущего View в его Parent

> 4. Можно ли отправлять и читать SMS сообщения?
- Можно читать, если есть нужный permission, но отправлять нельзя

> 10. Какого из Layout не существует в стандартном SDK?
- FragmentLayout

> 15. Какие ограничения имеют экземпляры класса Service?
- Все варианты неправильные

> 17. Как внутри метода activity onCreate() определить, что activity была пересоздана, а не запущена в первый раз?
- Только так: savedInstanceState != null;

> 23. В каких случаях пересоздается activity, созданная с параметрами по умолчанию?
- При повороте экрана

> + Приложение соберется и установиться, но не появиться в списке приложении на устройстве
> появиться
> появиться
suuuqa


> 31. Что произойдет при попытке выполнить сетевой запрос с помощью URLConnection из основных методов компонента Services на Android OS 4+?
- Запрос не выполнится, так как Services запускается в UI потоке и приложение упадет с ошибкой

>>536158
> 35. В каком порядке закончит свою работу два AsyncTask-а, запущенные последовательно?
За такие вопросы надо выебать. Не сказано даже, в каком экзекуторе запущены таски. Для дефолтного экзекутора оба этих варианте верны:
- Если API >= 11, то закончат в порядке запуска
- Если API < 11, то зависит от того, как долго они выполняются, так как AsyncTask-и работают параллельно
Хуйня вопрос, короче.

> 38. Какой способ сохранения ссылки на runtime-объект (например AsyncTask) при пересоздании activity рекомендуется в официальной документации android?
- Сохранить ссылку в объекте Fragment

> 39. При запуске Activity из Service нужно:
- Добавить в Intent флаг FLAG_ACTIVITY_NEW_TASK

> 40. В каких случаях в приложении может быть несколько файлов AndroidManifest.xml?
- Ни в каких, AndroidManifest.xml всегда один

> 42. Чему равен 1 dp., если плотность пикселей экрана устройства соответсвует hdpi?
Вопрос не правильно сформулирован. Если имеется в виду отношение px:dp, то ты правильно выбрал. А если нужно узнать, во что сконвертируется 1dp - то правильный вариант 2 px.
Аноним 28/08/15 Птн 23:33:40 #474 №536216 
Бля, что-то заебало все. Надеюсь проснусь завтра и попустит.
Аноним 29/08/15 Суб 01:54:47 #475 №536247 
14408024872310.jpg
Поясните за boolean в SQLite. Везде пишут, что нужно использовать integer с значениями 0 или 1. Однако я создал таблицу с boolean'ским полем, и даже заполнил значениями и он вроде как не выёбывается. Кароч, как правильно вытянуть данные курсором? Или всё-таки лучше Integer?
Аноним 29/08/15 Суб 02:05:12 #476 №536248 
>>536123
А чем объясняют?
Аноним 29/08/15 Суб 02:21:22 #477 №536252 
>>536247
В SQLite нет типов. Как ты интерпретируешь данные - дело твое.
Аноним 29/08/15 Суб 09:18:21 #478 №536286 
>>536248
Есть название бренда - значит твоеприложение выдает себя за оффициальное.
Нет названия бренда - фиг раскрутишь.
Аноним 29/08/15 Суб 11:28:37 #479 №536313 
>>534633
бамп
Аноним 29/08/15 Суб 13:37:21 #480 №536342 
>>536313
вот от e-legion лекция https://www.youtube.com/watch?v=91ZuIQJTH0M , может чем поможет
Куда податься молодому juniorу zifreid 30/08/15 Вск 10:56:12 #481 №536753 
Гайз. Я кун 24 лвл.
Работаю инженером - после ВУЗа работу сразу нашел. В студенчестве был опыт с PHP, SQL - и дико нравилось это. Спустя два месяца ковыряния в резисторах решил уйти в программирования. Очень хочу.
Учу/изучаю/что-то пишу свое под Android вот уже 1-1,5 года, хочу устроиться в нормальную компанию, но в городе (Томске) судя по всему с этим голяк. Делал 4 тестовых задания - 2 успешно, 2 не очень. В двух компаниях просто базу набивали, две другие - вот-вот потонут (не стал идти к ним).

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

Скажите, куда податься молодому Junior Android Developer?

P.S.: сейчас подумываю C++ изучить - думаю, лишним для Android не будет.
Аноним 30/08/15 Вск 11:04:18 #482 №536756 
14409218580110.jpg
Есть база данных SQLite, есть столбец id(integer primary key autoincrement) и name(text). Запрос на вывод заносится в лог с первого до последнего. Как мне эту херомантию из лога перетащит в textView? Анон, помоги.
Аноним 30/08/15 Вск 13:24:32 #483 №536784 
>>536756
т.е. ты хочешь инфу из Log.d() перенести в TextView, я правильно тебя понял?
 Аноним 30/08/15 Вск 18:01:17 #484 №536930 
>>536156
Потренироваться можно тут: http://goo.gl/forms/tF2xhGXNbv и тут
http://goo.gl/forms/XD959OQhoj 
Аноним 30/08/15 Вск 18:11:22 #485 №536937 
Почаны, есть у нас Spinner, и есть к нему адаптер.
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, someArrayList);
Этому спиннеру присвоен адаптер:
someSpinner.setAdapter(spinnerArrayAdapter);
Так вот, когда листаешь этот спиннер, он какого-то хера прыгает постоянно на начальные элементы. То есть скроллишь, скроллишь, хуяк, опять вверху, скроллишь заново, а оно хуяк, и опять тебя наверх. ХАЛП!
Аноним 30/08/15 Вск 18:12:44 #486 №536938 
>>536937
Прыгает, кстати, к тому элементу, который выбран в данный момент.
Аноним 30/08/15 Вск 20:33:35 #487 №536999 
Гайз, надо, чтобы вьюха (не меню) справа выкатывалась драгом. Мне надо во фреймлайауте объявить пустую вьюху и на ондраг вьюхи лайаут транзишн написать, так?
Аноним 30/08/15 Вск 20:57:39 #488 №537016 
>>536784
Да. Возможно?
Аноним 30/08/15 Вск 23:10:31 #489 №537056 
>>536753
Фриланс бро, и пока фрилансишь постоянно спекатейтишь все вакансии и высылаешь на подходящие резюме.
Аноним 31/08/15 Пнд 01:18:59 #490 №537127 
Ребят , а как у вас дела обстоят с фрилансом и прочими подработками? Сейчас на работе говнокодю на серверсайд жабе , и хочу что-нибудь выучить для фриланса (выбираю между богомерзким джаваскриптом с ангуляром и андроидом) . Посмотрел на upwork так там в основном хотят чтобы приложение было сразу и под iOS и андроид.
Аноним 31/08/15 Пнд 08:13:14 #491 №537200 
>>537127
На js под все платформы подходит только для простых проектов, типа приложений для сайтов.
Аноним 31/08/15 Пнд 13:11:11 #492 №537325 
Здравствуйте. Через месяц буду искать работу джуниором. Заметил, что во многих вакансиях в качестве требований стоит знание многопоточного программирования. А что именно это подразумевает в контексте Android-разработчика? Обычные Java Thread-Runnable? AsyncTask? java.util.concurrent? Какие-то сторонние Android API, реализующие многопоточность?
Аноним 31/08/15 Пнд 13:58:03 #493 №537356 
Аноны, которые поступали в оффлайн-школу e-legion, вам ещё не перезванивали?
Аноним 31/08/15 Пнд 14:20:41 #494 №537364 
>>537325
да, еще Loaders и (главное) Handler/Looper подкачай
Аноним 31/08/15 Пнд 14:42:48 #495 №537370 
Возможно нубский вопрос, т.к. особо пока не занимался темой треда - как приложение узнаёт, что оно на рутованном телефоне и можно ли как-нибудь ввести приложение в заблуждение?
Аноним 31/08/15 Пнд 14:44:09 #496 №537371 
>>537364
Спасибо, но что "да"? Всё перечисленное нужно? А тогда какие есть популярные сторонние API для многопоточности? Знаю и пользовался только loopj.com/android-async-http/, кстати, охуенная вещь по сравнению с AsyncTask.
Аноним 31/08/15 Пнд 14:47:10 #497 №537373 
>>537370
Runtime runtime = Runtime.getRuntime();
runtime.exec("su")
обычно вот так узнаёт. Про первую строчку не уверен, может, получение экземпляра как-то по другому, пишу, по памяти.
Аноним 31/08/15 Пнд 15:21:23 #498 №537391 
>>537371
Ну фиг знает работаю android девом четвертый год, в основном используем просто AsyncTask/AsyncLoader/IntentService/java..Thread/java..Executors
Ну еще пытались Volley и RxJava - но они как-то не зашли.

А так джунов в основном гоняют по java.lang.Thread + java.util.concurrent.* - понятно же что вы андроиде нулевые
Аноним 31/08/15 Пнд 15:23:35 #499 №537393 
>>537391
Спасибо!
Аноним 31/08/15 Пнд 17:34:41 #500 №537471 
>>537016
если на устройстве нет root-прав, то не выйдет, т.к. система не даст информацию из логов.
Если есть - то чекай способ тут: http://stackoverflow.com/questions/25351286/android-display-logcat-in-textview
Аноним 31/08/15 Пнд 17:35:26 #501 №537472 
>>537056
джуну реально фрилансить?
Ребят, подскажите пусть и дешевые, но все ж простые для вхождения в это дело платформы.
Аноним 31/08/15 Пнд 17:36:14 #502 №537474 
>>537391
Реактивное программирование все чаще и чаще вылезает в зарубежных источниках.
Это действительно будущее Android?
Аноним 31/08/15 Пнд 18:00:59 #503 №537489 
>>537474
И во фронтенде тоже... Вот вчера всю ночь не спал, читал про Rxjs. Потоки, события, хендлеры, промисы... Вот это всё у меня сейчас в голове. Сейчас куда не посмотрю, вижу Observable и сразу же всякие функции в голову лезут, жить невозможно. Так что да, видимо реактивное программирование это будущее.
Аноним 31/08/15 Пнд 18:39:18 #504 №537514 
Каким объемом знаний нужно обладать, чтобы устроиться андройд-джуном?
Или на стажировку куда-нибудь
Аноним 31/08/15 Пнд 19:03:11 #505 №537521 
Котаны когда вам 8 яву завезут?
Почему в андроид студии градл вместо мавена?
И я нихуя не понял в том как это работает. Где классы то?

Мимо жабакодер.
Аноним 31/08/15 Пнд 19:16:07 #506 №537526 
>>537472
Так android же. Хочешь подскажу тебе несложных проектов?
Аноним 31/08/15 Пнд 19:22:03 #507 №537527 
>>537371
В loopj нельзя красиво выполнить последовательные запросы.
Аноним 31/08/15 Пнд 19:25:08 #508 №537528 
>>537391
Слухай, как красиво сделать такую вещь:
Заменяем кнопку открытия navigation drawer на тулбаре на стрелку "назад". Потом меняем все обратно?
Аноним 31/08/15 Пнд 19:34:18 #509 №537531 
>>537526
давай
Аноним 31/08/15 Пнд 19:52:00 #510 №537542 
>>537200
Это понятно , меня больше интересовал вопрос о возможности пофрилансить на том же upwork зная андроид , но не умея писать под гейось.
Аноним 31/08/15 Пнд 20:12:52 #511 №537559 
>>537514
могу скинуть типовое тестовое задание. Справишься - считай, 50-70% от минимума освоил.
Аноним 31/08/15 Пнд 20:13:49 #512 №537560 
>>537526
буду рад любой помощи в этом направлении). мне почту оставить или как?
Аноним 31/08/15 Пнд 20:16:48 #513 №537563 
Является ли тест от elegion чем-то показательным? Я на него не успел зарегаться, но я видел вопросы и могу ответить на все.
С такими знаниями можно уже устраиваться джуном работать?
Аноним 31/08/15 Пнд 20:21:34 #514 №537567 
>>537563
И да, и нет. Вопросы там интересные, знать - крайне желательно, но для джуна, как по мне (а я wannabe junior dev) не сильно важно. В процессе работы столкнешься с каждым вопросом лично.
Лучше поизучать библиотеки и новые веяния - реактивное программирование, например)). Это при тестовых заданиях и пару очков даст, и проще тебе будет. Самому на одном задании компания ткнула носом, типа, "написал велосипеды, а лучше бы все на либах сделал".
Аноним 31/08/15 Пнд 20:25:29 #515 №537570 
>>537559
Кидай сразу в тред, тут несколько воннаби джунов сидят.
Аноним 31/08/15 Пнд 20:52:25 #516 №537582 
ПЕРЕКАТ
https://2ch.hk/pr/res/537576.html

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

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

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

ПЕРЕКАТ
https://2ch.hk/pr/res/537576.html
Аноним 01/09/15 Втр 00:07:16 #517 №537669 
>>537570
Да, кидай прямо сюды
Ловите тестовое Аноним 01/09/15 Втр 03:54:05 #518 №537731 
Тестовое задание:
================================================================
Реализовать простое приложение с базовыми функциями:

Общее:
1. Приложение должно иметь свою, отличную от стандартной, иконку.
2. При загрузке приложение должно отображать сплэш-экран (произвольную картинку).
3. В приложении показывать верхнюю панель со вкладками (TabHost):
- List
- Scaling
- Service
- Map
Вкладки должны содержать название и иконку (можете подобрать любые из интернета).
4. Сделать локализацию приложения на двух языках: русский и английский с возможностью переключения языка из приложения (без привязки к языку устройства). (Для элементов интерфейса и упрваления приложения, то есть элменты списка из пункта 1 переводить не нужно). После перезагрузки приложения выбранный язык должен сохраняться.

Экраны:
1) List:
- Вывести список (ListView) редактируемых пунктов: каждый пункт выводить как иконка-картинка (двух типов для всех пунктов) + имя пункта + чекбокс (если выбран, отображается иконка 1го типа, иначе - 2го типа).
- В меню, отображаемое по нажатию на конпку Menu добавить пункт "Add", который открывает подэкран с формой добавления нового пункта (форма с одним полем - Item Name): Внизу две кнопки Done (добавить пункт) и Revert (отменить добавление) - по нажатию происходит возврат к списку, по нажатию на кнопку Back (на устройстве) выводить AlertDialog с предложением сохранить пункт, если поле Item Name было отредактированно, если нет, возврат к списку без AlertDialog'a.
- При клике на пункт в списке открывать форму редактирования (индентичную форме добавления нового пункта).
- При долгом нажатии на пункт выводить диалог с двумя пунктами Edit (открывать форму редактирования, как в предыдущем пункте) и Delete (удалить строчку из списка).

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

2) Scaling:
- На экране должны отображться две кнопки-картинки(используйте любые картинки для нормального и нажатого состояния): 1) выбрать изображение из галереи (нативного приложения Gallery); 2) снять изображение на камеру. После этого показать эту картинку на новом экране с возможностью увеличения и уменьшения через multitouch и через кнопки зума.

3) Service:
- Получить от данного URL-а XML-данные: http://storage.space-o.ru/testXmlFeed.xml
- Вывести полученные данные как статичный скроллируемый список, в произвольном виде (на свой выбор - главное чтобы было читаемо).
- Во время загрузки показывать троббер (крутилку загрузки).
- Сделать так, чтобы во время вращения троббера, можно было повернуть устройство горизонтально, и при этом запрос продолжал идти, а приложение не падало.

4) Map:
- Отобразить MapView с указанием текущего местоположения.
- Вывести географические координаты в виде текста на этом же экране.
================================================================
Аноним 01/09/15 Втр 17:25:34 #519 №537934 
>>537731
Такое ощущение, что должен сделать почти готовое приложение, которое затем немного подправят и опубликуют в маркете.
Аноним 01/09/15 Втр 18:58:32 #520 №537985 
>>537934
В каком-то смысле да, этим заданием ты по сути сделаешь каркас, которым в дальнейшем же и будешь пользоваться, создавая приложения. А дальше зачказчик хочет список - копипастишь кусок кода, реализующий List, вставляешь нужные данные - профит, хочет отображение карты - копируешь кусок кода Map, ну ты понял короче. При этом ты доказываешь, что вот эту часть, которая везде одинаковая, ты уже знаешь, и будешь работать с ней не напрягаясь. Хорошее задание, короче. Емкое, но поучительное. Я что-то подобное делал на стажировке.
comments powered by Disqus

Отзывы и предложения