Где лучше всего сохранить на мобильном устройстве Android с помощью AIR и как? Я пытаюсь выяснить, где я могу сохранить свой файл. Я создаю приложение MEMO, в котором пользователь может сохранить свой файл, мой вопрос: где лучшее место в Android Mobile, чтобы сохранить?
Где лучше всего сохранить на мобильном устройстве Android с помощью AIR и как
comment
Вам следует поискать аналог Shared Preferences или работу с базами данных в AIR
- person Joaquin Iurchuk   schedule 15.04.2015
comment
Я уже дал ответ, но я думаю, что неясно, что вы на самом деле пытаетесь сделать. Вы пытаетесь сохранить данные, которые используются вашим приложением внутри, или файл, который пользователь ожидает использовать вне вашего приложения?
- person Aaron Beall   schedule 15.04.2015
Ответы (1)
Именно для этого предназначен File.applicationStorageDirectory
.
Вы можете сохранить любые данные в файл (XML, JSON, AMF, базу данных sqlite) и сохранить асинхронно, чтобы избежать зависаний пользовательского интерфейса.
Пример сохранения строковых данных (таких как сериализованный XML или JSON):
function save(data:String):void {
var file:File = File.applicationStorageDirectory.resolvePath("preferences.data");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE); // or openAsync()
fileStream.writeUTFBytes(data);
fileStream.close();
}
function load():String {
var file:File = File.applicationStorageDirectory.resolvePath("preferences.data");
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.READ);
var data:String = fileStream.readUTFBytes(fileStream.bytesAvailable);
fileStream.close();
return data;
}
person
Aaron Beall
schedule
15.04.2015
получил 2 вопроса Аарон. 1. Как создать папку и положить в нее сохраненный файл. 2. При попытке загрузить мой файл мое устройство Android говорит: «Файлы не найдены» (я использовалbrowForOpen)
- person Darvlaskie; 15.04.2015
1. Вы можете использовать
File/createDirectory()
, но я не уверен, что вы пытаетесь сделать, 2. есть ли файлы в каталоге, который вы просматриваете? applicationStorageDirectory
специфичен для вашего приложения, это не каталог, в котором у пользователя обычно есть какие-либо файлы. Вы можете попробовать что-то вроде File.documentsDirectory
. Подробнее о расположении файлов Android.
- person Aaron Beall; 15.04.2015
Где асинхронная часть? @Darvlaskie - я не уверен, что еще вы ожидаете получить здесь, чего не было в вашем первом вопросе ...
- person BadFeelingAboutThis; 15.04.2015
В моем примере не используется
openAsync()
, но использование этой функции на File
является единственным отличием для записи, а для чтения вы ждете Event.COMPLETE
на FileStream
перед чтением данных.
- person Aaron Beall; 15.04.2015
PO не знает, как кодировать, и ему нужен бесплатный образец кода, делающий именно то, что он хочет, поэтому не думайте, что он сможет изменить ваш код, он этого не сделает. Лично я всегда игнорирую эти вопросы, поскольку здесь рекомендуется именно такой подход. Его следующий вопрос будет о том, как загрузить сохраненный файл на Android.
- person BotMaster; 15.04.2015
Привет, БотМастер. во-первых, я уже решил свою проблему. Во-вторых, зачем вы здесь, если не хотите помогать тем, кто менее опытен, чем вы? Какой смысл входить в систему, если вы не собираетесь помогать таким людям, как я? Наконец, LDMS и Аарон решили помочь мне, и я благодарен за это. Я не заставляю вас помогать мне. ЕСЛИ вы считаете, что мои вопросы слишком глупы для вас, то игнорируйте их. Это так просто
- person Darvlaskie; 15.04.2015
@Darvlaskie - это не убьет вас, если вы проголосуете за полезные ответы, подобные этому, и примете ответы, которые привели к вашему решению. Это действительно помогает вашему профилю StackOverflow.
- person BadFeelingAboutThis; 16.04.2015