Александр
двойной кек
Triple Kek. Мне иногда так и говорили на собесах: мы ищем сотрудника, который умеет решать задачи в первую очередь быстро. Что до качества - оно должно быть приемлимым.
Denis
становится страшно
neikist
просто все забивают в итоге
Потому что деньги. Я бы тоже был не прочь пилить для души, но на работе мы пилим для прибыли, и не всегда есть финансовая возможность и возможность по срокам заняться оптимизациями или рефакторингом
Denis
и самый настоящий просер
neikist
если пользователь уйдет к конкурентам, так как у них меньше размер apk, меньше лагов, плавнее ui, то это потеря прибыли
Это если у конкурентов функционал такой же в остальном. И если эти конкуренты вообще есть
neikist
И если мобилка единственное различие
Anton
Вопрос в основном к маководам. У меня в последнее время в эмуляторе через какое-то время стал пропадать интернет. И как не танцевал с бубном вернуть получается только если сделать   wipe data у виртуального девайса через  avd manager. Может кто-то подсказать с чем это связано и как с этим боротся ? Отмечу все это на маке
Denis
Чёт вот конкурентов таких не находится)
зато если найдется, то будут большие шансы на успех)
Mike
зато если найдется, то будут большие шансы на успех)
Если есть миллионы на маркетинг, то да)
Dmitrii
вот как это выглядит
Парни, подскажет кто по этой проблеме?
Сергій
Парни, подскажет кто по этой проблеме?
почему бы не закрыть клавиатуру перед тем как стартовать новую активити?
SerJanna
Парни, подскажет кто по этой проблеме?
Не пробовал скрывать клаву после нажатияи Войти?
Александр
Парни, подскажет кто по этой проблеме?
fun EditText.closeKeyboard() { clearFocus() (context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager).hideSoftInputFromWindow( windowToken, 0 ) }
Eric
Сначала спятать клаву, потом чистить фокус
Dmitrii
вчера же писал тебе что закрывай клавиатуру
Так я пробовал, но блин, я в новой Активити это делал, сейчас попробую перед открытием.
Сергій
и чистить фокус не обязательно
Александр
Так я пробовал, но блин, я в новой Активити это делал, сейчас попробую перед открытием.
зайчем в новой, ты делай это когда нажимаешь на кнопку войти
Александр
Сергій
лишним не будет
лишним от чего?)
Сергій
если старая активити закрывается, я надеюсь
Александр
лишним от чего?)
лишним для того чтобы решить ег опроблему
A
всем добрый день! наверняка вы это знаете, а я уже лоб расшиб в попытках понять ) приложение с картой гугл не хочет мое местоположение помещать в центр карты, если меняются координаты. пробовал сейчас что-то вот такое, координаты новые вижу, точка на карте движется, но карта за ней не центрируется @Override public void onCameraMove() { LatLng latLng = mMap.getCameraPosition().target; getMap().moveCamera(CameraUpdateFactory.newLatLng(latLng)); Toast.makeText(this, "The camera is moving."+latLng, Toast.LENGTH_SHORT).show(); }
Evgeniy
Denis
А вот дополнительный вопрос: откуда брать эти знания ?
Собственный опыт, книги, конференции, митапы, статьи
Denis
все стандартно
Eric
Что такое "пет-проект"?
Eric
Собственный опыт, книги, конференции, митапы, статьи
Опыт в основном, пока сам по граблям не потопчешся, ничему не наушишся :)
Eric
спасиб
Artem
Всем привет! Вопрос по оптимизации запроса sqlite. Есть Select с несколькими left join. Один из джоинов выбирает данные из таблицы в которой 25к+ записей. Соответственно выборка такая занимает ~400 милисекунд (пробовал без этого джойна - было где-то 0.01 секунды). Так вот можно ли как-то отптимизировать запрос, чтобы Select выполнялся быстрее? Индексы на колонку в большой таблице я поставил - о общем дало прирост на 40%, но этого пока не достаточно, так как запросов много (около 200 штук в загрузке) и по времени с индексами эта занимается 30-40 сек. Спасибо
Eric
Такое обычно виртуальные таблицы ускоряют. Но не уверен что кастрированный мобильный sqlite это умеет.
Nikita
Такое обычно виртуальные таблицы ускоряют. Но не уверен что кастрированный мобильный sqlite это умеет.
Че эт он кастрированный. Нормальный там обычный sqlite. Ток в зависимости от версии Android разные версии sqlite используются.
Andrew
Может запрос покажете?)
Andrew
А то как оптимизировать то что не видишь)
Сергей
https://www.google.com/search?q=sqlite+in+memory
Сергей
Если размер базы позволяет. Оно конечно на телефоне база и так может быть на 100% закеширована в оперативку, но мало ли.
Artem
Может запрос покажете?)
SELECT p.id, p.name, p.barcode, p.product_code as product_code, sp.subgroup_code, pp.plu, pi.image_path FROM table_1 p LEFT JOIN table_2 sp ON p.id = sp.param_id LEFT JOIN table_3 stn ON stn.subnetwork_id = 0 LEFT JOIN table_4 pp ON pp.network_id = stn.network_id AND pp.param_id = p.id LEFT JOIN table_5 pi ON p.image_link = pi.image_link WHERE p.id IN (%s) ORDER BY p.param_order
Andrew
А индексы по каким полям?
Almas
instance.add(Calendar.DAY_OF_YEAR, calcOffsetDays(instance,1)) private fun calcOffsetDays(instance:Calendar,value:Int) :Int { val calendar = instance почему все таки значение instance изменяется,хоть я его и переопределяю?да знаю скорее нубский вопрос,но все же удивило.
Vladimir
Artem
А индексы по каким полям?
по всем, что есть в этом запросе
Vladimir
Почему в многозадачности эта картинка вместо моей иконки ?
Andrew
по всем, что есть в этом запросе
Вы как то странно джойните table_3
Andrew
Она и содержит много записей, так?
Artem
нет, table_2 содержит много записей
Artem
ну и table_1 тоже ~25к
Artem
в третей таблице 24 записи
Artem
Праздный интерес: зачем left join, почему вообще существуют ситуации, когда join не inner? :)
ну да, там можно заменить некоторые left join на join - это как-то влияет на производительность?
Nikita
Праздный интерес: зачем left join, почему вообще существуют ситуации, когда join не inner? :)
бывают ситуации, когда от наличия левой или правой части джойна зависит, нужно ли возвращать запись вообще
Artem
ок, спасибо я попробую
Andrew
А EXPLAIN можете показать? Ну план запроса
Andrew
ок, спасибо я попробую
Погодите, покажите план запроса
Artem
А EXPLAIN можете показать? Ну план запроса
типа как отрабатывает запрос?
Mike
типа как отрабатывает запрос?
типа есть ключевое слово EXPLAIN
Artem
типа есть ключевое слово EXPLAIN
Не знал такого, сейчас разберусь - скину. Спасибо
Andrew
И не создавайте индексы по всем полям, у вас база на update и вставках просядет по io.
Artem
замена left join на join существенно помогла - общая загрузка была 47 сек, теперь 12
Andrew
Иннер джойн исключает строки которые не подошли по условию ON
Artem
да, уже проверил
Almas
Что значит «переопределяю»?
я создаю новую переменную и сразу присвоил ей значение переменной из параметров функции,но при всем при этом ,изменение переменной calendar,влияют и на переменную которая вызывает функцию,очевидно идет переброс ссылки,я не давно открыл kotlin и тут явно где-то нарушил соглашение языка.
Andrew
12 сек для 25К строк это ужасно долго...
Andrew
За милисекунды должен отдавать тем более у вас условие по id in ()
Artem
12 сек для 25К строк это ужасно долго...
нет, это общая загрузка формы - там еще очень много всего грузится и этот запрос выполняется пордяка 200 раз