BlackBerry Файловая система - PullRequest
       8

BlackBerry Файловая система

3 голосов
/ 16 августа 2011

Я написал приложение для устройств BlackBerry, которое хранит некоторые файлы во внутренней памяти.Я использую эту строку, чтобы получить соединение с хранилищем

Connector.open("file:///store/BlackBerry/myDir/", Connector.READ_WRITE);

При первом обращении моих приложений к этому хранилищу я проверяю, существуют ли правильные каталоги, и если нет, я создаю их с помощью .mkdir();

Этот процесс отлично работает для меня на двух устройствах (жирный шрифт и факел). Сейчас я пытаюсь запустить это приложение на кривой и не могу создать каталоги для меня.Это дает мне эту ошибку:

"net.rin.device.api.io.file.File.IOException: Ошибка файловой системы (12)"

Используют ли какие-либо устройства что-то кроме "store/ "в пути к их внутреннему хранилищу?Или есть что-то еще, что могло бы отличаться во внутренней памяти устройств Curve, что вызвало бы это исключение из этой строки на этом устройстве, но не на других?

Ответы [ 3 ]

4 голосов
/ 16 августа 2011

Вы должны использовать FileSystemRegistry.listRoots (), чтобы узнать, какие корневые файловые системы доступны. Оба Bold 9000 и Torch 9800 имеют встроенную флэш-память, но IIRC Кривая не имеет. Смотрите также эту ссылку от RIM .

2 голосов
/ 16 августа 2011

Оказывается, что рут (file: /// store /) доступен только для чтения на этом устройстве.Чтобы это заработало, я просто переместился в более глубокий каталог.Я сейчас использую:

"file:///store/home/user/BlackBerry/myDir/"
1 голос
/ 16 августа 2011

Вы уверены, что код вызывает эту ошибку? 12 может показывать, что SQLite не работает должным образом. Проверьте эту ссылку , где какой-то парень получил это от быстрого открытия и закрытия файлов (базы данных). Он также указал, что Curve не поддерживает «SQLite in devicememory».

Еще одна находка Google, не связанная с SQL: Страницы поддержки RIM . Там проблема была в том, что ОБА выходной поток и подключение к файлу нужно было закрыть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...