@android_ru

Страница 548 из 3205
Andre
15.11.2016
16:35:07
Тоже вариант, если есть время разобраться

Vova
15.11.2016
16:48:34
Всем привет, меня тут спросили и я не знаю что ответить "Скажи, пожалуйста, можно как-то посмотреть какие действия выполняются на Gmail и с какого устройства?"

Google
Vova
15.11.2016
16:49:07
К почте есть доступ у 20+ человек

Sergey
15.11.2016
17:00:51
ребят, вот еще какой вопрос. у меня есть туева хуча битмапов. мне их нужно передать из активити в активити. понятное дело, по интенту не передадим больше 1мб данных. как лучше поступить в такой ситуации? записать файлы на диск? а есть вариант получше?

Andre
15.11.2016
17:01:43
Самый тупой пример: для всяких аватарок и превьюшек битмапы хранят в LruCache - я его, например, выношу в синглтон. Глайды и прочие Пикассо делают примерно так же.

Sergey
15.11.2016
17:03:55
это самое эффективное решение? интересно вот стало как решить задачу за минимально возможное время

Andre
15.11.2016
17:04:38
это самое эффективное решение? интересно вот стало как решить задачу за минимально возможное время
У тебя есть другие варианты как передать кучу объектов, кроме как "засунуть их в оперативную память, участок которой будет виден всем"?

Sergey
15.11.2016
17:05:37
оперативная память конечна

я в основном работаю с китайскими телефонами, где 1 гб - максимум

70-80% оперативки занято

Ⓜ️ᵃʳᵃᵗ
15.11.2016
17:07:26
я бы в кеш выбросил ввидей файлов

Andre
15.11.2016
17:07:50
я в основном работаю с китайскими телефонами, где 1 гб - максимум
Если у тебя огромные файлы - тогда лучше диска для тебя ничего нету

Sergey
15.11.2016
17:08:10
окей, спасибо большое, тогда так и сделаю

Andre
15.11.2016
17:22:21
Блин, зашел на developer.android.com/training/articles/perf-tips.html и там пишут типа use enchanced for loop syntax. Видео еще не смотрел.
Сеттеры и геттеры действительно настолько сильно влияют на производительность? Придётся приучиться в джаве использовать public-поля по возможности :(

Google
Ⓜ️ᵃʳᵃᵗ
15.11.2016
17:22:52
хмм, а я давно их по alt + enter слздаю.

Timur
15.11.2016
17:23:43
Andre
15.11.2016
17:24:19
Гугл говорит, что внутри класса использовать прямое обращение, а не через геттера-сеттеры.
Не, ну внутри-то понятно, но вот снаружи это тоже наверное на перфоманс влияние оказывает?

Timur
15.11.2016
17:24:20
Ой.

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

Ну не настолько же всё плохо.

Ⓜ️ᵃʳᵃᵗ
15.11.2016
17:26:43
это влияет , если ты в геймдев пойдешь и за кадр тебе несколько раз нужно будет дернуть

Максим
15.11.2016
17:43:15
Привет

Что это?

Eugene
15.11.2016
17:47:41
Что это?
Скорее всего, надо деактивировать предыдущую версию

Andre
15.11.2016
17:49:11
А ты какую версию в манифесте, тьфу, в билд.грэдл указал?

Alex
15.11.2016
17:51:23
Воу

Про сеттеры интересно

Eugene
15.11.2016
17:59:26
Я на 100% не уверен, но по-моему, если две версии приложения полностью совпадают с точки зрения требований к железу/разрешениям/версиям API - то гуглплей заставляет отключать более старую перед публикацией новой

Т.е. смысл держать опубликованной версию 1.0, если все равно 100% пользователей увидят версию 1.1

Dmitriy
15.11.2016
18:01:04
а если нужно 2 разных версии поддерживать, API 16 и API 19, плей умеет их раздавать или нужно отдельно загружать? (два разных приложения заводить)

Eugene
15.11.2016
18:02:14
Насчет версий API я не уверен, может и фигню сморозил(

Google
Eugene
15.11.2016
18:03:32
Щас вот глянул, у нас у одного приложения опубликованы одновременно аж 4 версии приложения)

Andre
15.11.2016
18:03:39
В таком случае, правда, маркет лихорадит немножко и он показывает в поле "Версия Android" значение "Зависит от устройства"

Eugene
15.11.2016
18:04:17
Одна под API 5-7, две под 8+ (отличаются только набором требуемых функций и разрешений) и одна (ныне разрабатываемая) 15+

Максим
15.11.2016
18:04:42
Dmitriy
15.11.2016
18:04:52
Да, умеет
два флавора делать? загружать подряд обе с разными version code ?

Andre
15.11.2016
18:05:50
два флавора делать? загружать подряд обе с разными version code ?
Это лучше спросить у тех, кто такое делал - но мне кажется, что апк там независимые

Eugene
15.11.2016
18:06:31
Странно, столько раз публиковал приложения и не замечал)
Ну вообще все логично) Вот допустим в приложении не изменился API level, но добавилась работа с геолокацией) Логично опубликовать новую версию, но и оставить старую для тех, у кого внезапно нет GPS)

Dmitriy
15.11.2016
18:06:51
А поделитесь докой, если кто такое делал. Я что-то в самом интерфейсе консоли не нашел.

Eugene
15.11.2016
18:07:29
Т.е. вы параллельно пилите новые версии и для 16, и для 19?

Dmitriy
15.11.2016
18:09:03
А поддерживать = прям разрабатывать и выпускать новые версии?
угу, правда это в основном какие-то фиксы, не зависящие от функционала, требующего более новых версий апи

Eugene
15.11.2016
18:09:47
По-моему, в таких случаях нет никаких тонкостей, все равно все само разрулится на уровне совместимости девайсов

Но уникальность кода версии надо, конечно, поддерживать

Поэтому, тут версионирование по принципу "код версии 1, название версии 1.0", "код версии 2, название версии 1.1" уже не пойдет

Точнее, заработает, но будет хаос :)

Dmitriy
15.11.2016
18:11:12
хм, ок

Eugene
15.11.2016
18:11:42
Мы используем названия версий по такому шаблону: 2.3.1

Соответственно, код для такой версии будет выглядеть как-то так: 2030199

99 - условно, номер билда)

Google
Andre
15.11.2016
18:12:55
а как считают номер сборки?

Eugene
15.11.2016
18:12:55
Позволяет, собственно, гарантировать уникальность версий и выпускать апдейты для старых версий

Andre
15.11.2016
18:13:21
Учитывая, что я могу билдить что-то каждые 5 минут, использовать я это не особо собираюсь, но узнать интересно :)

Eugene
15.11.2016
18:14:05
Тут не совсем-то) в последних цифрах обычно у нас номер сборки, которую мы выкатили в тестирование

Т.е. в гуглплее у нас, например, версия 2.2.0

Соответственно, первый раз, когда мы собрали сборку с новой минорной функциональностью, залили ее в Fabric и тестеры уже могут ее оттуда вытягивать, они увидят как номер версии что-то в духе "2.2.1.rc1"

А код этой версии будет 2020101

Admin
ERROR: S client not available

Eugene
15.11.2016
18:17:06
Тестеры, допустим нашли баги, мы их пофиксили, плюс доделали че-нибудь еще - выкатываем очередную версию в тестирование - 2.2.1.rc2, код 2020102

И так далее, пока не катим релиз. В релизе уже фиксируем номер версии последнего релиз-кандидата, но это уже непринципиально :) Гуглплею уже пофиг на последние цифры, т.к исходя из нашего процесса, у нас туда никогда не должны попасть две версии с одинаковыми первыми тремя цифрами)

Естественно, если нет тестеров, то можно ограничиться 2-3 цифрами и этого хватит за глаза

Boris
15.11.2016
18:22:00
А есть схема при которой после наведения камеры на чек, в базу будут заноситься данные с него?

Максим
15.11.2016
18:39:17
Естественно, если нет тестеров, то можно ограничиться 2-3 цифрами и этого хватит за глаза
Вы версии через Fabric распространяете? Мне просто он не очень понравился (не функционал, а внешний вид). Я вообще не занимался публикацией альфа/бета версий. Какие плюсы у системы тестирования фабрик по сравнению с гугл плей?

Максим
15.11.2016
18:40:40
Только тестовые сборки
Да, я о тестовых. Видимо, не заметил когда писал текст

Eugene
15.11.2016
18:40:49
А вот почему именно он - затрудняюсь сказать, так еще до меня было)

Максим
15.11.2016
18:43:14
А вот почему именно он - затрудняюсь сказать, так еще до меня было)
А как именно у вас проходит коммуникация между тестерами и разрабами? Если можно поподробнее)

Andre
15.11.2016
18:47:14
Вроде у фабрика какая-то подсистема для фидбэка есть А самое простое - это когда тестер отписывает разработчику в телеграм или куда-то ещё, что у него не так и как он это делал

Google
balolam
15.11.2016
18:49:06
Народ, заметил странную штуку, у меня при первом открытии экранов (фрагментов в табах) они как буд-то подлагивают. Systrace показал подвисание на 1 сек, там нет ничего такого, нет графики почти, никаких зависимосте, может кто знает где искать проблему?

Причем все последующие открытия - моментальные

Т.е. так единоразово

Eugene
15.11.2016
18:50:17
А как именно у вас проходит коммуникация между тестерами и разрабами? Если можно поподробнее)
Да все просто) Просто приходят и говорят) Либо отписываются в канал в Slack)

Но в конечном итоге все равно все заканчивается таской в JIRA

Ну и чтоб никого не путать - мы Fabric юзаем для сбора крэшей (Crashlytics), но тут тестеры ни при чем, крэши разработчики чаще всего смотрят сами. А для тестеров мы юзаем Beta (тоже штука в составе Fabric), которая позволяет тестерам быстро получать новые тестовые сборки.

Т.е. Fabric непосредственно для поиска ошибок у нас тестеры не юзают

Alexey
15.11.2016
19:16:30
widget_player не пустой

Ⓜ️ᵃʳᵃᵗ
15.11.2016
19:16:38
0 поменяй на ченить другое 231231 например, прокатит ?

Иван
15.11.2016
19:20:47
не прокатило(
А в чем проблема?

Ты знаешь что, ради эксперимента задай свой ремоут вью напрямую в поле объекта нотификации

Я как то раз тоже проблем наелся с этим всем

Ivan
15.11.2016
19:30:52
Notification notificationBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.drawable.ic) .setContentTitle("text") .setTicker("text") .setContentText("text") .build();

Попробуй без контента

если сработает копай свой layout

Alexey
15.11.2016
19:36:12
да, так работает, спасибо)

Страница 548 из 3205