
2
19.03.2017
12:35:44
Всем привет

Sasha
19.03.2017
12:37:13
Привет

2
19.03.2017
12:38:13
Я бы хотел создать программу/игру и что мне для этого нужно знать??

Andrey
19.03.2017
12:39:25
хотябы для начала определиться программу или все же игру

Google

Sasha
19.03.2017
12:39:47
Ребят, такой вопрос
Есть диалог, в нем список
Данные в список грузятся с интернета
Как грамотно это реализовать, чтобы не было задержек при открытии диалога?
Сейчас создаю пустой диалог, открываю его и потом начинаю уже грузить данные, пока в диалоге крутится прогресс бар. Но как только ставлю списку внутри диалога адаптер, то несмотря на то, что это происходит в отдельном потоке, приложение все равно проседает на пару секунд
Помогите советом

Igor
19.03.2017
12:41:02

Юсуф
19.03.2017
12:43:15
Ребят, такой вопрос
Есть диалог, в нем список
Данные в список грузятся с интернета
Как грамотно это реализовать, чтобы не было задержек при открытии диалога?
Сейчас создаю пустой диалог, открываю его и потом начинаю уже грузить данные, пока в диалоге крутится прогресс бар. Но как только ставлю списку внутри диалога адаптер, то несмотря на то, что это происходит в отдельном потоке, приложение все равно проседает на пару секунд
Помогите советом
Задержка по любому будет, т.к. данные нужно загрузить с сети. Как вариант можешь заранее данные загрузить и сохранить в бд, но они будут загружаться даже когда диалогом не воспользуются

2
19.03.2017
12:43:43
Я хочу создать программу

Юсуф
19.03.2017
12:43:44
А лучше просто показывай крутилку пока идет загрузка

Artem
19.03.2017
12:43:46

Sasha
19.03.2017
12:43:53
Я про другую задержку, когда кадры скипаются и приложения висит
Когда грузится, у меня бар крутится

Ivan
19.03.2017
12:44:11

Andrey
19.03.2017
12:44:49

Юсуф
19.03.2017
12:44:52

Sasha
19.03.2017
12:44:54
Только показываю диалог и вызываю другой поток, в котором гружу данные и ставлю адаптер
Это все, что в мейне

Nikita
19.03.2017
12:45:10

Google

Nikita
19.03.2017
12:45:23

Artem
19.03.2017
12:45:38

Ivan
19.03.2017
12:46:11

Sasha
19.03.2017
12:46:28
Есть пикчи. Есть способ обойти провисание?

Ivan
19.03.2017
12:46:42

Artem
19.03.2017
12:47:05
да, сжимать как вариант

Sasha
19.03.2017
12:47:35
Элементов в списке будет довольно много, не вариант.
А почему вообще setAdapter в отдельном потоке вызывает проседание главного?

Artem
19.03.2017
12:48:11
если бы ты setAdapter вызывал в другом потоке, то словил бы exception же

Ivan
19.03.2017
12:48:16

Artem
19.03.2017
12:48:29
проверь код, там чет не так походу :D

Sasha
19.03.2017
12:50:46
Чуть конкретней постараюсь описать:
Если не ставить адаптер, то диалог открывается, все ок.
Но если ставить, то несмотря на то, что сначала я открываю пустой, потом гружу данные и ставлю их в список, то диалог откроется ТОЛЬКО после того, как поставлю адаптер.
Вот и не пойму почему так

Artem
19.03.2017
12:53:10
а
так у тебя всё в главном потоке значит выполняется скорее всего

Ivan
19.03.2017
12:53:23


Sasha
19.03.2017
12:57:05
секунду
new Thread(new Runnable() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
repeatDialog.show();
}
});
final ProgressBar bar = (ProgressBar)dialogView.findViewById(R.id.repeat_manage_content_progress);
final ListView list = (ListView)dialogView.findViewById(R.id.repeat_manage_content_list);
final RepeatManageAdapter adapter = new RepeatManageAdapter(AdminGameSettings.this, PictureNames, Pictures);
runOnUiThread(new Runnable() {
@Override
public void run() {
list.setAdapter(adapter);
bar.setVisibility(View.GONE);
}
});
}
}).start();
ну как и говорил, показываю диалог, потом гружу данные и потом ставлю адаптер.
но почему-то подвисает на пару секунд и диалог появлятся с уже готовым списком потом

Dmitriy
19.03.2017
13:01:37
Я думал асинктаски - худшее для активити. Утащил в список "как никогда не писать код" для коллег

Sasha
19.03.2017
13:02:54
Я ж не юзаю AsyncTask

Google

Sasha
19.03.2017
13:02:54
Или я тебя не так понял

Artem
19.03.2017
13:02:55
И почему асинктаски — это худшее?
Это не очень хорошо, но не то, что бы уже худшее))

Dmitriy
19.03.2017
13:05:23

2
19.03.2017
13:06:05
+++

Igor
19.03.2017
13:06:51

Dmitriy
19.03.2017
13:07:43
Для активити - лоадеры/event job

Igor
19.03.2017
13:08:20

Artem
19.03.2017
13:08:25
Не особо там много и уметь надо в принципе. WeakReference как простейшее решение. А так их (решений) вообще десятки

Dmitriy
19.03.2017
13:12:17
Вот сейчас меня позвали на проект, где часть кода на асинктасках, а часть на rx
И здесь в асинктасках встречается такое, что они работают впустую (данные не возвращаются в новое активити)

Sasha
19.03.2017
13:12:58
Взял на заметку, пока руки не доходят с Rx разобраться

Artem
19.03.2017
13:13:24
Ну лично я юзаю rx

Sasha
19.03.2017
13:13:33
Ну а даже если сейчас так

Artem
19.03.2017
13:13:44
Но и в самих асинктасках ничего плохого не вижу

Sasha
19.03.2017
13:13:47
В чем ошибка?..

Dmitriy
19.03.2017
13:16:35

Rublevka
19.03.2017
13:20:31
мы создали отдельные чаты, где сразу баним за Спам. Наши чаты для предпринимателей
?Для Всей России и мира
https://t.me/joinchat/AAAAAEI7BuSBeUaM0E9crw
?Есть для Москвичей отдельный, только МСК https://t.me/joinchat/AAAAAEBrrmyL9cQSoVaMoA

Павел
19.03.2017
13:28:28
Друзья, добрый день! Подскажите, кто использует аспекты ? Интересует какие либы используете и какие минусы (Instant run и так далее) ?

Alexander
19.03.2017
13:29:54
Всем привет. Никто случайно не знает можно ли CustomChomeTabs закрыть программно )) ?

2
19.03.2017
13:58:24
Привет, скорей всего нет

Google

Denis
19.03.2017
14:00:31
Подскажите как можно отключить в гуглплей эту штуку "Другие приложения этого разработчика" что бы не показывало другие мои приложения

Andrew
19.03.2017
14:01:31

Denis
19.03.2017
14:02:18
ну или остальные держать в закрытой бете ?

Gerc
19.03.2017
14:02:36
мультиакк нельзя

Andrew
19.03.2017
14:03:00
мультиакк нельзя
??????? я себе завожу периодически, чтоб покупки на живом бабле потестить

Gerc
19.03.2017
14:03:56

Andrew
19.03.2017
14:04:36
а че на левые данные не завести?

Denis
19.03.2017
14:06:08
А можно легко перенести уже работающее приложение на другой акк ? без потери установок ?

Admin
ERROR: S client not available

Denis
19.03.2017
14:06:21
с тем же сертификатом подписи

Andrew
19.03.2017
14:07:02

Gerc
19.03.2017
14:07:29

Andrew
19.03.2017
14:07:58
пруф?

Denis
19.03.2017
14:09:03

Gerc
19.03.2017
14:09:30
да

Andrew
19.03.2017
14:14:12

Denis
19.03.2017
14:15:03

Andrew
19.03.2017
14:15:44
спасибо
но эт, я всё это время в консоли у себя протупил, не нашел, выгуглил это, но не проверил)

Валерий
19.03.2017
15:08:38
Можно ли временно отключить NetworkOnMainThreadException ?

Google

Igor
19.03.2017
15:09:39

Валерий
19.03.2017
15:11:04
У меня 2 flavor'a - mock и stage. stage работает с АПИ доступ к которому есть только в офисе, mock должен работать везде - подгружает ответы из файлов.
Для мока использую MockWebServer, инициализирую в дагере и там же сразу валится ошибка. Остальная работа c апи уже на не-UI потоке


RoGr
19.03.2017
17:27:56
Ребят, как получить ответ от сайта yandex-переводчик в формате json?
Пока что разобрался в этом
//Сайт с ключем
String urlStr = "https://translate.yandex.net/api/v1.5/tr.json/translate?key=trnsl.1.1.20170319T122948Z.919d93b7d29189ab.e109406e8a8eafd35ee472b80e62c36925abfce7";//Отправили ключ
//Создать объект со ссылкой на переводчик, с ключем
URL urlObj = new URL(urlStr);
//Коннектимся к сайту
HttpsURLConnection connection = (HttpsURLConnection)urlObj.openConnection();//Открыть подключение к сайту
connection.setRequestMethod("POST");//Отпавили POST запрос
connection.setDoOutput(true);
https://tech.yandex.ru/translate/doc/dg/reference/getLangs-docpage/ вот api


Todor
19.03.2017
18:42:44
Можно ли как-то переопределить hotkey cmd+q в маке? Надоело промахиваться, гуглил - https://apple.stackexchange.com/questions/78948/how-to-disable-command-q-for-quit и https://discussions.apple.com/message/31183078#message31183078 не работает (просто не могу перееопредлить, поскольку настройки закрываются)

Artem
19.03.2017
18:44:55
Ребята, такое дело, как загрузить активити в фоне, когда еще SplashScreen отображается?

Vladimir
19.03.2017
18:46:35
Стартуй нужное активити, стартуй в нем Splash, выполняй в первом super.onCreate
Но довольно дикий таск)

Artem
19.03.2017
18:48:10
Тогда другой вопрос
Есть recyclerview
В нем много айтемов, грузится довольно тяжело, пытаюсь ставить прогресбар, анимация бара встает когда он отрисовали
Отрисовывает* с чем может быть связано?

Vladimir
19.03.2017
18:50:25
Если данных много и обрабатываешь их, делай это в фоне, если ui лагает из за длинного recycler делай пагинацию

Artem
19.03.2017
18:50:59
Данные в async крутятся UI встает

Vladimir
19.03.2017
18:52:53
Звучит как дичь, ну что ж давай код будем смотреть

Sergey
19.03.2017
19:00:54

Vladimir
19.03.2017
19:01:36

Sergey
19.03.2017
19:01:51
другой вопрос как берутся данные для RecyclerView

Vladimir
19.03.2017
19:01:55
Кидаешь туда 6000 записей и всё хорошо провисает)

Sergey
19.03.2017
19:02:06