0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59

Работа с файлом данных в внутренней памяти

07.05.2014, 18:24. Показов 1054. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вопрос - если я создам ПРИЛОЖЕНИЕМ файл в внутренней памяти (например - file.data), смогу ли я потом найти его сервисом ЭТОГО приложения только по имени (без всяких путей)? Т.е. пишется ли файл ПОСТОЯННО в одно и тоже место для приложения. Вообщем, нужно в маленьком файлике хранить данные и настройки для приложения и сервиса ЭТОГО приложения, который постоянно крутится в памяти и периодически смотрит в этот файл. Может быть есть более грамотные способы реализации этой задачи ?

Всем заранее спасибо за ответы.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.05.2014, 18:24
Ответы с готовыми решениями:

Не воспроизводятся звуки с внутренней памяти
Эксцепшин: "prepare failed. status=0x1" Пермишины есть, картинки с той же внутренней памяти отображаются, и на телефоне звуки работают, а...

Как программно обратиться к внутренней памяти устройства
Здравствуйте, подскажите пожалуйста, имеется планшет Samsung Galaxy Tab 4 с ОС Android 5.0.2. Подключаю планшет через usb к ПК с Windows 7,...

Чтение ассоциированного .txt файла с внутренней памяти по URI
Добрый день. Необходимо в программе прочитать ассоциированный текстовый файл .txt из внутренней памяти по URI. Долго искал ответ на этот...

7
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
07.05.2014, 18:28
Preferences
0
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
07.05.2014, 18:58  [ТС]
Файл будет меняться сервисом с инета. Будет разное количество данных в полях и т.д. Возможно ???
0
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
07.05.2014, 19:57
Ну, ёпрст! там-же - работа с файлами
Но как файл будет меняться сервисом, если приложение будет постоянно запрашивать из него данные?
Сервис - это другой поток. Приложение будет регулярно падать из-за конфликта блокировок.

А вообще - качаем файл и все.
Ставим в приложении таймер и каждые сколько-то там минут/секунд и прочее - проверяем, не изменился ли файл в сети. И если изменился - приостанавливаем работу приложения, скачиваем файл, восстанавливаем работу. Никаких сервисов.

Либо все данные запрашивать именно У СЕРВИСА. Т.е. и создавать файл, если надо, и скачивать, и читать его не приложением, как таковым, а именно сервисом по запросу приложения.
Но тогда изначальный вопрос опять-же отпадает, потому что абсолютно пофигу, где там сервис его создаст - искать его из приложение просто НЕЛЬЗЯ.

В общем, неправильно что-то у вас с архитектурой спланировано.
0
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
07.05.2014, 20:29  [ТС]
Ситуация такая, действительно плохо обрисовал, - приложение, при открытии проверяет запущен ли сервис, если нет - запускает, который раз в 6-12 часов скачивает файл (10-50 кб) на смарт и выдает нотификацию что есть обновление в статус бар. Пользователь открывает приложение через нотификацию и приложение при открытии подгружает эти данные один раз при загрузке. Т.е. вероятность блокировки минимальна, хотя и возможна. Так вот, как граммотно сделать что-бы и сервис и приложение имели доступ к одним данным ? Или преференс или отдельный файл. Преференс предпочтительно, но будет ли он иметь доступ, когда приложение закрыто ?
0
 Аватар для YuraAAA
1605 / 1337 / 291
Регистрация: 25.10.2009
Сообщений: 3,487
Записей в блоге: 2
07.05.2014, 21:04
alexvinn,
Цитата Сообщение от alexvinn Посмотреть сообщение
Преференс предпочтительно, но будет ли он иметь доступ, когда приложение закрыто
будет. Так как у сервиса и самого приложения один и тот же контекст - Application.

Это такой же файл. Просто доступ к нему синхронизирован.
Цитата Сообщение от Patch Посмотреть сообщение
Приложение будет регулярно падать из-за конфликта блокировок.
Если руки из плеч растут, то ничего не будет. Синхронизация доступа не просто так ведь существует

P.S. да скачивайте Вы этот файл и кидайте его в кэш-директорию, в чём проблема, зачем Вам preferences.
1
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
07.05.2014, 21:06
Я так и не понял, ЗАЧЕМ делать то, что заведомо может непредсказуемо падать?

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

Ну, если так хочется сделать через жопу, но чтоб точно работало - почитайте, как решается та-же проблема при работе с SQLite. Android. Особенности работы с SQLite

Если руки из плеч растут, то ничего не будет. Синхронизация доступа не просто так ведь существует
О чем и речь. Если руки растут из плеч такой вопрос не возникает вообще.
1
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 59
07.05.2014, 21:18  [ТС]
YuraAAA, Patch - Спасибо. +1.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.05.2014, 21:18
Помогаю со студенческими работами здесь

Найти адрес ячейки внутренней памяти данных путем деления числа 3С на 2
Найти адрес ячейки внутренней памяти данных путем деления числа 3С(в 16ричной системе счисления) на 2. В эту ячейку записать результат...

Запись и чтение данных из внутренней флэш памяти винчестера, или получение ID винта
Доброго времени суток! Господа, есть у меня очень интересный вопрос, который очень хотелось бы решить. Суть вопроса в следующем: в каждом...

В ячейку внутренней памяти данных загрузить число десятичных единиц результата сложения
Возможно кто-нибудь в состоянии помочь написать данную программу? Загрузить регистр R17 числом 023h. Найти сумму R17+SREG. В ячейку ...

Указатели, динамическое выделение памяти, работа с файлом
Программа должна предоставлять возможность нескольким пользователям работать с числовыми данными. Сведения о пользователях должны храниться...

В ячейки внутренней памяти данных 128h, 129h, 12ah занести число сотен, десятков, единиц числа 080h
Добрый день. Есть такое задание: В ячейки внутренней памяти данных 128h, 129h, 12ah занести число сотен, десятков, единиц числа 080h. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Непрерывная интеграция для пакета Python
Mr. Docker 22.06.2025
Было 4 часа утра пятницы, когда я выпустил новую версию нашей внутренней библиотеки для обработки данных. Релиз 0. 5. 2 содержал небольшой фикс для обработки дат в ISO формате, что может пойти не так?. . .
Продвинутый ETL на C# из OLTP БД в хранилище
stackOverflow 22.06.2025
Работая в сфере корпоративной аналитики, я постоянно сталкиваюсь с одним и тем же - нужны чистые, структурированные и, главное, свежие данные. Без них современные аналитические системы, машинное. . .
Мастер-класс по микросервисам на Node.js
Reangularity 21.06.2025
Node. js стал одной из самых популярных платформ для микросервисной архитектуры не случайно. Его неблокирующая однопоточная модель и событийно-ориентированный подход делают его идеальным для. . .
Управление Arduino из WPF приложения
Wired 21.06.2025
Зачем вообще связывать Arduino с WPF-приложением? Казалось бы, у Arduino есть собственная среда разработки, своя экосистема, свои способы управления. Однако при создании серьезных проектов. . .
Звёздная пыль
kumehtar 20.06.2025
Я просто это себе представляю: как создавался этот мир. Как энергия слипалась в маленькие частички. Как они собирались в первые звёзды, как во вселенной впервые появился Свет. Как эти звёзды. . .
Создание нейросети с PyTorch
AI_Generated 19.06.2025
Ключевое преимущество PyTorch — его питоновская натура. В отличие от TensorFlow, который изначально был построен как статический вычислительный граф, PyTorch предлагает динамический подход. Это. . .
JWT аутентификация в ASP.NET Core
UnmanagedCoder 18.06.2025
Разрабатывая веб-приложения, я постоянно сталкиваюсь с дилеммой: как обеспечить надежную аутентификацию пользователей без ущерба для производительности и масштабируемости? Классические подходы на. . .
Краткий курс по С#
aaLeXAA 18.06.2025
Здесь вы найдете все необходимые функции чтоб написать програму на C# Задание 1: КЛАСС FORM 1 public partial class Form1 : Form { Spisok listin = new Spisok(); . . .
50 самых полезных примеров кода Python для частых задач
py-thonny 17.06.2025
Эффективность работы разработчика часто измеряется не количеством написаных строк, а скоростью решения задач. Готовые сниппеты значительно ускоряют разработку, помогают избежать типичных ошибок и. . .
C# и продвинутые приемы работы с БД
stackOverflow 17.06.2025
Каждый . NET разработчик рано или поздно сталкивается с ситуацией, когда привычные методы работы с базами данных превращаются в источник бессонных ночей. Я сам неоднократно попадал в такие ситуации,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru