@android_ru

Страница 671 из 3205
Pavel
14.12.2016
11:44:55
да. В манифесте разрешения на чтение и запись

Alexander
14.12.2016
11:45:10
так нужно же сохранить что-то, а onPause должен отрабатывать быстро
На самом деле, делать "дорогое" сохранение при убивании активтит всё равно плохо. Сервисы/поток/асинктаск/... помимо успешного выполнения может выкинуть и ошибку, которую никто уже не обработает, и система буедт думать что данные успешно сохранились.

Pavel
14.12.2016
11:45:16
READ_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE

Daniil
14.12.2016
11:45:18
да. В манифесте разрешения на чтение и запись
если версия дройда больше 6 ты еще в рантайме должен запросить

Google
Alexander
14.12.2016
11:46:07
В идеале сохранение кэша надо делать в момент его изменения, до возврата пользователю управления, а не после закрытия экрана

Pavel
14.12.2016
11:46:25
@matrixd да ладно. Каждый раз при чтении/записи папки моего приложения я должен просить разрешение? Или это только для корня?

Dmitriy
14.12.2016
11:46:26
если версия дройда больше 6 ты еще в рантайме должен запросить
дополнительно для "STORAGE" после получения лучше ещё инициировать рестарт

Sergey
14.12.2016
11:47:15
почитай о Runtime Permissions

Pavel
14.12.2016
11:48:04
Хорошо, спасибо)

Daniil
14.12.2016
11:49:28
READ_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE
Manifest.permission.READ_EXTERNAL_STORAGE это вот то что ты должен запросить в рантайме

Sergey
14.12.2016
11:50:43
вот так из pojo json модели(все поля как String) получать значения норм? int foo = Integer.parseInt("1234");

Pavel
14.12.2016
11:50:57
@matrixd благодарю)

А может есть кто, кто с tar.gz работал? Создал я тестовый проект, попарился, но распаковать архив у меня получилось. получаю нормальный поток через new TarArchiveInputStream(new GzipCompressorInputStream(in)); new GzipCompressorInputStream(in) говорит что это не gz файл. В чём я не согласен. in приходит нормально...

Alexander
14.12.2016
11:55:15
вот так из pojo json модели(все поля как String) получать значения норм? int foo = Integer.parseInt("1234");
добавь безопасности при парсинге int foo = Integer.parseInt("1234", defaultValue); или try { int foo = Integer.parseInt("1234"); } catch () { }

Quantum Harmonizer
14.12.2016
11:58:14
Но всякие крашлитики без посторонних процессов работают. Видимо, не часто процесс умирает
Так их задача –– не смерть активити поймать, а смерть потока, что они успешно и делают.

Google
Quantum Harmonizer
14.12.2016
11:59:07
так вроде нет, .tar.gz –– это тар, сжатый гзипом.

Quantum Harmonizer
14.12.2016
12:00:07
дополнительно для "STORAGE" после получения лучше ещё инициировать рестарт
Есть другие разрешения, которые требуют рестарта процесса, или только STORAGE? (мы с тобой ещё смеялись над `System.exit(0)`)

Quantum Harmonizer
14.12.2016
12:01:07
Dmitriy
14.12.2016
12:01:33
Вот про сохранение данных интересная тема)

Сейчас запустил задачу из активити в новом потоке и она крутится и без активити

Aliaksandr
14.12.2016
12:03:09
Приложение в недавних тоже убрано?

Pavel
14.12.2016
12:03:17
@serbinigor спасибо, попробую)

Dmitriy
14.12.2016
12:03:51
После того как убираешь из последних уже жить не будет)

Когда последние чистишь то их процессы умирают

Pavel
14.12.2016
12:09:48
@serbinigor он не работает с потоками, кажется. Т.е. я не могу пихнуть ему InputStream.

Igor
14.12.2016
12:10:04
читай доки на гх

Roman
14.12.2016
12:14:16
Для чего нужен SparseArray? Какой кейс использования?

Anton
14.12.2016
12:14:58
написано же в доках

Pavel
14.12.2016
12:15:29
@serbinigor можешь как-то точнее указать? в readme на gh я не вижу что бы он мог что-то подобное. По самой либе тоже ничего такого не вижу(

Sergey
14.12.2016
12:16:07
Для чего нужен SparseArray? Какой кейс использования?
https://www.youtube.com/watch?v=I16lz26WyzQ&index=30&list=PLWz5rJ2EKKc9CBxr3BVjPTPoDPLdPIFCE

Roman
14.12.2016
12:18:03
Спасибо

Alexey
14.12.2016
12:23:18
пипец твоей зарядке

Google
Dmitriy
14.12.2016
12:27:21
Но ведь если сервис запускать и в нем поток то мрет и то и то при очистке последних открытых

Alexander
14.12.2016
12:28:16
Александр, Здравствуйте

Sergey
14.12.2016
12:30:54
только если не касается оптимизации потребления

                                                                        
14.12.2016
12:31:04
а проги типа BatteryCalibration (соре, но неукого спросить было)

Dmitriy
14.12.2016
12:46:02
Ну так поделитесь кто как пишет в БД?) При ситуации когда юзер что то жамкнул и тут же завершил приложушку

Dmitriy
14.12.2016
12:48:58
Я использую для этого Rx, но интересует именно сохранность данных и гарантированная запись в бд при ситуации(выбрал что то и тут же вышел из программы)

сервис мрет, поток мрет

если чистить последние

Quantum Harmonizer
14.12.2016
12:50:05
Так пока откроешь последние, пройдёт не менее 300 мс.

Нормальная вставка, которая длится более 100 мс, должна вызывать большие вопросы.

Dmitriy
14.12.2016
12:50:38
ну я вот понимаю) А клиент не очень)

Dmitriy
14.12.2016
12:51:33
специально записываю не все данные а только позицию дабы было меньше затрат на запись

Admin
ERROR: S client not available

Quantum Harmonizer
14.12.2016
12:52:34
Это что-то типа позиции скролла?)

Dmitriy
14.12.2016
12:53:09
Последнюю выбранную грубо говоря.

На ум приходит пока только одно

Quantum Harmonizer
14.12.2016
12:53:38
Я, допустим, прямо в onPause синхронно записываю ид открытого фрагмента в префы. Бесстрашный)

Dmitriy
14.12.2016
12:53:45
Это сервис перезапускаемый с интентом и при завершении задачи завершать сам сервис

Quantum Harmonizer
14.12.2016
12:54:30
Перезапускаемый == STICKY?

Google
Dmitriy
14.12.2016
12:54:32
Получается последние открытие почистили, сервис перезапустится и потом сам себя закрыть должен

START_REDELIVER_INTENT

Quantum Harmonizer
14.12.2016
12:54:48
Аа, ок

Dmitriy
14.12.2016
12:54:58
но не уверен что все получится))))

Ща тестану)

Хм... Работает)

если не очистили последние то отработает и после очистки не перезапускается

если очистить тут же то перезапускается и отрабатывает

Quantum Harmonizer
14.12.2016
13:13:23
Можно чучуть кода? Интересно стало)

Max
14.12.2016
13:14:48
Кто нибудь знает какой плеер использовать, чтобы при скроллинге seek bar, в реальном времени отображались изменения на кране, при чем чаще чем посекундно. Не знаю даже как объяснить. Я сейчас на exoplayer реализовать, с вненшним сик баром, но на превью размазанное видео появляется при сильном движении

Dmitriy
14.12.2016
13:15:27
Можно чучуть кода? Интересно стало)
Блин кода то и нет практически. При дестрой активити я стартую сервис, внутри сервиса стартую новый Rx поток и в нем делаю запись. когда поток завершается то завершаю сервис

Глеб
14.12.2016
13:15:38
Господа, вопрос по поддержке стремного индусского кода. В проекте используется androidannotations - насколько оно живо и оправдано в нынешних реалиях? Не имел ещё дела с этой библиотекой. Велико желание проигнорировать её наличие и писать новый код без неё, но малоли это полезный инструмент.

Dmitriy
14.12.2016
13:16:45
А если активити прибивается без дестроя, например, при нехватке памяти?
ну вот тут нужно предусмотреть просто где стартовать сервис

Max
14.12.2016
13:16:47
Увы, ограничения IO.
Жаль :( Спасибо

Dmitriy
14.12.2016
13:17:00
Задача стояла именно если мы жамкнули и тут же вышли

Quantum Harmonizer
14.12.2016
13:17:11
Жаль :( Спасибо
А может я гоню и это возможно)

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