М.Двач / Программирование

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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

51 Кб, 600x300

Разработка под Android тред №17 11 Апр, 20:22 #714032 В конец треда | Веб

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

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

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

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

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

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

Книги, их никто не читает, но все советуют только одну
1) The Busy Coder’s Guide to Android Development - в отличии от остальных книг она обновляется, а так как ведро не стоит на месте а хуярит семимильными шагами, то я бы и не советовал другие книги.

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

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

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

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

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

Пишите в треде что добавить.

Ответы>>714511>>714530>>715052>>716492>>720035>>720817>>723486>>724407>>726627>>726628>>741013

36 Кб, 671x514

11 Апр, 20:24 #2 #714037

Есть два вьюпейджера, один(вертикальный) находится в другом(горизонтальный)
как настроить тоучлистенеры чтобы при скроле влево-вправо листался горизонтальный вьюпейджер, а при скроле вверх-вниз - горизонтальный ?
и хотелось бы немного разяснений услышать про onInterceptTouchEvent
Помогите разобратсья плз.
Уже наверное 4ый день бьюсь (
Вертикальный вьюпейдер развернут через текст трансформпейдж. И ловится движение по горизонтали и меняются координаты(пикча).
Можно ли в этом интеррупте вылавливать движения по горизонтали и отдавать их как то вьюпейджеру родителю(горизонтальный) ?

Ответы>>714042

11 Апр, 20:27 #3 #714042

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

А мне вот надо делать новый пост про Kotlin, но мне лень :|

Ответы>>714094

11 Апр, 20:32 #4 #714051

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

Ответы>>714056>>714184

11 Апр, 20:40 #5 #714056

>>714051
Что ты там подтягивтаь собрался? Пиши свой бекенд на спринге, так подтянешь.

Ответы>>714058

11 Апр, 20:42 #6 #714057

Выручайте братцы, как собрать этот мультидекс, получаю вот такую бяку, когда пытаюсь собрать проект под pre-Lollipop:

Error:Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded (9 times)

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

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

Как вылечить, отсыпать больше памяти, где?

Ответы>>714097>>722310

11 Апр, 20:42 #7 #714058

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

Ответы>>714059

11 Апр, 20:43 #8 #714059

>>714058
Тогда как пишешь на андроиде? Говно какое-то? Тогда иди проходи курсы на курсере и юдасити для совсем днищ.

Ответы>>714060

11 Апр, 20:45 #9 #714060

>>714059
Курсам благодаря и пишу научился там всякой хуйне. Но юдасити годное только про разметки, про код вообще полную хуйню несут мне не нравится

Ответы>>714166

11 Апр, 21:20 #10 #714094

>>714042
покажите хотябы как регулировать тоучлистенер если во вьюхе есть другая вьюха

11 Апр, 21:21 #11 #714097

>>714057
>OutOfMemoryException
>это же очевидно как это решить нужно дать системе еще пару гигов памяти!!!!

Как хорошо что есть куча индусов с такими же проблемами.

118 Кб, 774x897

11 Апр, 21:22 #12 #714098

Устанавливаю андроид студию под линукс, гляньте что он хочет

Ответы>>714107>>714141

11 Апр, 21:28 #13 #714107

>>714098
Какая жаба стоит? Какой дистрибутив? И да, кажется он не может найти X Window System, скочай через свой менеджер пакетов.

Ответы>>714110>>714113>>714114

11 Апр, 21:31 #14 #714110

>>714107
Дебиан

Ответы>>714116

11 Апр, 21:31 #15 #714113

>>714107
Кеды юзаю, есть еще гном

Ответы>>714116

11 Апр, 21:31 #16 #714114

>>714107
ОпенЖДК

Ответы>>714116

11 Апр, 21:34 #17 #714116

>>714114
>>714113
>>714110
Вы че там охуели, или ты один человек?

1) Поставь нормальную 8 с сайта оракла, могут быть траблы;
2) У меня на убунте все было ок сразу, иди нахуй;
3) Пошурши что за x11 такой, установи;

Ответы>>714123

11 Апр, 21:35 #18 #714123

>>714116
Да это я, кек

sage 11 Апр, 21:51 #19 #714141

>>714098
Прыщеблядки соснул :)

Ответы>>714146

11 Апр, 21:53 #20 #714144

В тред врывается абсолютный НОЛЬ! И буду задавать вопросы.

Есть 1 кнопка. Надо сделать из нее картинку. Но так чтоб без имэйджботтон. Как сделать ?

Ответы>>714148>>714149>>714150>>714441

11 Апр, 21:54 #21 #714146

>>714141
Нет, я не сосал, я покушать принес

11 Апр, 21:56 #22 #714148

>>714144
android:background
setBackground(...)

11 Апр, 21:56 #23 #714149

>>714144
почему имеджбаттон нет?
На любой или почти любой вью можно прописать onClick

Ответы>>714152

11 Апр, 21:57 #24 #714150

>>714144
Просто делаешь ImageView, а на него уже цепляй обработчик.

Ответы>>714152

11 Апр, 21:58 #25 #714152

>>714150
>>714149
Я уже просто примотал к ней функций. И не уверен что смогу написать их снова.

Ответы>>714157>>714198

11 Апр, 22:01 #26 #714157

>>714152
Подумой, не нужно фиксироваться на Button, очень вероятно что все действия что ты к ней прицепил будут работать и с обычным View. не нужно себя ограничивать понапрасну. На краняк можешь прицепить Drawable через setCompoundDrawable

Ответы>>714159

11 Апр, 22:02 #27 #714158

И никто не хочет сделать самое простое приложение по доставке. Типо новой почты без прибамбасов. Тупо чтоб вход и описание?

Ответы>>714174

11 Апр, 22:02 #28 #714159

>>714157
Сложно. Пойду погуглю. Спасибо.

11 Апр, 22:06 #29 #714166

>>714060
А шапка тебе не подходит?

Ответы>>714457

11 Апр, 22:14 #30 #714174

>>714158
Заплачу!

Ответы>>714175

11 Апр, 22:15 #31 #714175

>>714174
Понятно что заплатишь, лол.

353 Кб, 2560x1662

11 Апр, 22:21 #32 #714184

>>714051
Твой пост просто надо в красную рамочу и сохранить.

Что бы потом тыкать всяких "знаю наизусть java core, есть 5 приложений в GP, сделал 100 тестовых заданий"
и при этом не могу устроится даже стажерами за еду.

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

Ответы>>714201>>714442

11 Апр, 22:33 #33 #714198

>>714152
просто где объявляешь вью и кастинг на баттон делаешь, меняешь на имеджвью

11 Апр, 22:34 #34 #714201

>>714184
да хуле я долбаеб я никогда кода не писал, пол года на курсы походил и все, это может они долбаебы)

11 Апр, 22:37 #35 #714204

Кто сделает за деньги приложение?

12 Апр, 03:11 #36 #714367

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

Ответы>>714374>>714416

12 Апр, 04:31 #37 #714374

>>714367
Войти куда? И где регистрироваться? И что вообще ты хочешь? Подробнее распиши, что ли

12 Апр, 04:42 #38 #714377

Люди, хочу управлять процессом закрытия приложения. Не чтоб нажал back и ждешь пока система соизволит, а чтоб ткнуть exit и все уверенно потухло (тушение своих сервисов я к этому приобщу). Гугл говорит в основном или "нахер оно тебе надо, пусть система все делает сама", или советуют finish, или killProcess.
Первый вариант не устраивает очень
Второго пробовал достичь через static boolean exitOrder, который по нажатию задается, а потом во всех Activity в onResume { if(exitOrder) finish(); }. В результате оно выходит из всех в backStack, из корневого, процесс остается висеть, флажок, соответственно, тоже, и открыть прогу уже нельзя. Херня, короче
А после killProcess приложение считает, что ее насильственно убили, это как-то непорядок и надо ее восстановить (как я понял из гугла). Восстанавливает, и она вылетает по еще одной херне, но это уже другая история.

Короче, что тут можно сделать?

Ответы>>714378>>714385>>714493

12 Апр, 04:45 #39 #714378

>>714377
Допустим, у сервисов есть флажки, которые говорят воскресать ему или нет. Может у Activity тоже что-то такое? Очень хочу, чтоб дохло по взмаху руки, и уже не вставало без команды

12 Апр, 06:04 #40 #714385

>>714377
Зачем?

Ответы>>714472

12 Апр, 08:02 #41 #714416

>>714367
Используй Google OAuth (авторизация по гугл аккаунту телефона), в android это из коробки.

sage 12 Апр, 09:37 #42 #714441

>>714144
> В тред врывается абсолютный НОЛЬ! И буду задавать вопросы.
> Есть 1 кнопка. Надо сделать из нее картинку. Но так чтоб без имэйджботтон. Как сделать ?
В первую очередь ты ноль в умении формулировать вопросы. Уёбывай отсюда и не возвращайся, потому что как только ты научишься, тебе будет достаточно гугла для твоих энтрилевельных вопросов.

12 Апр, 09:39 #43 #714442

>>714184
Откуда вообще такие проблемы с трудоустройством? Я сам не пытался ещё никогда, так что интересно будет послушать.

12 Апр, 10:19 #44 #714457

>>714166
да подходит шапка, но нудно в реактивном темпе все это усвоить. Думал может еще кто что подскажет

12 Апр, 10:55 #45 #714467

Аноны, кто знает че и как ? Сохраняю объекты, что потом достать иъ и восстановить в listview но никак не получается это сделать
Вот как сохраняю:
http://pastebin.com/DSfFFyED
Вот как достаю это:
http://pastebin.com/gcH3MewB
Как теперь построить listview заново?

Ответы>>714468>>714485

12 Апр, 10:57 #46 #714468

>>714467
Че это за говно? Нахуя ты в синглтон сохраняешь?

Ответы>>714469>>714492

12 Апр, 10:58 #47 #714469

>>714468
не в синглтон, смотри внимательнее

12 Апр, 11:17 #48 #714471

Вкатывайтесь в телеграм конфу, помощь 24/7.
https://telegram.me/AndroidChan

12 Апр, 11:22 #49 #714472

>>714385
На самом деле, такое у меня ТЗ.
Но в целом, я не могу понять почему в том же ВК 2.7 это заросто сделали, как и в куче других приложений с кнопкой выхода, а мне, значит, система запрещает. Не может быть, чтобы это было нельзя сделать

Ответы>>714473

12 Апр, 11:23 #50 #714473

>>714472
Я напримре нигде не видел что бы так было. Расковыряй приложение где такое видел.

Ответы>>714474>>714476

12 Апр, 11:24 #51 #714474

>>714473
чем можно нормально расковырять приложение?

Ответы>>714484

12 Апр, 11:30 #52 #714476

>>714473
Opera mini 7.6.40234
jasmine IM 5.5.1
ВК 2.7.6
Да, конечно, сейчас совсем не модно пилить кнопку выхода, так что нигде и нет. А с меня требуют поддержания этой старой традиции

Ответы>>715266

12 Апр, 11:42 #53 #714484

>>714474
Да куча тулзов, вот например:
http://ibotpeaches.github.io/Apktool/

12 Апр, 11:43 #54 #714485

>>714467
> никак не получается это сделать
Нафиг ты этот код скинул, я так понимаю в нем ошибок нет?
Как ты листвью изначально строишь?

Ответы>>714486>>714492

12 Апр, 11:45 #55 #714486

>>714485
adapter = new ListAdapter(getApplicationContext());
buttonsListView = (ListView) findViewById(R.id.customListView);
buttonsListView.setAdapter(adapter);
Вот так

Ответы>>714489

12 Апр, 11:51 #56 #714489

>>714486
Бля, а где дата из адаптера? Или она по дефолту строится?

Ответы>>714492>>714494

12 Апр, 12:01 #57 #714492

>>714489
>>714485
>>714468
Какие люди нервные, кошмар

Ответы>>714500

12 Апр, 12:01 #58 #714493

>>714377
Попробуй Activity.finishAffinity(...)

12 Апр, 12:03 #59 #714494

>>714489
вот так
http://pastebin.com/euUyXYtB

12 Апр, 12:28 #60 #714500

>>714492
>MySingleton.getOurInstance().getButtonToNotifications()
За такое убивают нахуй.

Ответы>>714505

12 Апр, 12:40 #61 #714505

>>714500
Да че ты доебалсяб либо говори как правильно делать либо не пизди.

Ответы>>714510

12 Апр, 12:47 #62 #714510

>>714505
Что правильно, ты лучше скажи что ты там вообще делаешь? Потому что лично мне понятно нихуя, какие-то кнопки в синглтоне, ты там крокодилом ставишься?

>MySingleton.getOurInstance().getButtonToNotifications()
Вот что это такое, какой у этого тип?

>SpinnerAdapter внутри ListAdapter
Нет ты точно ебанутый, почитай как делать свой адаптер.

Ответы>>714512

12 Апр, 12:48 #63 #714511

>>714032 (OP)
Подскажите, реально ли разрабатывать под ведро на мелком ноуте типа http://ogo1.ru/market/noutbuki/158030-Lenovo-IdeaPad-100-14IBY-N3540?sample=

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

Ответы>>714513>>714515>>714525

12 Апр, 12:50 #64 #714512

>>714510
Динамическое создание кнопок и добавление их в увидомление делаю. Спиннер адаптер отдельно лежит. С чего ты вообще взял что он внутри

Ответы>>714517

12 Апр, 12:51 #65 #714513

>>714511
накатываешь линукс минт и можно делать небольше проекты, но лучше 4 гб оперативы

12 Апр, 13:00 #66 #714515

>>714511
Ебать конские цены за это говно.

Ответы>>714516

12 Апр, 13:03 #67 #714516

>>714515
Ну так а сайт как называется?

12 Апр, 13:06 #68 #714517

>>714512
Динамическое создание кнопок? Ты там реально объёбаный.

Ответы>>714519>>714528

12 Апр, 13:08 #69 #714519

>>714517
а хуле тебе не нравится?

12 Апр, 13:19 #70 #714525

>>714511
> на мелком ноуте
> 14''
Я вообще на 13'' макбуке работаю 80% времени и мне норм.

Память только прокачай до 4 хотябы

Ответы>>714531

12 Апр, 13:20 #71 #714528

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

982 Кб, 972x1216

12 Апр, 13:22 #72 #714530

>>714032 (OP)
ОП-хуй, куда лоли дел?

Ответы>>715303

12 Апр, 13:22 #73 #714531

>>714525
Ты на макбуке работаешь, а там днище.

Ответы>>714533

12 Апр, 13:25 #74 #714533

>>714531
Долбоёб в треде, все на Asus

Ответы>>714535

12 Апр, 13:29 #75 #714535

>>714533
хех

12 Апр, 23:10 #76 #715052

>>714032 (OP)
пацаны хелпаните
при работе в студии на диске С создаются несколько файлов по 2 ГБ из-за чего система жутко тормозит
как это фиксить?
знакомый разраб посоветовал юзать эмулятор genymotion, потому что дефолтный эмуль в студии у меня пизда как лагал
кто пользуется этим и может пояснить за эту штуку?

Ответы>>715056>>715076>>721000

12 Апр, 23:11 #77 #715056

>>715052
и че при попытке написать просто ответ мне пишет, что капча невалидна?

12 Апр, 23:24 #78 #715076

>>715052
SSD
И еще новый эмулятор вроде четкий. Ну мне так показалось.

13 Апр, 07:09 #79 #715266

>>714476
> Да, конечно, сейчас совсем не модно пилить кнопку выхода, так что нигде и нет. А с меня требуют поддержания этой старой традиции
Тупо делай finish и всё. В тз ведь не сказано, чтобы процесс убивался?

Ответы>>715267

13 Апр, 07:11 #80 #715267

>>715266
Сказано... Чтобы убивалось и приложение и сервис

Ответы>>715268

13 Апр, 07:12 #81 #715268

>>715267
Это не равно убийству процесса. Делай finish и останавливай сервис, вот и всё.

Ответы>>715269

13 Апр, 07:16 #82 #715269

>>715268
Ну сервис я закрывать умею. Просто тут в чем разница. Можно нажать просто назад и получить свой finish. Приложение немного повисит, сервис останется жить и будет воскресать. А есть кнопка exit, которая должна оправдывать свое наличие, все тушить, чтоб убирать все бесследно

Ответы>>715272

13 Апр, 07:19 #83 #715272

>>715269
По кнопке ты делаешь finish + остановку сервиса, что тут непонятного-то?

Ответы>>715273

13 Апр, 07:21 #84 #715273

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

Ответы>>715274>>715277

13 Апр, 07:24 #85 #715274

>>715273
Да ты заебал, сделай уже system.exit(0)

Ответы>>715275

13 Апр, 07:25 #86 #715275

>>715274
пробовал

13 Апр, 07:45 #87 #715277

>>715273
Блядь, от тебя этого никто не требует. Требуется закрытие приложения и серивиса. Никто в здравом уме не заставит тебя убивать процесс приложения, тем более в 2016.
Выдумал блядь себе задачу и ебёт мозги всему треду теперь.

Ответы>>715278

13 Апр, 07:46 #88 #715278

>>715277
В здравом уме, ключевое слово

13 Апр, 09:15 #89 #715303

>>714530
Не заметил.

13 Апр, 13:23 #90 #715440

Есть файл в вебе формата CSV.

Представляет из себя простую таблицу с двумя столбцами из слов.
Выглядит как-то так:

кококо покпок
копко логор

Вопрос:

как это парсить и занести в приложение?
Оно должно само скачивать этот файл и заносить куда-нибудь (массив, стринг, это уже не важно).

Ответы>>715455>>715459>>715479

13 Апр, 13:36 #91 #715455

>>715440
Берешь и просто без задней мысли скачиваешь и парсишь.
Гугли как скачивать файлы, парсить csv и д.р.

Ответы>>715533

13 Апр, 13:40 #92 #715459

>>715440
Тебе нужен:
ICSVParser csvParser = CSVParserFabric.createCSVFileParserInstance();
ICSVDocument doc = csvParser.parseFromURL("2ch.hk");

Ответы>>715533

10 Кб, 313x111

13 Апр, 13:52 #93 #715479

>>715440
Кажется это работа для Kotlin-man.

Вот так, легким движение руки, у тебя получается список из кортежей (ключ, значение):
[(кококо, покпок), (копко, логор), (...), ...]

Ответы>>715533

13 Апр, 14:47 #94 #715533

>>715455
>>715459
>>715479
Спасибо, ананасы.

Думаю, если я в тестовом задании на работу напишу на котлине, по голове меня не погладят

Ответы>>715568

44 Кб, 471x559

13 Апр, 15:01 #95 #715544

День добрый, аноны, нужны ваши советы по поводу реализации.

По центру экрана будут две картинки, под ними - две стрелки для смены картинок.

Можно как-то реализовать в центре CardView, сделав при этом две его половины кликабельными (чтоб каждая вела на свою отдельную активити или фрагмент, хз как лучше)?

Как лучше реализовать эти стрелки? Это что-то вроде табов, только делается стрелками (при этом анимашку от табов было бы здорово подключить).

И собственно, как в целом лучше? Сделать это все как-нибудь фрагментами или активити тоже пойдет?

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

Примерная схема на моем медскилзе в пейнте.

Ответы>>715563>>715978>>716164

13 Апр, 15:03 #96 #715547

Как вы считаете, что имеет в виду работодатель под
"возможность корректно завершить приложение"?

Мне казалось, что простая кнопка назад с этим достаточно неплохо справляется.

Ответы>>715566>>716166

13 Апр, 15:29 #97 #715563

>>715544
Ну тут простой вьюпейджер, у него есть метод установки текущей страницы с анимацией перелистывания.

13 Апр, 15:29 #98 #715566

>>715547
Может сервисы хуервисы по закрывать, ресурсы освободить какие.

13 Апр, 15:30 #99 #715568

>>715533
Это тестовое задание на работу андроид девом? И ты пришел сюда с этим вопросом? Не удивлюсь, если тебя возьмут.

Ответы>>715796

13 Апр, 18:42 #100 #715796

>>715568
это часть задания.

>Не удивлюсь, если тебя возьмут.
Надеюсь, лол.

Ответы>>716238

13 Апр, 20:43 #101 #715978

>>715544
мб viewflipper

13 Апр, 23:13 #102 #716118

Анон,есть два стула.На одном Retrofit дроченный,на другом-дефолтная java-либа.В ближайшее время предстоит за кратчайший срок запилить клиент-серверное приложение,что посоветуете использовать?Какие подводные камни?

Ответы>>716121

13 Апр, 23:18 #103 #716121

>>716118
Retrofit, no exceptions.
Самый быстрый и надежный способ. Проблемы возникнут если у твоего бекенда кривое апи, но это все преодолимо, куча вещей из коробки.

Ответы>>716574

13 Апр, 23:52 #104 #716155

Аноны, кто работал с VK SDK, там есть готовое решение для работы с сообщениями в реальном времени, или необходимо самому подключаться к лонг пуллу и что то с ним делать?

13 Апр, 23:59 #105 #716157

Ну что, готовы на Swift переходить? :)

Ответы>>716159

14 Апр, 00:02 #106 #716159

>>716157
даже если так будет, то ой как нескоро

14 Апр, 00:12 #107 #716164

>>715544
Тольо фрагментами, с активити будет пролаг при создании новой активити. Как сделать? Ну, лол, легко. У тебя где-то в БД или кэше хранится лист карточек и для каждой карточки у тебя свой фрагмент, при этом структура одна и та же, так? Значит крепишь к стрелкам коллбэк к активити с указанием позиции в листе соответствующего объекта, который описывает текущий фрагмент. А активити обрабатывает эту хуйню - реплейсит фрагмент на такой же, но с другими объектами, и при реплейсе вызывает нужную тебе анимацию, какую напишешь. Добавишь ещё проверку на первый-последний элемент, чтобы стрелки гасить.
А что должно показываться при клике на половинки кардвью, я так и не понял. На всякий случай советую не тупить и написать онкликлистенеры для этих двух картинок, которые показываются, и там можно что угодно делать.

Ответы>>716982

14 Апр, 00:13 #108 #716166

>>715547
Сделай кнопку выход, которая будет Activity.finish() вызывать, ололо.

14 Апр, 05:21 #109 #716237

Слушайте, у меня ничего не наебнется, если я установлю Студию не в папку по дефолту, а в другую, которую сам создам? Как по канону лучше поступить

14 Апр, 05:23 #110 #716238

>>715796
Слишком просто?

14 Апр, 11:53 #111 #716423

Анон, напомни. Версия SDK, на которой я пилю приложение и версия SDK у AVD обязательно должны совпадать?

Ответы>>716441

14 Апр, 12:36 #112 #716441

>>716423
Что ты подразумеваешь под версией SDK? Есть Sdk Tools, есть Platform-Tools, есть Build Tools. Могут быть разными ничего страшного.

Ответы>>716450

14 Апр, 12:39 #113 #716442

Можно ли схитрожопить и заставить elevation работать на pre-Lolipop ?

Ответы>>716451

14 Апр, 12:59 #114 #716450

>>716441
>Что ты подразумеваешь под версией SDK
Выбор, минимального SDK, когда нажимаю Create New Project и SDK Tools, когда в SDK менеджере качаю необходимые компоненты.
У меня тут просто эмулятор не запускается никак, я уже заебался и не знаю, на что подумать

Ответы>>716461

14 Апр, 12:59 #115 #716451

>>716442
app:elevation?

Ответы>>716479>>717375

14 Апр, 13:13 #116 #716461

>>716450
Самое интересное, что создается и висит процесс emulator, но нихуя не запускается.
После нескольких попыток, у меня уже 6 процессов emulator висит. Может, кто сталкивался или знает, как пофиксить?
У меня тут интеловский проц. и интеловская видяха на ноуте

Ответы>>716471

14 Апр, 13:39 #117 #716471

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

Ответы>>716474

14 Апр, 13:47 #118 #716474

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

Ответы>>716483

14 Апр, 13:57 #119 #716479

>>716451
Хах, а ты смешной.

14 Апр, 13:59 #120 #716483

>>716474
Это не может быть проблемой, у тебя точно новый эмулятор? Я вот запускаю проект с минсдк 17 скомпиленый под 23 с таргетом на 22, на тулзах 23 на эмуляторе 24rc.

Ответы>>716485>>716488

14 Апр, 14:01 #121 #716485

>>716483
> target 22
Лень с пермишенами ебаться?

Ответы>>716504

14 Апр, 14:04 #122 #716488

>>716483
>у тебя точно новый эмулятор
Да, только-только Студию последнюю скачал.
Ох, еще ни разу не было, чтобы все поставилось с нуля без пердолинга, сколько ставлю Студию.

Ответы>>716521

14 Апр, 14:07 #123 #716492

>>714032 (OP)
Зачем нужны retainfragment'ы если есть те же лоадеры из коробки, или они используются в принципиально разных вещах?

Ответы>>716499>>717228

14 Апр, 14:20 #124 #716499

>>716492
Лоaдеры хороши для операций чтения (immutаble):
- их можно вызывать сколько угодно раз (при каждом повороте)
- данные в них можно кэшировать

Retаin фрагменты нужны, когда у тебя "одноразовая, меняющая операция", типа создание поста на сайте.
У нее есть начало, прогресс и фиксированный конец.

Ты бы не хотел, что бы эта операция повторялась при каждом configChаnged (или кэшировалась).
Так что их обычно это делают через retаin-frаgment + АsyncTask.

Ответы>>716510>>716607

14 Апр, 14:26 #125 #716504

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

14 Апр, 14:33 #126 #716510

>>716499
понятно, спасибо

23 Кб, 153x218

14 Апр, 14:37 #127 #716513

Почему хуево отображаются иконки?
Каждая находится в папке, в которой 2 варианта xxhdpi и xxxhdpi. Отрисовываются через PrimaryDrawerItem.withIcon

Ответы>>716611>>716775

14 Апр, 14:59 #128 #716521

>>716488
Короче, спустя 2 часа таки пофиксил. Небольшие костыли, но все же.
Короче, переключился на Dev канал обновлений, обновил студию до 2.1, обновил SDK и подтянул в SDK все обновления, включая Preview (правда, сколько бы я их не ставил, два обновления таки не отмечаются галочками. У всех так?)

14 Апр, 16:13 #129 #716574

>>716121
Благодарствую

14 Апр, 16:41 #130 #716591

На чем писать и комилировать консольные эльфы для андроида?

Ответы>>716593

29 Кб, 1001x289

14 Апр, 16:42 #131 #716592

и чё ниуого не появилось проблем с сегодняшним апдейтом?

14 Апр, 16:42 #132 #716593

>>716591 IAR ругется н синтаксис в библиотеках

14 Апр, 16:59 #133 #716607

>>716499
Почему мне кажется, что ретаин фрагменты - самый дичайший костыль андроид сдк?

Ответы>>716619

14 Апр, 17:03 #134 #716611

>>716513
Ну видимо слишком низкого разрешения они.
Да и они довольно легкие, пройдись инкскейповским векторизатором, получишь svg на выход.

Ответы>>716764

14 Апр, 17:10 #135 #716619

>>716607
Сынок, а ты хоть знаешь как нам приходилось выкручиваться до появления фрагментов.

9 Кб, 337x42

14 Апр, 18:57 #136 #716764

>>716611
Я так понял svg он не кушает

Ответы>>716942>>717062

14 Апр, 19:11 #137 #716775

>>716513
Что за мониторинг?

14 Апр, 19:13 #138 #716778

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

14 Апр, 19:35 #139 #716798

ORM или sqlite или realm?
кто чем пользуется?
Если ORM: мне приходит json я его разбираю на модели и сохраняю в бд, то с sqlite я буду сразу в бд закидывать json? и при чтении разбирать данные?

Ответы>>716837>>716857

14 Апр, 19:57 #140 #716835

сап андраны
Простое приложение, один запрос, один json и листвью. Как к этому захуярить тесты? Как это вообще работает, что нужно тестировать, как это выглядит в андройде? Знаю только, что есть что-то типа JUnit и все. В гугле только либо assert 2+2 =4, либо какие-то там эти ваши фреймворки.
Накидайте годных статей или может своими словами объясните, please

Ответы>>716853

14 Апр, 19:57 #141 #716837

>>716798
В прошлом треде, то же хотел определиться.
С одной стороны ormlite не обновляется уже 3 года, с другой он делает все что мне надо
с приемлемой скоростью и там не надо ебаться с потоками/закрытием.

Тк в realm еще и нет поддержки robovm, то решил так и остаться на ormlite.

Ответы>>718436

14 Апр, 20:07 #142 #716853

>>716835
Тебе UI тесты или unit?

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

В unit тестах нужно тестировать то что:
1) может содержать ошибки или велика вероятность того что сломается
2) до конца не понятно как работает (стороннее апи)
3) не понятно как правильно (размытые бизнес требования)
4) редко переделывается (ты же не хочешь постоянно тесты переписывать)

Чаще всего это "бизнес логика"

14 Апр, 20:09 #143 #716857

>>716798
sqlite + cupboard

14 Апр, 21:14 #144 #716942

>>716764
9-pinch гугли.

Ответы>>717062

14 Апр, 21:41 #145 #716967

Как сделать long polling соединение с okHttp? Нихуя толкового не гуглится

14 Апр, 21:56 #146 #716982

>>716164
Я вроде как понял тебя, но не очень представляю как сделать это коллбэками именно в плане кода.

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

14 Апр, 22:54 #147 #717062

>>716764
Нахуя?
>>716942
Студия умеет импортировать svg в свой xml vector drawable формат.

14 Апр, 22:59 #148 #717070

На NDK скомпилировал простейший эльф:
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>

#define__lint__
#define __symbolrename(x)

int main()
{

printf('%i',2);
return 0;
}

закинул на флешку и попытался запусить через adb.
выдает Segmentation Fault. Как это исправить?

Ответы>>717511>>717516

15 Апр, 00:44 #149 #717228

>>716492
Асинктаск через лодеры ты не сделаешь нормально, например, при повороте экрана лодер пересоздастся.

15 Апр, 10:11 #150 #717375

>>716451
он самый

15 Апр, 13:46 #151 #717511

>>717070
Архитектуры сравни, что они одинаковые

Ответы>>717513

15 Апр, 13:52 #152 #717513

>>717511
Разобрался уже дело было в переносе строки

15 Апр, 13:52 #153 #717516

>>717070
Почему апострофы в printf?

Ответы>>717519

15 Апр, 13:56 #154 #717519

>>717516
в этом тоже

15 Апр, 14:09 #155 #717526

Я хочу перенести сайт на приложение, как сделать, чтобы сайт работал без интернета? Чтобы просто была база данных и все.

15 Апр, 14:40 #156 #717553

Есть какой-нибудь безболезненный путь заставить ведро svg есть?

Ответы>>717563

15 Апр, 14:49 #157 #717563

>>717553
Ведро не ест svg бля. Ты должен сконвертировать его в xml vector drawable, который ведро умеет рисовать.

15 Апр, 15:51 #158 #717630

Есть примеры реалиации ведения сессий у приложения?

80 Кб, 400x400

RoboVM - ВСЕ 15 Апр, 16:12 #159 #717644

https://robovm.com/robovm-winding-down/
Таки придется перекатываться на Intel Multi-OS Engine

Спасибо тебе Microsoft :\

Ответы>>718276

2162 Кб, 3264x2448

15 Апр, 16:42 #160 #717664

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

Как бы наиболее красиво сделать обновление элементов в списке по мере продвижения рассчетов?

Ответы>>717667>>717689

15 Апр, 16:44 #161 #717667

>>717664
NotifyItemChanged у recyclerview.adapter

Ответы>>717689

15 Апр, 17:01 #162 #717689

>>717667
>>717664
Ну и добавлю, что делаешь все через rx

apiObservable
.observeOn( computation )
.map(items -> cache(items))
.observeOn( mainThread )
.map( items -> recyclerAdapter.setData(items) )
.observeOn( computation )
.flatMap(items -> Observable.create(... рассчеты для каждого), 4)
.subscribeOn( mainThread )
.forEach( item -> recyclerAdapter.notifyItemChanged )

Примерно так, но вероятней всего я напутал положение observeOn'ов.

Ответы>>717693>>717720

15 Апр, 17:05 #163 #717693

>>717689
Как это может выглядеть стандартными средствами?

15 Апр, 17:24 #164 #717720

>>717689
Лишь бы выпендрица, нафиг там map, ты же не преобразовываешь данные?...

Ответы>>717723

15 Апр, 17:30 #165 #717723

>>717720
Да, есть же doOnNext.

15 Апр, 17:35 #166 #717729

Что-то не могу разобраться - у меня процессор не поддерживает интеловские технологии, не запускается эмулятор в android studio. Что делать?

Ответы>>717730>>718791

15 Апр, 17:36 #167 #717730

>>717729
Genymotion

Ответы>>717770

15 Апр, 17:53 #168 #717743

Аноны, нужно ли как то изъебываться с запросами в сервисе? или просто можно все делать в обычном асинктаске?

Ответы>>717760

15 Апр, 18:11 #169 #717760

>>717743
С сырыми сервисами точно сейчас ебаться не стоит.
Глянь на GCM NetworkManager (требует gapps) или Job Scheduler (Android 5.0)

http://developer.android.com/intl/ru/training/performance/battery/network/action-app-traffic.html

Ответы>>717793

15 Апр, 18:19 #170 #717770

>>717730
Не работает. VirtualBox пишет VT-x is not available (VERR_VMX_NO_VMX).
Есть еще какие-то варианты разработки под таким ноутбуком?

Ответы>>718741

15 Апр, 18:51 #171 #717793

>>717760
Ну я не пишу свой сервер, мне надо подключаться к лонг пуллу

Ответы>>717795

15 Апр, 18:58 #172 #717795

>>717793
При чем здесь сервер?
Логн пул вообще хреновая идея в плане батареи, попробуй лучше пуши.

Ответы>>717800

15 Апр, 19:15 #173 #717800

>>717795
А как по твоему работает GCM?

Ответы>>717821

15 Апр, 19:38 #174 #717821

>>717800
Один гугловский лонгпул лучше чем 10.

Ответы>>717830

15 Апр, 19:43 #175 #717830

>>717821
Найс маневр.

Ответы>>717929

15 Апр, 20:37 #176 #717881

Неужели что бы просто отправить какое то значение на сервер(логин например), надо создавать ретеин фрагмент?

Ответы>>717883>>717899

15 Апр, 20:40 #177 #717883

>>717881
Rx, или интент сервис.

Ответы>>717899

15 Апр, 21:26 #178 #717899

>>717881
>>717883
Или AsyncTask, бгг

15 Апр, 22:02 #179 #717929

>>717830
В Android N Dozen режет в фоне инет и стопает все программы.
А в исключение там добавлены только Google Services.

Ответы>>717942

15 Апр, 22:15 #180 #717942

>>717929
И что же интересно будет с девайсами без сервисов? Я уверен можно будет попросить систему не убивать тебя и юзер даст разрешение.

Ответы>>717964

15 Апр, 22:33 #181 #717964

>>717942
> И что же интересно будет с девайсами без сервисов?
Батарею будут держать дольше.
GCM есть в исключение и этого достаточно (для пушей /JobScheduler).

> юзер даст разрешение
Может даст, а может нахуй пошлет и поставит приложение конкурента.

Ответы>>717973

15 Апр, 22:39 #182 #717973

>>717964
Мы говорим о девайсах без GCM. В плане с конекшоном мое приложение ни чем не будет отличаться от приложения конкурента.

Ответы>>717983

15 Апр, 22:48 #183 #717983

>>717973
> Мы говорим о девайсах без GCM
Это ты про CM (ну и конечно владельцы Android < 2.2)?

Кому нужны эти дебилы странные люди, если на их телефонах даже нет Google Play.

Ответы>>717986

15 Апр, 22:49 #184 #717986

>>717983
Китайфоны и требы русскокитайского произовдства.

Ответы>>718018

15 Апр, 23:21 #185 #718018

>>717986
Они вероятней всего даже поставить твое приложение не смогут, ведь основной источник распространения - GP. Так стоит ли ебаться ради двух с половиной калек?

Ответы>>718067

15 Апр, 23:56 #186 #718067

>>718018
Тогда как ты объяснишь то, что всякие пейсбуки/вотсапы/вайберы/скайпы/телеграммы делают в обход GCM?

Ответы>>718201

16 Апр, 07:15 #187 #718201

>>718067
Вотсапп юзает gcm, по крайней мере его версия из гп. Фейсбуки скайпы телеграммы жрут батарею как ебанутые.

16 Апр, 11:51 #188 #718276

>>717644
Ну пиздец. Хотя мы все это знали.
мимо-ОП

16 Апр, 12:36 #189 #718304

То чувство, когда ты до сих пор пользуешься эклипсом, асинктасками, httpurlconnection и org.json.*... Когда этот тред успел превратиться в цирк хипстеров от мира андроид разработки? Год назад такой хуйни не было.

Ответы>>718306

16 Апр, 12:40 #190 #718306

>>718304
Ну джисоном и я пользуюсь, а вот ретрофит мне приятнее. И баттернайф. Вот думаю ещё в ретролямбде разобраться.

Ответы>>718350

16 Апр, 13:54 #191 #718350

>>718306
>И баттернайф.
Мне батернайф кстати вообще не зашел, хотя я все остальное юзаю.
Эти паблик вьюхи по всему проекту делают меня плакать, особенно в адаптерах.

Ответы>>718412

16 Апр, 15:06 #192 #718412

>>718350
> паблик
package visible, а не паблик.

Ответы>>718457

16 Апр, 15:44 #193 #718436

>>716837
> нет поддержки robovm
Так RoboVM ведь официально мертва со вчерашнего дня

16 Апр, 15:52 #194 #718439

Подскажите, как работать с пагинацией в RecyclerView.
API отдаёт мне некие элементы постранично, то есть http://example.com/users?page=1 и так далее.
Загрузить сразу все страницы — не вариант, их слишком много.
Я думал, загружать данные постранично, но тут появляется другая проблема: данные (и их порядок) обновляются часто. То есть, то есть, пока пользователь смотрел первую страницу, а потом доскроллил до второй, данные могли измениться и загрузив лишь вторую страницу, мы получим дублирующиеся или неверные данные.

Ответы>>718459

16 Апр, 16:12 #195 #718457

>>718412
Ну меня это не сильно ебет, суть ты понял.

Ответы>>718502

16 Апр, 16:14 #196 #718459

>>718439
Не делать говно с страницами а делать идшники.

Ответы>>718467

16 Апр, 16:21 #197 #718467

>>718459
Это как? Типа что бы каждый итем был с айдишником, но как это поможет?

Ответы>>718470

16 Апр, 16:28 #198 #718470

>>718467
То что у тебя получилось с страницами проеб серверщика.
Ты никак не сделаешь нормальное отображение страниц если они у тебя могут меняться пока ты их выводишь.

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

Ответы>>718493

16 Апр, 16:38 #199 #718474

Пацаны, как компилировать lk(tittle kernel) для MTK из винды?

16 Апр, 16:54 #200 #718493

>>718470
Спасибо за ответ.

> Ну в общем я вроде понятно объяснил.
Честно говоря, не совсем тебя понял. Имеешь в виду, что если бы у нас были id и порядок элементов бы не менялся, а лишь добавлялись новые элементы? Таймлайн в Твиттере, кажется, такое API имеет. Тогда мы бы делали запросы типа "получить все новые твиты после id 1234" и "получить 20 твитов до твита с id 1234". Кажется, ты это имел в виду? Если да, то я думал тоже о таком, но в данном случае это не сработает: у API нет таких методов. Ну и порядок элементов меняется.

> было бы понятнее если бы ты объяснил бизнес логику этих элементов списка
Попробую. Пусть для примера будет так: мне нужно отобразить список самых популярных игроков в какой-то онлайн-игре. Соответственно, я делаю запрос к API и получаю примерно такой json: http://pastebin.com/uucVg8Dp
У каждого игрока есть свой уникальный id. Позиции игроков в топе меняются (часто меняются!). Так же иногда появляются новые игроки (но появляются они где-то в конце списка, что логично).

Ответы>>718517

16 Апр, 17:09 #201 #718502

>>718457
А в чем проблема-то? Ну станут у тебя вьюхи видимыми во всем пакете. И что?

Ответы>>718503

16 Апр, 17:10 #202 #718503

>>718502
Ниче.

16 Апр, 17:31 #203 #718517

>>718493
>Кажется, ты это имел в виду?
Да.

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

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

Но в любом случае это страшний костылизм и лапшекод.

Ответы>>718528

16 Апр, 17:49 #204 #718528

>>718517
> При скроле вверх запрашиваешь данные страницы к которой идешь, и делаешь все также.
Такая идея мне не приходила в голову.
Я до этого думал при скроле вниз на страницу n запрашивать страницы с первой по n-ую. Кажется, твоё решение менее костыльное.

Если бы у меня был ArrayAdaper или что-то похожее, то я пожалуй бы использовал твою идею. Однако, у меня адапер использует Cursor, который загружается ContentProvider'ом (т.е. я сначала складываю данные в БД, а потом показываю в recyclerView). Не уверен, что описанный тобой способ получится применить в таком случае.

В любом случае, спасибо за подсказку.

Ответы>>718587

16 Апр, 18:56 #205 #718587

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

16 Апр, 20:01 #206 #718653

Как мне удалить рабочую версию приложения в маркете и запустить бета тестирование?
Достаточно ли деактивировать текущую версию и залить бета версию под другим номером версии?

Ответы>>718663>>726177

16 Апр, 20:11 #207 #718663

>>718653
> Как мне удалить рабочую версию приложения в маркете
Никак.

Ответы>>718671

16 Апр, 20:22 #208 #718671

>>718663
Ну и фиг с ним тогда.

16 Апр, 21:20 #209 #718741

>>717770
неужели нет ниодной живой андроид трубы?

16 Апр, 22:27 #210 #718791

>>717729
Прекрасно и на AMD всё работает. Проблема не в этом

17 Апр, 00:02 #211 #718827

Есть у меня двумерный массив с данными:

List<String[]> resultList = new ArrayList<String[]>();

Данные в виде
name lol
nome pop

Как мне правильно занести это дело в базу данных?
Стандартная SQLite.

Ответы>>718836>>719008

17 Апр, 00:12 #212 #718836

>>718827
https://developer.android.com/training/basics/data-storage/databases.html

17 Апр, 11:30 #213 #719008

>>718827
Используй cupboard
https://bitbucket.org/littlerobots/cupboard

Ответы>>719414

17 Апр, 14:50 #214 #719194

Я совсем ньюфаг, поясните такую вещь. В моем универе среди студентов популярно приложение Расписашка, там можно с сайта универа скачать расписание, настраивать, обновлять и тд. Так вот. Как это реализовано? Что гуглить по этой теме? То есть могу ли я вот та же с какого-нибудь сайта ржд или почты России скачивать в свое приложение инфу?

17 Апр, 16:21 #215 #719257

Как только реализовать MVC на Android?
Использую Otto для оповещений, есть синглтон для сетевых данных.
В приложении один корневой активити, который управляет фрагментами. У фрагментов свои интерфейсы (нажатие/выбор в основном), все их отрабатывает корневой активити.
При разработке под Андроид меня не покидает чувство что я что то не так желаю, что все очень хрупко и ненадежно.
Как у вас устроены приложения? Как меняете тайтл у тулбара при изменении текущего фрагмента например?

Ответы>>719305>>719428

17 Апр, 16:56 #216 #719285

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

Ответы>>719289

17 Апр, 16:58 #217 #719289

>>719285
Уведомлением можно. Или обоиной для локскрина сделать, правда не все смартфоны вроде умеют в отдельные обои для рабочего стола и для локскрина.

17 Апр, 17:10 #218 #719305

>>719257
Ты можешь обрабатывать все клики и обработку в самом фрагменте, например прицепить MVP и фрагмент будет в роли View.

По поводу тулбара, можешь его использовать прямо из фрагмента, допустим у HostActivity есть метод bindToolbar(Toolbar toolbar) который будет вызываться в onActivityCreated у фрагмента

17 Апр, 18:48 #219 #719403

Как записать массив с Bitmap в один ByteArrayOutputStream, и потом считать его обратно?
ObjectOutputStream не поддерживает несериализуемые объекты.
С другими подклассами стримов я могу записать все в кашу, но как потом это разделять при чтении?

Ответы>>719408>>719410

17 Апр, 18:52 #220 #719408

>>719403
Bitmap.compress. Или через Parcel. Совсем по-разному работают, зависит от того, чего ты хочешь достичь.

Ответы>>719463

17 Апр, 18:53 #221 #719410

>>719403
А, ну и через getPixels, конечно же.

17 Апр, 18:54 #222 #719414

>>719008
Но ведь это говно

Ответы>>719650>>719707

17 Апр, 19:15 #223 #719428

>>719257
Я вот кстати тоже не пойму как правильно сделать в МВП оповещение про то что данные обновились. Допустим сервис все обновляет, но это надо иногда выводить на экран, как правильно делать? Нет ну понятно евентбас поможет, но это сродни готу в асемблере.

Ответы>>719456>>719488

17 Апр, 19:29 #224 #719456

>>719428
Сабим при создании активити/фрагмента на ивент определенного типа, ансабимся на дестрой. Смотрящий за моделью чейкает данные когда хочет и отсылает уведомления.

Ответы>>719460>>719501

17 Апр, 19:32 #225 #719460

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

Ответы>>719471

17 Апр, 19:34 #226 #719463

>>719408
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos);
for (Bitmap photo : this.draftPhotos) {
photo.compress(Bitmap.CompressFormat.PNG, 0, dos);
photo.recycle();
}
dos.close();
baos.close();
byte[] bytes = baos.toByteArray();

Записал допустим два фото, а при чтении через DataInputStream как понять где конец первого фото и начало второго?

Ответы>>719475

17 Апр, 19:38 #227 #719471

>>719460
На ивенты подписывается активити и шурудит обновления вью-фрагментов самостоятельно?

Ответы>>719480

17 Апр, 19:39 #228 #719475

>>719463
Для такого лучше использовать getPixels или Parcel.

17 Апр, 19:41 #229 #719480

>>719471
Не активити или фрагмент, а презентер.

Ответы>>719507

17 Апр, 19:46 #230 #719488

>>719428
Просто нужно использовать ContentResolver и ContentProvider

Ответы>>719492

17 Апр, 19:48 #231 #719492

>>719488
Ой иди нахуй, вот к чему ты это спизданул?

Ответы>>719498

131 Кб, 600x377

17 Апр, 19:49 #232 #719494

Разве IntentService работает не в отдельном потоке? UI фризится, если работа onHandleIntent() работает слишком долго. Что я делаю не так?

Ответы>>719495

17 Апр, 19:50 #233 #719495

>>719494
В отдельном, хуй знает что ты там наговнякал.

Ответы>>719508

17 Апр, 19:51 #234 #719498

>>719492
> оповещение про то что данные обновились
Что значит к чему? Если получать данные из БД используя Loader и ContentResolver, то при любом изменении данных, курсор, привязанный к URI этих данных автоматически их получит

Ответы>>719509

17 Апр, 19:52 #235 #719501

>>719456
> Смотрящий за моделью
Какой-то тюремный сленг

17 Апр, 19:57 #236 #719507

>>719480
>а презентер
Какой профит в MVP в сравнении с MVC?
Мое mvc на андроиде мне не очень нравится.

Ответы>>719510

17 Апр, 19:57 #237 #719508

>>719495
> All requests are handled on a single worker thread -- they may take as long as necessary (and will not block the application's main loop), but only one request will be processed at a time.
Точно в отдельном. Странно...

Ответы>>719513

17 Апр, 19:58 #238 #719509

>>719498
Нет, ты ошибаешься.

Ответы>>719514

17 Апр, 19:58 #239 #719510

>>719507
> Какой профит в MVP в сравнении с MVC?
V и P связаны меньше, чем V и C
Гораздо удобнее тестировать

Ответы>>719511

17 Апр, 19:59 #240 #719511

>>719510
Поправка, совсем не связаны.

17 Апр, 20:00 #241 #719513

>>719508
Ведро хуево работает со многими потоками кстати, но я думаю для интентсервисом они додумались сделать какой-то шедулер.

17 Апр, 20:04 #242 #719514

>>719509
Нет, не ошибаюсь. У меня два приложения именно так работают, лол.
Собственно, это основное преимущество использования SQLite + ContentProvider. Если ты будешь использовать какой-нибудь Realm, то всю эту логику тебе придётся реализовывать самостоятельно

Ответы>>719515>>719516

17 Апр, 20:05 #243 #719515

>>719514
Ошибаешься, раз ты решил умничать, теперь моя очередь.

У реалма кстати есть оповещения.

Ответы>>719517

17 Апр, 20:07 #244 #719516

>>719514
>использования SQLite + ContentProvider
Вот эти ребята, можно по развернутей на пальцах?

Ответы>>719518>>719524

17 Апр, 20:08 #245 #719517

>>719515
> Ошибаешься
И в чем же я ошибаюсь?
> теперь моя очередь
Ты уже дважды написал, что я ошибаюсь, но так и не сказал в чём. Очень умно, да.

> У реалма кстати есть оповещения.
Я в курсе. Я и написал, что тебе самому их нужно ловить и делать обновление данных

Ответы>>719519

17 Апр, 20:08 #246 #719518

>>719516
Пиздец, вас в гугле забанили? Это стандартный набор же.

17 Апр, 20:09 #247 #719519

>>719517
>Ты уже дважды написал, что я ошибаюсь, но так и не сказал в чём. Очень умно, да.
Контент провайдер не нужен, и можно сделать контент провайдер без уведомлений.

>>719517
> Я и написал, что тебе самому их нужно ловить и делать обновление данных
А курсор тебе ловить не нужно? Менять его в том же курсор адаптере не нужно?

Ответы>>719520

17 Апр, 20:14 #248 #719520

>>719519
> А курсор тебе ловить не нужно? Менять его в том же курсор адаптере не нужно?
Loaders именно для этого и придуманы

> Контент провайдер не нужен
Ну ок, раз не нужен, то думай сам, как же узнать об обновлении данных.
> можно сделать контент провайдер без уведомлений
Типа, если программист не в состоянии правильно реализовать методы query() и insert(), то это проблема КонтентПровайдера, а не программиста?

Ответы>>719523>>719526

17 Апр, 20:16 #249 #719523

>>719520
>Типа, если программист не в состоянии правильно реализовать методы query() и insert(), то это проблема КонтентПровайдера, а не программиста?
Нет, проблема программиста в том что он не знает нахуй нужен контент провайдер.

Ответы>>719533

17 Апр, 20:16 #250 #719524

>>719516
https://developer.android.com/guide/topics/providers/content-providers.html

17 Апр, 20:16 #251 #719526

>>719520
>Loaders именно для этого и придуманы
Нет, придуманы для этого курсорлоадеры, не более. И в реалме это быстро делаеться.

30 Кб, 580x387

17 Апр, 20:20 #252 #719533

>>719523
Ты какой-то странный.

> — Я вот не пойму как правильно сделать оповещение про то что данные обновились
> — Используй ContentProvider и Loaders, тогда тебе не нужно будет об этом беспокоиться
> — Ты ошибаешься! КонтентПровайдер не нужен! Ты даже не знаешь, зачем он нужен!

Ответы>>719541

17 Апр, 20:33 #253 #719541

>>719533
>— Ты ошибаешься! КонтентПровайдер не нужен! Ты даже не знаешь, зачем он нужен!
Так это правда.
Нотификатор можно делать самому, без контент провайдера. В контентпровайдере ты его даже пишешь сам.
Теперь вопрос, нахуй тебе контентпровайдер?

17 Апр, 21:51 #254 #719650

>>719414
почему?

Ответы>>719652>>719707

17 Апр, 21:53 #255 #719652

>>719650
По определению.

Ответы>>719707>>719887

17 Апр, 22:58 #256 #719707

>>719652
>>719414
Ты дебил.
>>719650
Забей на толстяка, прекрасная либа, если ненужны джоины.

Ответы>>719727

17 Апр, 23:25 #257 #719727

>>719707
> ненужны

Ответы>>719734

17 Апр, 23:41 #258 #719734

>>719727
Доебался так доебался

17 Апр, 23:59 #259 #719749

Андроноиды, подскажите пожалуйста по жизненному циклу активити мне.

У меня есть основная активити и сервис, принимающий сообщенния и срущий нотификациями о сообщениях пользователю. Клик на нотификацию инициирует запуск дополнительной активити, показывающей АлертДиалог с содержимым сообщения. Из АлертДиалога этого можно запускать основную активити.

Если нотификация прилетает когда основная активити была закэширована (бандл с состоянием непустой) - вызов основной активити через интент (startActivity(new Intent(this, MainActivity.class))) форсирует создание нвого экземпляра активити, в котором бандл с состоянием пуст. Причём если закрыть эту активити - приложение само восстанавливает закэшированную активити.

Можно ли как-то форсировать восстановление закэшированного экземпляра активити из кода?

Ответы>>719759

18 Апр, 00:12 #260 #719759

>>719749
Активити ушло в бэкграунд и находится в стеке? Если да, то нужно указать в манифесте тип singleTop для этой активити и кажется еще какой-то флаг укзаать при создании интента, но возможно я ошибаюсь и флаг не потребуется. Тогда потребуется ловить в активити onNewIntent.

Ответы>>719761

18 Апр, 00:16 #261 #719761

>>719759
> и находится в стеке
Я нубоват и смутно представляю что есть стек в ведре. Имеется в виду, выгружена она из памяти или нет? Вроде как выгружена. Если приложение попробовать запустить просто кликом на иконку - активити восстановит своё состояние, записанное в бандл.

Ответы>>719781

18 Апр, 00:49 #262 #719781

>>719761

Погуглил. Судя по http://developer.android.com/intl/ru/guide/components/tasks-and-back-stack.html моя активити уже не в стеке.

18 Апр, 07:08 #263 #719887

>>719652
и что по твоему не говно?

18 Апр, 08:02 #264 #719894

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

Ответы>>719895>>719933

18 Апр, 08:04 #265 #719895

>>719894
Fiddler сам использовал.
Слышал еще Charles есть, на Хабре статейка была.

18 Апр, 09:46 #266 #719933

>>719894
OkHttp.interceptors

18 Апр, 10:07 #267 #719942

2 студия не хочет видеть майкрософтовский эмулятор андроида. Студиевский не могу из-за хайпер-в использовать, а он мне нужен дял кое-чего другого.

Ответы>>719946

18 Апр, 10:20 #268 #719946

>>719942
1) запускаешь эмулятор вручную
2) смотришь его локальный ip
3) вызываешь команду adb connect <ip>

18 Апр, 11:42 #269 #719984

Есть surfaceview и camera. Если surfaceview загнать за свой контейнер через отрицательный марджин топ или установки высоты больше высоты контейнера, то превью все равно вписывается только в видимую область.
Так поступать нужно, вопрос в том, как избежать распидорасивание изображения.
Данная ситуация на API 16, на 21 и выше все норм. На других проверить возможности нет.

Ответы>>720016>>720063

103 Кб, 1436x1137

50 Кб, 600x600

18 Апр, 12:07 #270 #720000

Отчего у андрюши такой API уебищный?

Решил вкатиться и вот страдаю теперь.

1) Какой - то дикий оверинжениринг (для сравнения - жизненный цикл приложения альтернативной платформы
http://i.stack.imgur.com/Jn6MZ.png)

2) Свистопляска в названиях аргументов у функций (savedInstanceState в одном месте, outState в другом)

3) Какие - то костыли в виде Fragment (по кр мере таково восприятие при текущем уровне понимания предмета) и вообще дикая свалка в иерархии объектов.

4) Начинаешь разбираться почему onSaveInstanceState() не работает - на стековерфлоу находишь ответы, в которых рекомендуют поколдовать со стилями. И эти ответы получают позитивные отклики - т/е объективно не совсем бред.

5) Всратые конфетные релизы и непонятные проблемы когда демка из уроков двухлетней давности перестает работать

6) Вроде и механизм обмена сообщениями есть и тут же до кучи callback-ов и все в перемешку.

Почему так, Ананас?

Ответы>>720003>>720479

sage 18 Апр, 12:15 #271 #720003

>>720000
Швабода, опенсорс индусы

18 Апр, 12:32 #272 #720016

>>719984
Решил проблему, использовав textureview.

18 Апр, 12:48 #273 #720029

Не могу загрузить активити с imageView, постоянно вылетает ошибка java.lang.OutOfMemoryError
Картинки добавляляю через drawable в xml
Размер картинком не больше 2048 пикселейБ а вес не больше 400 кб в чем может быть проблема и как поченить?

Ответы>>720033

18 Апр, 12:50 #274 #720031

Веб макака приветствует тя. Нужно запилить минимальное приложение в котором понадобится всего то по клику на карте поставить метку (мапс api), пара запросов на сервак и до блютуза добраться, хотелось бы не вылезать за пределы жс, т.к. оно и на иос нужно будет. Анон, скажи че юзать ? Кордова, реакт нейтив, или на джаве писать ? Где меньше ебли короч.

Ответы>>720034>>720038>>720053

18 Апр, 12:52 #275 #720033

>>720029
2048 в высоту/ширину? Тогда 2048*2048 = 16 мб на картинку в профиле argb_8888

Ответы>>720036

238 Кб, 550x550

18 Апр, 12:52 #276 #720034

>>720031
Kotlin + Intel MultiOS Engine

Ответы>>720180>>720217

57 Кб, 604x471

18 Апр, 12:54 #277 #720035

>>714032 (OP)
Господа, расскажите, есть ли годный способ писать на Python под Андроид? Я в курсе про Kivy, но у меня вопрос - получится ли на питоне без проблем вызывать системные штуки - типа записи звука или работа со шторкой?

Ответы>>720049

18 Апр, 12:55 #278 #720036

>>720033 картинки где-то 2048*2000 размер их окло 400 килобайт, я ничего про профиль не понял. Можешь яснее обяснить

Ответы>>720042>>720044

18 Апр, 12:56 #279 #720038

>>720031
На джаве бы писать не хотелось т.к. ни строчки на ней не писал

18 Апр, 13:00 #280 #720042

>>720036
16 мб - разжатая картинка, 400 кб - сжатая. Размер сжатой картинки влияет лишь на вес апк и скорость ее разжатия.

18 Апр, 13:04 #281 #720044

>>720036
Ты гуманитарий или просто тупой школьник?
Иди учи матчасть:
http://lmgtfy.com/?q=представление+изображений+в+памяти+компьютера

Ответы>>720066

18 Апр, 13:16 #282 #720049

>>720035
Используй наиболее сильные и проверенные временем инструменты: Java

18 Апр, 13:21 #283 #720053

>>720031
>Веб макака
Очевидна кордова.

Ответы>>720060

18 Апр, 13:29 #284 #720060

>>720053
Достаточно посмотреть пример PhoneGap:

https://www.google.ru/url?sa=t&source=web&rct=j&url=https://play.google.com/store/apps/details?id=com.camden.phonegapmega&referrer=utm_source%3Dgoogle%26utm_medium%3Dorganic%26utm_term%3Dphonegap+mega+google+play&pcampaignid=APPU_1_u7YUV9PSNaWk6ASh-pzoAg&ved=0ahUKEwiTnLGK_ZfMAhUlEpoKHSE9By0Q8oQBCBowAA&usg=AFQjCNEp1bnNaPmNuMNjAe6P5jIqGQBctw&sig2=XLVtuHOlRtJpJJwg7xQtBg

Чтобы убедиться, что всё это тормозящая хуйня.

18 Апр, 13:35 #285 #720063

>>719984
SurfaceView устаревшее говно, намеренно сделанное через жопу. Если у тебя нет цели поддерживать версии ведра ниже 4.0, переходи на TextureView.

18 Апр, 13:40 #286 #720066

>>720044
это конечно охуительный совет, но как это сейчас поможет мне в моей проблеме?

Ответы>>720069

18 Апр, 13:46 #287 #720069

>>720066
В какой конкретно папке лежит картинка?
Какое разрешение экрана у твоего смартфона?

Ответы>>720073

18 Апр, 13:50 #288 #720073

>>720069
все картинки лежат в папке drawable, вылетает на всех смартфонах не зависимо от разрешения

Ответы>>720074

18 Апр, 13:52 #289 #720074

>>720073
Назови все смартфоны. Проблема скорее всего от того, что картинка скейлится. Перемести её в drawable-nodpi.
А вообще я не понимаю, зачем тебе такие большие картинки в приложении.

Ответы>>720075

18 Апр, 13:56 #290 #720075

>>720074
Samsung s4, s5, htc m8, lenovo хуй знает какой. Много смартфонов короче плюс еще эмулятор. А картинки больше для экранов с выскоим dpi. Как в эту папку переместить ? ее создать надо ил и она где-то лежит, если лежит то где?

Ответы>>720080

18 Апр, 14:16 #291 #720080

>>720075
Создать. А лучше вообще через assets грузить, если в этом есть реальная необходимость.

18 Апр, 14:28 #292 #720085

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

18 Апр, 15:44 #293 #720143

Проблема есть одна, подскажете?
Короче, задание у меня такое: рисовать жестами линии на гугловых картах. Сначала решил попробовать на чем попроще - сделал кастомный ImageView, перегрузил в нем onDraw. Где-то там есть OnTouchListener, который по нажатию меняет флажок на режим рисования, по движению зовет метод drawPoint(x,y) (который делает invalidate, и если флажок, то рисуется точка по координатам), а отпускающие события возвращают из режима рисования. Ладно, хрен с тем, что результат не сохраняется (с этим разберусь еще), главное что что-то да рисуется и точка/фигура двигается за пальцем. Значит работает.
Вернулся к картам. Написал, значит, CustomMapFragment extends SupportMapFragment, в нем View basicView (карта) и WrapperLayout wrapperLayout (extends FrameLayout - обертка, которой можно манипулировать как View, т.к. гугловым фрагментом манипулировать нормально нельзя). И такой код в onCreateView:

basicView= super.onCreateView(inflater,container,savedInstanceState);
wrapperLayout= new WrapperLayout(getActivity() );
wrapperLayout.addView(basicView);
return wrapperLayout;

Все, листнер этой хрени присобачить можно, события в карту передавать тоже, рисование полигона жестами приделал. Но полигон рисуется после сбора всех точек и передачи их карте, а мне нужно плавное рисование линии, пока я эти точки собираю. Переопределяю onDraw, как это делал с ImageView, пишу там то же самое, добиваюсь того, чтобы вызов onDraw таки происходил. Итого, вызов происходит, но при том же коде что и раньше, ничего не рисуется. Код onDraw такой, кстати:

paint.setColor(Color.parseColor("#0000ff"));
paint.setStrokeWidth(10);
super.onDraw(canvas);
if(nowDrawing)
canvas.drawRect(drawPointX-50,drawPointY-50,drawPointX+50,drawPointY+50,paint);

onDraw принадлежит WrapperLayout. Есть мысли, что оно даже рисуется, но на более нижнем слое, а верхний с картой все перекрывает, но не могу это проверить. Допустим, если закомментить super.onDraw(canvas), все полотно view должно было становиться белым, но нет, по прежнему карта видна.
Гуглю уже давно и что-то нихрена не нахожу.

18 Апр, 16:24 #294 #720180

>>720034
>Intel MultiOS Engine
Оно живое вообще? Как оно там на ней?

Ответы>>720216

18 Апр, 17:12 #295 #720216

>>720180
Там на форуме некоторое возбуждение после закрытия robovm (видать новые клиенты пожаловали).
По факту проект развивается, есть первый апдейт.

Из минусов:
1) Просто дохрена аннотаций. Пустой шаблон контролера на половину состоит из одних аннатаций и так везде.
И не особо понятоно как с ними работать надо доки подробно читать
2) Размер IPA больше чем у robovm

Из плюсов:
1) Поддержка Kotlin
2) Поддержка на iOS andorid.database.sqlite.SqliteDatabase и курсоров (даже запустил поверх этого OrmLite на android connectionsource)
3) ART - ahead of time компиляция
4) Удобная сихронизация с XCode/storyboard, генерация java/objectc прослоек

P.S.
Что еще интересно: в этом видео https://www.youtube.com/watch?v=SrujAdCdAjE чувак говорит что возглавляет разработку.
И на официальном форуме от Intel отвечают люди с русскими фамилиями.
Может это как и Kotlin "отечественная" разработка?...

18 Апр, 17:16 #296 #720217

>>720034
Мне нравится твоя самоирония.

18 Апр, 20:07 #297 #720353

Тут только программки пишут или и в выяснении gpio камеры могут помочь?

Ответы>>720365>>720367

18 Апр, 20:14 #298 #720365

>>720353
Тут спрашивают как вкатится в ведро.

18 Апр, 20:16 #299 #720367

>>720353
Тут только срачи.

18 Апр, 21:52 #300 #720479

>>720000
> Какие - то костыли в виде Fragment
Да ну. Один из лучших архитектурных концептов андроида

Ответы>>720482

18 Апр, 21:53 #301 #720482

>>720479
Особенно retain фрагменты, ммм...

Ответы>>720504

18 Апр, 22:00 #302 #720486

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

18 Апр, 22:18 #303 #720504

>>720482
О, спасибо за отсылку - похоже очень полезная штука, кажется, снимает часть головняка из пункта 1 и мои проблемы с разрывом bluetooth соединений.

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

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

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

До кучи - вспомнился еще пункт
7) Какая-то маниакальная настойчивость в прописывании
>super.method(..)
в начале переопределения метода method() - не помню ни одного фреймворка, где это бы так форсировалось.

Ответы>>720506

18 Апр, 22:24 #304 #720506

>>720504
Это особенность джавы, а не апи ведра.

Ответы>>720618

18 Апр, 22:47 #305 #720517

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

Ответы>>720518

18 Апр, 22:49 #306 #720518

>>720517
ну и соответственно при коллапсе лист и все содержимое возвращает исходный цвет

19 Апр, 00:14 #307 #720612

Если я полунюфаг, есть ли возможность вкатиться в котлин и начать писать под Android? Есть ли какие-то уроки по написанию под андроид на Котлине? Надо ли знать Java?

Ответы>>720756

19 Апр, 00:16 #308 #720618

>>720506
ненене
>super.method(..)
если повсеместно требуется писать подобное в callback функциях - что-то не так в консерватории.

19 Апр, 00:46 #309 #720655

Бамп.

67 Кб, 620x620

60 Кб, 960x540

62 Кб, 960x540

82 Кб, 960x540

19 Апр, 09:10 #310 #720756

>>720612
Вкатывание такое же как и в "Scala/Groovy/... под андроид"
1) Учишь Android API
2) Независимо учишь язык; переписываешь примеры на Kotlin

Вот тебе Android API: http://developer.android.com/intl/ru/training/index.html
Вот материалы по Kotlin:
https://kotlinlang.org - Основной сайт
https://habrahabr.ru/hub/kotlin/ - HUB Habrahabr
https://habrahabr.ru/post/279667/ - Ссылки на доклады и подкасты
https://habrahabr.ru/post/278169/ - Интересная статья "Как себе выстрелить в ногу в Kotlin"

http://kotlin.link - Сборник ссылок по Kotlin (на английском)
https://www.reddit.com/r/Kotlin/ - Reddit (тут тоже можно узнать новости и ссылки на интересные статьи)

Видео с Youtube:
https://www.youtube.com/watch?v=HWyd1gYMkl0&list=PLVe-2wcL84b8pj7VOoa-6L9Q0sDjibdoF
Конкретно под Android:
https://www.youtube.com/watch?v=VU_L2_XGQ9s
https://www.youtube.com/watch?v=-BvN0X5tqjw
Еде есть как минимум два на русском, но они не от разработчиков так что сам ищи.

Ответы>>720764>>720766>>720784>>721080

19 Апр, 09:40 #311 #720764

>>720756
https://www.youtube.com/playlist?list=PLVe-2wcL84b8pj7VOoa-6L9Q0sDjibdoF
быстро-фикс плейлиста на youtube

19 Апр, 09:46 #312 #720766

>>720756
> 1 пик
Stream API
> 2 пик
Шлёшь нахуй бобовую спецификацию и делаешь всё package-local/public
> 3 пик
А теперь перепишите через лямбды
> 4 пик
Stream API

Ответы>>720770

19 Апр, 09:54 #313 #720770

>>720766
> 2016
> Android
> Stream
Стримы только в Android N, который выйдет в Q3 2016

> Шлёшь нахуй бобовую спецификацию и делаешь всё package-local/public
Плохая идея для неприватных классов, а вдруг придется логику сеттера менять ( o_O )

Ответы>>720779

19 Апр, 10:21 #314 #720779

>>720770
Стримы с лямбдами в джек енд джиле с обратной совместимостью до 2.3

Ответы>>720782>>720871

19 Апр, 10:24 #315 #720782

>>720779
Ты что-то напутал, там функционал уровня retrolambda.

19 Апр, 10:30 #316 #720784

>>720756
1. def products = orders.products.flatten();
2. class MyGroovyClass {
final int a = 1;
int b = 1;
final def c = 1;
def d = 1;
}
3. class MyActivity extends Activity{
def example() {
def view = findById(R.id.button);
view.onClickListener += { Log.d("TAG", "Item clicked"); }
}
}
4. def example() {
def os = ["Android", "iOS", null, "Windows Phone"];
os.grep{it}.sort {it.length()}.toUpperCase().forEach { println it};
}
Java 0
Kotlin 0
Groovy 1

Ответы>>720785>>720788

19 Апр, 10:31 #317 #720785

>>720784
астериски проебались, кто шарит тот поймет.

sage 19 Апр, 10:38 #318 #720788

>>720784
Код понял, а почему котлин = 0?

Ответы>>720858

19 Апр, 11:20 #319 #720817

>>714032 (OP)
>udacity
Что хоть за годный курс, кто-то знает?
Он напрямую гуглом предоставлен, или кем-то другим? мимо шлют мне на мыло всякую маркетинговую хрень

Ответы>>720933

19 Апр, 12:10 #320 #720858

>>720788
Еще больше сократили.

19 Апр, 12:34 #321 #720871

>>720779
Стримы в Java это ебанный АД >>715577
1) Периодическое отсутсвие методов перевода в стримы (из тех же паттернов)
2) Гребанные чекед исключения
3) Отсутствие блять метода takeWhile (только в Java 9.0 завезли).
Да и вообще любых метод расширения этих стримов.
4) Пляски с коллекторами и сплиттераторами

19 Апр, 12:57 #322 #720884

Есть psd файл с разрешением 1080*1920 480dpi. Когда пытаюсь верстать на такой же экран в андройд студио отступы и размеры картинок получаются намного больше, чем они изображены в psd. Размеры высчитываю здесь https://pixplicity.com/dp-px-converter/
Что я делаю не так и как это исправить?

Ответы>>720911

19 Апр, 13:46 #323 #720911

>>720884
Чому 420, а не 480?

Ответы>>720912>>720913

19 Апр, 13:47 #324 #720912

>>720911
А в глаза ебусь. Ты превью какой девайс смотришь, нексус 5?

Ответы>>720914

19 Апр, 13:48 #325 #720913

>>720911
да его. Я не понимаю ка кэто правильно всерстать или макет неправильный вообще. Если не правильный то как объяснитть это дизайнерам?

Ответы>>720914

19 Апр, 13:48 #326 #720914

>>720912
>>720913

19 Апр, 14:10 #327 #720933

>>720817
Проходил на юдасити курс по градл, понравилось. Сейчас там по libgdx прохожу.

15 Кб, 500x375

19 Апр, 14:40 #328 #720954

Приглашаю начинающего или опытного Android-разработчика. Нужно запилить несложное приложение. Бюджет 10000 руб.

Jwh01m@,8ANUShmamai{>slPUNCTUMc'TIom

Ответы>>720960

19 Апр, 14:49 #329 #720960

>>720954
ru.nekit.androif+2dANUSglXdmailPUNCTUMmO~com

Примеры-примерчики:
https://github.com/ru-nekit-android/Clean-Architecture-MVP

19 Апр, 15:08 #330 #720977

Посоны, поясните какие перспективы у андроид-девелопингы, много ли ваканский и тд. Думаю вкатиться.

Ответы>>720980

19 Апр, 15:10 #331 #720980

>>720977
Ваще забей, рынок перенасыщён, разработка под ведро это что-то уровня пэхапэ.

Ответы>>720981>>720990

19 Апр, 15:12 #332 #720981

>>720980
Та так о всём говорят - перенасыщен. Я конечно понимаю что сейчас везде многие вкатываются, но всё-равно готов учить и осваивать. Вот и интересуюсь нет ли полной задницы чтоб не огорчиться.

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

Ответы>>720985

19 Апр, 15:14 #333 #720984

https://github.com/google/agera
Ну грац ребята, нам новый rx подогнали, теперь более запутанный но оффициальный.

#гуглидинахуй #гуглумри #гугллучшесделаймвп

Ответы>>721006>>721255>>721261

19 Апр, 15:15 #334 #720985

>>720981
Раз нравится, то учи.

Ответы>>720986

19 Апр, 15:17 #335 #720986

>>720985
Вакансии есть?
Реально найти работу джуном?

Ответы>>720988

19 Апр, 15:18 #336 #720988

>>720986
Есть, реально.

19 Апр, 15:18 #337 #720990

>>720980
Пиздец, просто разрабы под ведро есть разные.

19 Апр, 15:30 #338 #721000

>>715052
Юзай дженимоушн, намного быстрее тупого стандартного эмулятора.
Можно развернуть его вообще на другой машине, если проблемы с оперативной памятью, но у меня даже на ноуте с 4гб проблем пока нет.

19 Апр, 15:34 #339 #721006

>>720984
что это вообще за пиздос ?!

Ответы>>721007

19 Апр, 15:36 #340 #721007

>>721006
Это гугл детка

43 Кб, 796x598

19 Апр, 16:25 #341 #721038

Установил Android Studio. Такая вот ошибка происходит во время загрузки доп. компонентов. Пытался пробовать снова, но все равно та же ошибка. Это критично? Можно пропускать?

Ответы>>721044

19 Апр, 16:35 #342 #721044

>>721038
Проверь свободное место на диске. Хорошо если там реально несколько гигабайт будет - с запасом так.

У меня по кр мере в начале знакомства постоянные неадекватные сообщения (привет говнокодерам из гугла и джет брейнс) были на этапе инсталляции и даже запуска эмулятора.

Ответы>>721090

19 Апр, 17:11 #343 #721080

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

Ответы>>721257

10 Кб, 310x160

19 Апр, 17:15 #344 #721090

>>721044
c местом на диске все ок
в общем погуглил проблему, отключил брандмауэр, перезагрузил и запустил от имени администратора, все установилось без ошибок

19 Апр, 18:52 #345 #721164

Хочу имейдж вью в навигейшнвью задать
height = wrap_content
width = match_parent
смысл в том чтоб картинка отскейлилась по ширине.
В результате высота становится нихуя не врапконтент.
Что не находил на стековерфлов не работает.

19 Апр, 20:45 #346 #721255

>>720984
Видели. Пиздос.

> #гугллучшесделаймвп
Так сделал же уже

Ответы>>721366

19 Апр, 20:46 #347 #721257

>>721080
Сначала нужно выучить XML — на нём в андроиде все разметки, хоть на джаве, хоть на котлине.

Ответы>>721313

11 Кб, 450x134

19 Апр, 20:49 #348 #721261

>>720984
Стоит еще почитать первый и единственный issue у этого велосипеда: https://github.com/google/agera/issues/20
Показательно

Ответы>>721376

38 Кб, 794x477

19 Апр, 20:54 #349 #721265

Как для notification сделать largeIcon, чтобы она нормально рисовалась? Какие размеры нужны, или ее генерить как-то надо? Эта херня в студии вообще бесполезная и не понимаю зачем вообще нужна. Оно то растягивается и урезается, то наоборот слишком маленькое. Толкового ничего так и не нагуглил

19 Апр, 21:24 #350 #721313

>>721257
Ну а после?

Ответы>>721447

19 Апр, 22:29 #351 #721366

>>721255
>Так сделал же уже
Где?

19 Апр, 22:36 #352 #721376

>>721261
Честно мой инглиш так себе, я заебался понимать что они там пишут.
Из прочитанного
"нахуй оно надо?"
"ну хуй знает"

и еще один ответ
"оно вроде как будет лагать, но пруфов не будет"

Ответы>>721448

20 Апр, 00:13 #353 #721447

>>721313
Стандарт андроид-разработки сейчас - это джава. Котлин - модная штучка, по которой мало учебного материала и почти нет вакансий.

20 Апр, 00:14 #354 #721448

>>721376
> "нахуй оно надо?"
> "ну хуй знает"
Ты уловил суть.

20 Апр, 00:46 #355 #721468

Аноны, как найти где течет память?

Ответы>>721566>>721575

20 Апр, 09:03 #356 #721566

>>721468
Использовать профайлер памяти?
Так сразу тебе никто не скажет, для начала определись, что именно у тебя утекает.

20 Апр, 09:47 #357 #721575

>>721468
Начни с коллекций ).

Попробуй выделить точкни инвариантности по отношению к добавлению/удалению в коллекцию и добавить туда проверок.

Используй инструментальные средства http://developer.android.com/tools/performance/comparison.html

Хотя по мне, нет ничего лучше jvisualvm с его оперативной статистикой использования объектов с показом данных в дельта-режиме. Так -то если отталкиваться от https://karussell.wordpress.com/2011/04/10/viewing-hprof-from-android-with-jvisualvm/ - можно сравнить три дампа взятых за продолжительный период - по идее можно выделить тренд.

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

Ответы>>721577

20 Апр, 09:49 #358 #721577

>>721575
Это, конечно, если куча протекает )

Ответы>>721624

20 Апр, 11:30 #359 #721624

>>721577
А что еще может протекать?
Давайте посремся на тему того что в джаве нет утечек, а есть в пустую занятые ресурсы

Ответы>>721697

20 Апр, 13:13 #360 #721697

>>721624
out of heap memory под java.nio, память выделенная в jni, стек )

Ответы>>721713

20 Апр, 13:32 #361 #721713

>>721697
>стек
Это как?
>out of heap
Ну опять же это потому что ты где-то зажал ссылку не? И сборщик его не удалил.
>в jni
Ну ладно, но жавовскими профайлерами это разве можно выявить? И это не не в джаве проблема, так что несчитово.

Ответы>>721734

20 Апр, 14:06 #362 #721734

>>721713
stackoverflow - другое имя

http://www.evanjones.ca/java-bytebuffer-leak.html

считово, например, если есть
native acquire()
native release()
но контракт использования не выполнен.

Ответы>>721746

20 Апр, 14:36 #363 #721746

>>721734
>stackoverflow - другое имя
Так это не значит что у тебя стек течет, это значит что у тебя стек уперся в кучу, или наоборот. Видимо кто-то где-то решил сделать рекурсию без выхода, или объекты в кучу не влезают и попадают в область выделенную для стека.

Ответы>>721774

20 Апр, 15:14 #364 #721773

анончики, что если я хочу протестировать приложение на физическом устройстве, но я нищеброд с MTC 982T
хочу установить OEM Driver, но не знаю какая модель, фирма фирма, я так понял, Huawei

Ответы>>721861>>722412

20 Апр, 15:14 #365 #721774

>>721746
Cмотри в суть вещи. Есть ресурс - память под стек, который из-за неправильно написанного кода источается. Если буквально - утекают стековые фреймы.

stack over flow.

20 Апр, 17:21 #366 #721861

>>721773
Ох уж эти виндоус-проблемы.

Не тупи анончик, GOOGLE тебе уже дала единственно-нужный драйвер:
0) На телефоне включаешь "Отладка по USB"
1) Скачивашь через Android SDK "Google USB driver" (он там где-то внизу списка компонентов)
2) Подключаешь своей говно-девайс к компьютеру
3) Открываешь "список устройств" и находишь там неопознаный девай
4) Открываешь меню выбора драйвера и там "указать путь к дровам" (или что-то похожее)
5) Выбираешь путь к папке с Google USB Driver.
Он где-то внутри папки SDK/extras/google/usb.
6) Дальше если надо, в списке выбираешь "Google ADB Complex" (или что-то похожее)

Ответы>>722394>>722660

21 Апр, 01:38 #367 #722310

>>714057
Такая же проблема, как решил?

21 Апр, 06:41 #368 #722394

>>721861
У меня например на nexus 5 достаточно этого драйвера, а для HTC One нужно ставить свое говно.

Ответы>>722410

21 Апр, 08:24 #369 #722410

>>722394
На работе все тестовые девайсы (хуавеи/леновы/самсунги/соньки),
только через одни этот драйвер настраивал.

HTC у нас нет, но я сильно сомневаюсь что там по другому.

21 Апр, 08:33 #370 #722412

>>721773
на 4pda хоть чекал?
http://4pda.ru/forum/index.php?s=&showtopic=576453&view=findpost&p=32107251

Ответы>>722660

21 Апр, 10:51 #371 #722465

Есть rest сервер, нужно сделать систему авторизации на андроид устройстве. Какую систему на сервере выбрать - httpSessions, OAuth2, JWT?
Дайте какой-нибудь гайд как запилить систему аутентификации на устройстве.

Ответы>>722482

21 Апр, 11:46 #372 #722482

>>722465
Google OAuth:
1) на андроиде "из коробки" (есть java API)
2) пользователю не придется запоминать новые пароли

21 Апр, 15:42 #373 #722660

>>721861
сделал по твоему гайду, не сработало, но все равно спасибо
>>722412
спасибо, аночик
скачал самый последний драйвер и установил
сейчас тестю приложение

21 Апр, 21:37 #374 #723043

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

Ответы>>723087

21 Апр, 22:49 #375 #723087

>>723043
http://acm.timus.ru/?locale=ru

126 Кб, 668x459

21 Апр, 23:48 #376 #723148

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

Кароч вот фрейм в который я объекты должен закинуть а объекты в цикле создаются. TextView это одна буква считай.
[CODE]
RelativeLayout.LayoutParams frameLP = new RelativeLayout.LayoutParams(300, 300);
frameLP.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE);
frameForLetters.setLayoutParams(frameLP);

Random random = new Random();
for (int i = 0; i < 3; i++) {
TextView textView = new TextView(getActivity());
textView.setX(random.nextInt(size.x - 200));
textView.setY(random.nextInt(size.y - 200));
textView.setText(i + "");
textView.setBackgroundColor(getResources().getColor(R.color.colorPrimary));
textView.setTextSize(50);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
textView.setLayoutParams(lp);
textView.setOnTouchListener(touchListener);
frameFor.addView(textView);
}[/CODE]

Есть охуительный точ лисенер которым я двигаю объекты.

[CODE]View.OnTouchListener touchListener = new View.OnTouchListener() {
float dX, dY;

@Override
public boolean onTouch(View view, MotionEvent event) {
switch (event.getAction()) {

case MotionEvent.ACTION_DOWN:

dX = view.getX() - event.getRawX();
dY = view.getY() - event.getRawY();
break;

case MotionEvent.ACTION_MOVE:

view.animate()
.x(event.getRawX() + dX)
.y(event.getRawY() + dY)
.setDuration(0)
.start();
break;
default:
return false;
}
return true;
}
};[/CODE]

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

Ответы>>723271>>724290

sage 22 Апр, 07:48 #377 #723271

>>723148
либо уноси это pastebin, либо иди нахуй

Ответы>>723272

22 Апр, 07:54 #378 #723272

>>723271
сорян. я не виноват что ебучая вакаба не может мне в [CODE] обернуть

[CODE]ТЕСТ[/CODE]

22 Апр, 11:29 #379 #723386

Нужен хелп, кто работал с google-fit пожалуйста, ответьте

http://stackoverflow.com/questions/36696697/google-fit-distance-and-speed-using-sensors-api

http://stackoverflow.com/questions/36707701/workout-calorie-calculation-using-google-fit

62 Кб, 500x368

22 Апр, 13:02 #380 #723467

Возможно ли непрерывное распознование голоса?
Поставить на час и пускай пишет те слова, которые распознал.

22 Апр, 13:39 #381 #723486

>>714032 (OP)
Суп, аноны. Нужна помощь.
Как в андроиде проверяется наличие активного соединения с интернетом? Путем опроса ConnectivityManager'а методами getActiveNetwork/getActiveNetworkInfo или есть ещё способы? Если первое, то как можно зарегистрировать у этого менеджера свою?
Объясняю, зачем мне это нужно.
Есть планшет, на нем интернет вручную поднимается с помощью pppd (с мобилы через отг, потому что я не осилил DUN на ебучем bluedroid), затем утилитой ndc создается сеть, в которую добавляется интерфейс ppp0, и делается активным. В результате интернет работает во многих приложениях кроме тех, что, по всей видимости, запрашивают информацию об активной сети. Они выдают ошибку об отсутствии подключения.

Ответы>>723693>>724373

22 Апр, 13:49 #382 #723500

Поцоны, оцените тестовое задание для https://career.ru/vacancy/16687881

http://pastebin.com/u3ZYacvx
http://pastebin.com/VcszSRKU

В таком виде пойдёт? Я никогда не работал разработчиком и не знаю общепринятых стандартов. Везде откуда звонят по отправленным резюме спрашивают "какие ФРЕЙМВОРКИ вы знаете", может какой-нибудь Spring for Android засунуть,?

Ответы>>723549>>723624

22 Апр, 14:36 #383 #723549

>>723500
> new Thread -> runOnUiThread
Это даже хуже, чем асинктаск. Лучше на него переделай хотя бы.

Ответы>>723551>>723559>>723560>>723727

22 Апр, 14:42 #384 #723551

>>723549
-Чем хуже?
-Чем асинктаск.

Пояснил бы почему хуже.

22 Апр, 14:43 #385 #723552

Билдили ффмпег с x264 и фильтрами под андроид?

22 Апр, 14:52 #386 #723559

>>723549
Асинктаск почему плох?

Ответы>>723568

22 Апр, 14:54 #387 #723560

>>723549
А как тру? Через handler-ы? И что в runOnUiThread крамольного?

Ответы>>723568

22 Апр, 15:07 #388 #723568

>>723559
Без контекста ничем.
>>723560
Если ты используешь runOnUi, то вероятней всего у тебя есть ссылка на контекст неявная. А это значит гроб гроб кладбище утекающие активности.

Ответы>>723812

22 Апр, 16:13 #389 #723624

>>723500
>стажер, работа 20 часов в неделю
>опыт работы от 1 до 3 лет

Они там совсем охренели?

Ответы>>723626

22 Апр, 16:15 #390 #723626

>>723624
они ещё и денег не платят, а только
>Компенсация расходов на питание и проезд

Ничего не имею против стажировки, но с адекватными требованиями.

Ответы>>723727

22 Апр, 16:36 #391 #723630

дайте ссылку на отстойный подкаст на русском, что тут кидали

Ответы>>723635

22 Апр, 16:41 #392 #723635

>>723630
Гугли apptractor androiddev.

475 Кб, 900x400

22 Апр, 17:23 #393 #723676

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

Ответы>>723680>>723681

22 Апр, 17:29 #394 #723680

>>723676
>около месяца
Значит два месяца.
>уделять этому два-три часа в день
Если по 6 часов в день.

30-50к, в зависимости от твоей наглости.

Ответы>>723690

22 Апр, 17:30 #395 #723681

>>723676
300 р в час за то что нихуя еще не знаешь 2 часа 30 дней = 18 косых, скинь до 15

Ответы>>723690

22 Апр, 17:35 #396 #723688

А у меня все еще эмулятор с сдк не работает.

22 Апр, 17:36 #397 #723690

>>723680
>>723681
Благодарю. Я и думал назвать сумму в районе 20-30к.

22 Апр, 17:38 #398 #723693

>>723486
Бамп вопросу

247 Кб, 720x1280

22 Апр, 18:00 #399 #723727

>>723549
так трушнее? http://pastebin.com/EcQeBH32

>>723626
насколько я понял от того, кто там стажировался — платят 70000 за полный рабочий день, наверное половину за 20 часов в неделю. Питание и проезд компенсируют помимо этого. Если не платят, то, конечно, хуй я туда пойду.

Ответы>>723758

22 Апр, 18:31 #400 #723758

>>723727
А нафига ты первый редирект руками обрабатываешь?

Ответы>>723816

22 Апр, 19:04 #401 #723812

>>723568
> Без контекста ничем.
Контекст ненужон. Если очень нужен — можно передать контекст приложения, его всегда должно хватить.

Ответы>>723939>>724198

22 Апр, 19:08 #402 #723816

>>723758
По хорошему, все редиректы надо вручную обрабатывать.

Ответы>>723835

22 Апр, 19:25 #403 #723835

>>723816
По хороше надо пользоваться нормальными библиотеками, а не
> This implementation doesn't follow redirects from HTTPS to HTTP or vice versa.
http://developer.android.com/intl/ru/reference/java/net/HttpURLConnection.html

> так трушнее?
Разницы никакой, ведь GetHtmlTextTask "inner класс" и так же захватывает ссылку на активити.

22 Апр, 20:53 #404 #723939

>>723812
> контекст приложения, его всегда должно хватить.
А потом удивляются, почему память течёт.

Ответы>>723941>>723952

22 Апр, 20:58 #405 #723941

>>723939
Ну если у тебя память от контекста апликухи течет то ты явно даун.

Ответы>>724156

22 Апр, 21:10 #406 #723952

>>723939
Поясни подробнее, контекст приложения ведь никогда не разрушается.

Ответы>>723966>>724156

22 Апр, 21:28 #407 #723966

>>723952
Та он придурок.

Ответы>>723982>>724156

22 Апр, 21:49 #408 #723982

>>723966
Ну может быть и так, хотя тезис что "от использования контекста-приложения бывают утечки", помню еще со времен андроида 1.6

Возможно это связано с тем, что загруженные Drawable кэшируются внутри Resources
http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.1.1_r1/android/content/res/Resources.java/#115
, но там все ссылки WeakReference

Ответы>>724033

22 Апр, 21:55 #409 #723985

Платиновый вопрос. А есть ли тут серьезные бизнесмены, которые зарабатывают на своих подделках? Пишите прохладные

Ответы>>723989

22 Апр, 21:56 #410 #723989

>>723985
*поделках
Проклятый свайп

Ответы>>724012

22 Апр, 22:18 #411 #724012

>>723989
--- Успех разрабочкика уровня /b/

Я за пол-года заработал и вывел на инапах 100$ (меньше вывести нельзя),
потом еще около 50$ и приложения заблокировал Google за "эротику".

Ответы>>724288

22 Апр, 22:41 #412 #724033

>>723982
Нельзя юзать активити контекст где попало.
Апликейшн контекст всегда синг энтити.

Ответы>>724156

22 Апр, 22:50 #413 #724045

Долгое время писал под WinPhone 8, ну и UWP. Писал относительно простенькие приложения. Продал Люмию и купил топовый андроид. Шарпы знаю относительно хорошо, с java не сталкивался никогда. Вопрос: решил что буду теперь писать под андрюшу и xamarin мне не особо понравился, что можно почитать по java, чтобы быстро вникнуть и писать уже на любимую андрюшу? хелп анончики

Ответы>>724053>>724163

22 Апр, 22:58 #414 #724053

>>724045
Начинай сразу с Kotlin, он ближе к C# и даже местами круче (а скоро еще добавят async/await).

Вот смотри реп батл C# vs Kotlin на dotNext конференции
https://www.youtube.com/watch?v=jDrCvq0yo7g

Ответы>>724064

22 Апр, 23:09 #415 #724064

>>724053
не хочу начинать kotlin только потому что планирую в ближайшие полгода устроиться android прогером. Тем более слышал что котлин медленный местами + гугл не планирует его внедрять полностью вместо джавы (сравниваю свифт в ios)

Ответы>>724273

23 Апр, 00:53 #416 #724156

>>723966
>>723952
>>724033
>>723941

Открой документацию и почитай сам: https://developer.android.com/reference/android/content/ContextWrapper.html#getApplicationContext()

> This generally should only be used if you need a Context whose lifecycle is separate from the current context, that is tied to the lifetime of the process rather than the current component.
> If used from the Context returned here, the receiver is being registered with the global state associated with your application. Thus it will never be unregistered for you. This is necessary if the receiver is associated with static data, not a particular component. However using the ApplicationContext elsewhere can easily lead to serious leaks if you forget to unregister, unbind, etc.

Ну или сюда загляните: https://stackoverflow.com/questions/7298731/

Ответы>>724180>>724375

23 Апр, 01:02 #417 #724163

>>724045
Если хорошо знаешь шарпы, то лучше начать с ксамарина. В джаву и нативные приложения вкатываться — это процесс небыстрый.

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

> что можно почитать по java, чтобы быстро вникнуть и писать уже на любимую андрюшу?
Официальную документацию. Или хуйню из шапки.

Ответы>>724201

23 Апр, 01:25 #418 #724180

>>724156
Юзать активити контекст еще чреватее. Захочешь ты синглтон сделать, какой контекст заюзаешь, а? Активити? Вот и дибил.

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

Ответы>>724198

23 Апр, 01:44 #419 #724198

>>724180
Я разве говорил, что нужно везде использовать Activity, даун?

Это вон тут >>723812 утверждалось, что "апп контекста хватит всем"

Ответы>>724202

23 Апр, 01:49 #420 #724201

>>724163
>Или хуйню из шапки.
>Эккель
>Хорстманн
>хуйню из шапки
>Официальную документацию.

23 Апр, 01:50 #421 #724202

>>724198
Но я так и не понял откуда будет мемори лик, если ссылаешься на сингл энтити.
Пускай это хуевый паттерн, но лик то откуда?

Ответы>>724276

68 Кб, 600x494

23 Апр, 05:24 #422 #724273

>>724064
> Тем более слыша
А я слышал, что твоя мамаша сосет у краснолюда пруфов конечно не будет.

23 Апр, 05:33 #423 #724276

>>724202
Я так понял если хранить ссылки на что-то внутри кастомного Applicatoin.

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

другой анон

23 Апр, 08:39 #424 #724288

>>724012
Интересно, а за фуррятинку заблочат?

23 Апр, 08:44 #425 #724290

>>723148
>игра на андроидокомпонентах
ШТОООАААА?

23 Апр, 12:42 #426 #724373

>>723486
Бамп вопросу

23 Апр, 12:43 #427 #724375

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

Ответы>>724392

23 Апр, 12:54 #428 #724392

>>724375
Также для любого синглтона в твеом приложении.
Смысл юзать активити контекст есть только в адаптерах.

Ответы>>724411>>724413

23 Апр, 13:09 #429 #724407

>>714032 (OP)
как же хочется сладости ><

23 Апр, 13:25 #430 #724411

>>724392
В асинктасках тоже, например.

23 Апр, 13:26 #431 #724413

>>724392
А вот в адаптерах как раз таки нет смысла. Более того, в адаптерах даже контекст активити нет смысла держать, а если держишь — то это проёб по архитектуре. Но проёб допустимый.

Ответы>>724421>>724422

23 Апр, 13:35 #432 #724421

>>724413
Из апликейшн контекста ты не можешь инфлейтить.

Ответы>>724423

23 Апр, 13:36 #433 #724422

>>724413
Лист адаптер как работает маня?

Ответы>>724423>>724426

23 Апр, 13:38 #434 #724423

>>724421
Внимательно прочитай, я говорю, что контекст аппликухи не нужен в любом случае.
>>724422
И как же он работает?

Ответы>>724426

23 Апр, 13:41 #435 #724426

>>724423
Да но внезапно нужен контекст активити.
>>724422
Инфлейтами.

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

Ответы>>724427

23 Апр, 13:45 #436 #724427

>>724426
> Да но внезапно нужен контекст активити.
Нет.
> Инфлейтами.
И зачем для этого адаптеру ссылка на контекст акиивити?

Ответы>>724481>>724528

23 Апр, 15:13 #437 #724481

>>724427
Что бы стили и тема была та же. А то потом удивляются хули вьюшки как говно и текст не того цвета.

Ответы>>724483

23 Апр, 15:18 #438 #724483

>>724481
А схуяли бы им не быть нормальными?

23 Апр, 16:24 #439 #724528

>>724427
Там же вроде как есть баг, что из апликейшнконтекста инфлейтитт с ошибкой.

Ответы>>724600

23 Апр, 17:53 #440 #724600

>>724528
Да ёбаный в рот, третий раз говорю, не нужно никакого контекста приложения. Достаточно контекста parent метода getView в момент получения вьюхи.

Ответы>>724614

23 Апр, 18:03 #441 #724614

>>724600
Ты вообше долбоеб? На момент первых прорисовок нету вьюхи.
Потому сука и суют контекст в адаптеры, чтоб инфлейтить эту ебаную вьюху. А если засунуть в конструктор апликейшн контекст то вроде бы как раз и будет экепшн. Я правда его так давно ловил что и не помню всех ньюансов.
Потому я и сказал что для ебучих адаптеров нужен активити контекст, но кто-то возможно ты спизданул что-то про кривую архитектуру.
Заебал нахуй, со своим ресайлервью вообще ополоумели.
Если от тебя заинкапсулировали реализацию и ты неебешь что откуда берется то иди ты нахуй.

Ответы>>724634>>724646>>724700

23 Апр, 18:24 #442 #724634

>>724614
Хм, пойду поищу в своих проектах адаптеры.
Точно помню, что контекст активити когда-то убрал за ненадобностью.

23 Апр, 18:38 #443 #724646

>>724614
http://d.android.com/intl/ru/reference/android/widget/Adapter.html#getView(int, android.view.View, android.view.ViewGroup)
http://d.android.com/intl/ru/reference/android/support/v7/widget/RecyclerView.Adapter.html#onCreateViewHolder(android.view.ViewGroup, int)

"ViewGroup parent" есть и на момент первой прорисовки,
из него можно взять контекст и в ListView/GridView и в RecyclerView

23 Апр, 19:13 #444 #724700

>>724614
> Ты вообше долбоеб? На момент первых прорисовок нету вьюхи.
parent есть всегда, учи матчасть.
> Заебал нахуй, со своим ресайлервью вообще ополоумели.
Я про ListView говорю.

287 Кб, 700x1256

154 Кб, 688x1052

107 Кб, 816x444

23 Апр, 19:51 #445 #724737

Таблица на GridLayout(столбцы растягиваются по columnWeight). Cтолбы ужимаются, а сами баттоны в них растягиваются по ширине столбца и, я так понимаю, на маленьком экране(меньше, чем 4.7 дюйма) размер столбца становится меньше минимального размера баттона, поэтому верстка плывет. Как сделать ужатие самих баттонов вместе со столбцами? Подскажите, куда копать, пожалуйста.
Вертикальное сжатие кнопок тоже интересует, т.к. на последнем скрине кнопки уходят вниз.

Ответы>>724746

23 Апр, 19:57 #446 #724746

>>724737
Хуй знает, что там с гридом, но есть замечательный percent relativelayout.

Ответы>>724760

23 Апр, 20:06 #447 #724760

>>724746
спасибо за наводочку

73 Кб, 500x370

23 Апр, 21:53 #448 #724856

Как сделать ширину Spinner Dropdown размером в самый широкий item?

Ответы>>724865>>724871

23 Апр, 22:00 #449 #724865

>>724856
android:layout_width:"wrap_content", не?

Ответы>>724870>>724871>>725196

23 Апр, 22:05 #450 #724870

>>724865
Нет. Ему этот атрибут до пизды.

Ответы>>724871

23 Апр, 22:06 #451 #724871

>>724856
>>724865
>>724870
Такс, анончики. Я налажал.
У меня Spinner в режиме Dialog.
Как в этом режиме сделать ширину списка под самый широкий итем?

Ответы>>725002>>725108

24 Апр, 00:43 #452 #725002

>>724871
Что ещё за режим Dialog блядь

Ответы>>725196

24 Апр, 03:14 #453 #725108

>>724871
Тебе же дали ответ выше. Wrap content используй для листа

Ответы>>725196

24 Апр, 04:26 #454 #725119

Аноны, я уже себе весь мозг выебал. Как получить блядский список друзей в facebook.
Пробовал "me/friends" он возвращает только количество друзей и данные тех из них кто пользуется моим приложением никто
А /me/taggable_friends вместо id у юзеров возвращает левую хрень.
Это вообще возможно сделать?

Ответы>>725189

24 Апр, 10:59 #455 #725189

>>725119
А погуглить? me/firends вернет только тех его друзяшек которые уже в твоей приложухе. А чистый список, дл яинвайтов например, получить низя, нужно вызывать пейсбучный диалог. Еще можно оформить приложуху как игру, тогда можно использовать invitable_friends, и показывать их в своем ui.

Ответы>>725597

24 Апр, 11:25 #456 #725196

>>725108
>>724865
Да не работает это!
>>725002
http://developer.android.com/reference/android/widget/Spinner.html#attr_android:spinnerMode

Ответы>>725209

24 Апр, 11:41 #457 #725209

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

Ответы>>725230

24 Апр, 12:20 #458 #725230

>>725209
Причем даже через кастомный адаптер не удалось.

24 Апр, 18:16 #459 #725597

>>725189
Нифига, invitable_friends сорт оф taggable_friends

Ответы>>725613>>725772

24 Апр, 18:41 #460 #725613

>>725597
В целом в api у fb, какой то пиздец твориться. То нельзя, туда не пустим, ко ко ко это ради юзеров. Мудилы блять.

24 Апр, 20:15 #461 #725733

Привет.
Энетрпрайзный примат в теме.
Дохуя стажа в яваЕЕ. В основном бакенды. Стеки редхата и оракла.

Как быстро и непринужденно перекатиться в мобильный девелопмент.

Учебников ява за 21 день не предлагать лол. Ибо подозреваю что яву я знаю всяко лучше чем 80% местных посетителей, как и груви со скалой.

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

Ответы>>725761>>725796

24 Апр, 20:35 #462 #725761

>>725733
Гуглишь тестовые задания
@
Вкатываешься

Ответы>>725844

24 Апр, 20:44 #463 #725772

>>725597
>Нифига, invitable_friends сорт оф taggable_friends
С чего ты взял? Мне это возвращает весь список друзей кто еще не в приложухе.

Ответы>>725774

24 Апр, 20:47 #464 #725774

>>725772
Я о том что idшки юзеров получить для загрузки данных профиля невозможно используя invitable_friends

Ответы>>725776

24 Апр, 20:53 #465 #725776

>>725774
Лол, а нахуя тебе их идентификаторы?

Ответы>>725779

24 Апр, 20:56 #466 #725779

>>725776
Задание тестовое делаю. С контактом все влет получилось, а от пейсбука меня трясет уже. Дальше списка друзей никак не продвинуться. А надо всего лишь дату рождения, телефон (если есть), пикчу и имя.

Ответы>>725785

24 Апр, 21:00 #467 #725785

>>725779
Даже если ты получишь айдишник друга юзера хуй ты инфу с него достанешь. Те кто давал тестовое в курсе что после graph api 2.0 многое пошло по пизде? А то мне на полном серьйозе хотели показать "мол раньше все работало ща покажу, чо воняешь" - и прямо на месте обсирались.

Ответы>>725790>>725800

24 Апр, 21:05 #468 #725790

>>725785
Там еще предлагают мыла юзеров парсить, такое чувство что они тз для задания лет 10 не меняли. Хотя там 5е ведро в требованиях и вся хуйня.

Ответы>>725800

24 Апр, 21:06 #469 #725791

https://www.dropbox.com/s/ao57yihcgmbfnpy/Android_test.pdf?dl=0 Вот можно заценить задание.

Ответы>>725805>>726240>>726347

24 Апр, 21:11 #470 #725796

>>725733
Если у тебя дохуя стажа в проге, перед глазами шапка, и ты спрашиваешь как вкатится, то у меня для тебя плохие новости.

Ответы>>725843

24 Апр, 21:14 #471 #725800

>>725790
>>725785
Хотя я кажется обосрался, имея адйишник ты что-т о вытащишь, но только то что совсем в публичном доступе лежит.

24 Апр, 21:17 #472 #725805

>>725791
Ну я думаю тебе стоит им аргументированно объяснить, что ничего больше чем имя/фотку ты от фейсбука получить не сможешь.

Ответы>>725806

24 Апр, 21:17 #473 #725806

>>725805
Угу, так и сделаю.

24 Апр, 21:49 #474 #725843

>>725796
Ебать дебил.
Ты сам шапку то читал?
Там кроме ссылки на сайт гугля по андроиду нихуя нет

Ответы>>725854>>725855

24 Апр, 21:51 #475 #725844

>>725761
Чот нихуя.
Надо какой то учебник хотя бы.
Эти лайоты и прочая хуйня не имеет ничего общего с ejb jpa jta jms с которыми я работаю сейчас

Ответы>>725852

24 Апр, 21:58 #476 #725852

>>725844
Советую тебе Алексея Климова, ну и официальные туториалы.

Чет странно что ты за столько лет гуглом не овладел

Ответы>>725855

24 Апр, 21:58 #477 #725854

>>725843
И чем же тебя сайт гугла не устроил?

24 Апр, 21:59 #478 #725855

>>725843
Я ее писал если что.
Никак не пойму что тебе не нравится. В офф источнике помимо документации есть примеры и гайды, русские ресурсы так вообще изложили все попорядку и у них туевая куча уроков.
Что ты ожидаешь получить в ответ "посоны как вкатится"? Ты должен быть достаточно сведущ в проге чтоб понимать, единственный способ вкатится писать что-то.

>>725852
В шапке внезапно это все есть.

24 Апр, 22:10 #479 #725863

Почему они не переходят на Go?

Ответы>>725866>>725936>>726026>>726030

24 Апр, 22:13 #480 #725866

>>725863
А нахуй го уперлось?

24 Апр, 23:13 #481 #725936

>>725863
Каким образом ебанашка? Давай перепиши все что есть на Go.

25 Апр, 01:28 #482 #726026

>>725863
go не нужен же

25 Апр, 01:31 #483 #726030

>>725863
> Go
Хуита для хипстеров. Ещё бы на вайтспейс предложил перейти.

Ответы>>726033

25 Апр, 01:37 #484 #726033

>>726030
Питон штоле?

25 Апр, 09:10 #485 #726177

>>718653
Еблан, просто залей новую версию в beta-раздел :3

25 Апр, 10:21 #486 #726210

Ребят, где можно найти тестовые задания на андроиде?

Ответы>>726240

25 Апр, 11:07 #487 #726240

>>726210
В этом треде например: >>725791

Ты тот чувак у которого дохуя опыта в энтерпрайзе, да?

Ответы>>726257

25 Апр, 11:18 #488 #726257

>>726240
Нет, я хуй прочитавший HeadFirst.

Ответы>>726258

25 Апр, 11:18 #489 #726258

>>726257
Собственно и задания ищу средняковые.

25 Апр, 11:29 #490 #726267

Антоны, я приложение по вечерам пилил и закинул в googleplay. Сейчас посмотрел там почти 900 инсталов и всего около 90 активных. Нигде не рекламировал но думаю это и так понятно. Посмотри, может посоветуешь чего.
https://play.google.com/store/apps/details?id=com.kota.randommovie.application

Ответы>>726271>>726306

25 Апр, 11:37 #491 #726271

>>726267
Дизайн говно, код наверное тоже (раз не показываешь).

Ты бы вставил аналитику (типа google/flurry), ибо активные пользователи в GP иногда завышаются.
Да и вообще это не те кто им пользуются, а кто поставил и забыл удалить.

Ответы>>726351

323 Кб, 720x1280

25 Апр, 12:24 #492 #726306

>>726267
Братан, названия разные, непорядок.

Алсо было очень интересно почитать про Дмитрия Евдокимова, ну просто пиздец как, очень увлекательно, базарю.

25 Апр, 13:43 #493 #726347

>>725791
а не охуеют они там?

Ответы>>726351

25 Апр, 13:52 #494 #726351

>>726271
Спасибо. А что можно с дизайном сделать? Как вообще прокачать построение интерфейсов?

>>726347
А что не так, вроде норм задание для джуна.

Ответы>>726357

25 Апр, 13:57 #495 #726357

>>726351
ХЗ, у меня тоже хреново с дизайном, но я отдаю себе в этом отчем.

Поэтому я иду на FL (или freelance.ru) и делаю заказ на материал-дизайн интерфейса.
Потом выбираю оптимального исполнителя по цене/качеству.

25 Апр, 15:45 #496 #726494

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

Ответы>>726501>>726544

25 Апр, 15:51 #497 #726501

>>726494
ехал в тралике, увидел как бабка разгадывает кроссворд, запилил апп, не взлетело

Ответы>>726534

25 Апр, 16:17 #498 #726521

зачем все пишут "m" перед началом имени переменной, такого пиздеца никогда не встречал

Ответы>>726547>>726728

25 Апр, 16:26 #499 #726534

>>726501
Кек

25 Апр, 16:37 #500 #726544

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

Ответы>>726572

25 Апр, 16:43 #501 #726547

>>726521
>зачем все пишут "m" перед началом имени переменной, такого пиздеца никогда не встречал
Подражание Android SDK, загляни туда.

Ответы>>726557

25 Апр, 16:52 #502 #726557

>>726547
ну а какой смысл в этом, что это значит?

Ответы>>726561

25 Апр, 16:55 #503 #726561

>>726557
mXXX от слова member (класса).
У каждой команды есть определенные конвенции, их надо придерживаться.

А насчет того что все пишут, это не правда - я не пишу (в конструкторе пользуюсь this.XXX = XXX)

Ответы>>726817

25 Апр, 17:04 #504 #726572

>>726544
Что у тебя за проги такие?

Ответы>>726619

25 Апр, 17:51 #505 #726619

>>726572
Говно всякое же, серьёзно. Уровня "очиститель андроид батареи виджет".

25 Апр, 17:56 #506 #726627

>>714032 (OP)
ПЕРЕКАТ
https://2ch.hk/pr/res/726626.html (М)

25 Апр, 17:56 #507 #726628

>>714032 (OP)
ПЕРЕКАТ
https://2ch.hk/pr/res/726626.html (М)
https://2ch.hk/pr/res/726626.html (М)
https://2ch.hk/pr/res/726626.html (М)
https://2ch.hk/pr/res/726626.html (М)

25 Апр, 19:24 #508 #726728

>>726521
m - non-public non-static переменная.

25 Апр, 20:04 #509 #726817

>>726561
а mm - memberMember? Что за mumbling?

Казалось бы венгерская нотация осталась в 90х, ан нет нашлись форсеры сраные.

25 Апр, 20:07 #510 #726823

Пробелы или табы?

Блок с новой строки?
{

}

Или с той же? {

}

Ответы>>727075>>741017

25 Апр, 23:58 #511 #727075

>>726823
ctrl+shift+L
Идея всё сделает за тебя как надо.

Ответы>>727124

26 Апр, 01:16 #512 #727124

>>727075
Не пользуюсь идеей, наверняка это "как надо" можно настроить так, как мне захочется.

12 Май, 01:16 #513 #741013

>>714032 (OP)
Андроиданы, тут такое дело.
Завтра утром я иду на собеседование на другую работу. А я очень давно этим не занимался, года три точно, да и волнался раньше на них жутко, просто из-за стрессовой обстановки.
Какие сейчас вопросы задают? Чего ожидать? Что по быстрому освежить.

12 Май, 01:19 #514 #741017

>>726823
Пробелы. Code Style на что? Там все расписано и объяснено.

Скобки - это однозначно египетские скобки. Это вообще впитывается с первым Hello World на яве.

Ответы>>741066

12 Май, 06:38 #515 #741066

>>741017
> Пробелы. Code Style на что? Там все расписано и объяснено.
Не слышал о таком, не гуглится. Поясни давай.
> Скобки - это однозначно египетские скобки. Это вообще впитывается с первым Hello World на яве.
Какая разница, как был написан первый хэллоуворлд на джаве?

Ответы>>741152

12 Май, 09:59 #516 #741152

>>741066
>не гуглится
Ты дурак?
https://google.github.io/styleguide/javaguide.html
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html
>Какая разница
Большая.

Ответы>>741205

12 Май, 10:47 #517 #741205

>>741152
> Ты дурак?
А ты мне сказал, какой надо гуглить? Ты мне 2 в ответ кинул, которые ещё и противоречат друг другу. Ни то, ни другое не называется "Code Style".
> http://www.oracle.com/technetwork/java/codeconvtoc-136057.html
Four spaces should be used as the unit of indentation. The exact construction of the indentation (spaces vs. tabs) is unspecified. Tabs must be set exactly every 8 spaces (not 4).
Нет определённого общего соглашения, что пробелы можно, а табы — нет, у всех оно разное.
> Большая.
Классная аргументация. Если бы хэллоу ворлд был бы написан одной строкой, ты бы оформлял код одной строкой по сей день?

Ответы>>741419

12 Май, 15:55 #518 #741419

>>741205
Поехавший, по запросу Java Code Style гугл выдает первую ссылку.
Оттуда же:
2.3.1 Whitespace characters

Aside from the line terminator sequence, the ASCII horizontal space character (0x20) is the only whitespace character that appears anywhere in a source file. This implies that:

All other whitespace characters in string and character literals are escaped.
Tab characters are not used for indentation.

Braces follow the Kernighan and Ritchie style ("Egyptian brackets") for nonempty blocks and block-like constructs:

No line break before the opening brace.
Line break after the opening brace.
Line break before the closing brace.
Line break after the closing brace if that brace terminates a statement or the body of a method, constructor or named class. For example, there is no line break after the brace if it is followed by else or a comma.

Ответы>>741511

12 Май, 17:29 #519 #741511

>>741419
> Поехавший, по запросу Java Code Style гугл выдает первую ссылку.
Первая ссылка не называется Code Style, как ты её начально назвал. Вторая тоже, кстати. Если пробелы — общепринятый стандарт, то есть электронный нормативный документ, имеющий конкретное название. И если ты мне хочешь о нём сообщить, то называй его точно, а не какое-то абстрактное название, по которому я нахожу овер 9000 таких "рекомендаций по оформлению".

Ты мне кинул 2 ссылки в прошлом посте. В одной сказано, что табы нельзя, в другой — что табы можно. Догадываешься уже, что ты облажался?

Ответы>>741566

12 Май, 18:21 #520 #741566

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

Ответы>>741671

12 Май, 20:05 #521 #741671

>>741566
Ясно, упорно 2 раза пропустил один и тот же аргумент, да ещё и перешёл на оскорбления. Слив засчитан.
> Если бы ты не был дауном, желающим доебаться из-за мелочи
Это вообще ни разу не мелочь. Если есть общий нормативный документ, ты дашь его точное название. А дело в том, что такого документа просто не существует.

Ответы>>741802

12 Май, 22:21 #522 #741802

>>741671
Где я, блядь, давал ТОЧНОЕ НАЗВАНИЕ ДОКУМЕНТА? Покажи мне. Ткни, блядь, пальцем.
Это общепринятое, блядь, словосочетание, тупой ты мудак. Синоним Programming Style.
Какой аргумент я пропустил?
Еще раз: один документ не дает точной спецификации по КОНКРЕТНОМУ пункту. Второй этот пункт уточняет и полностью, блядь, регламентирует.

Ответы>>741935

13 Май, 01:44 #523 #741935

>>741802
> Это общепринятое, блядь, словосочетание, тупой ты мудак. Синоним Programming Style.
Общепринятое сочетание, по которому с одинаковой успешностью гуглится рекомендация от гугла и вопрос на стэковерфлоу "как надо оформлять код????" с длинным дискассом ни о чём.
> Какой аргумент я пропустил?
Что документа два и они друг другу противоречат.
> Еще раз:
Первый раз, видимо, был монологом в твоей голове?
> один документ не дает точной спецификации по КОНКРЕТНОМУ пункту. Второй этот пункт уточняет и полностью, блядь, регламентирует
Один документ говорит что можно и так и так, второй — онли пробелы. Причём второй дан всего-лишь гуглом, это их гуглостайл, который в принципе не может быть единственно верным.

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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion