Я пишу простое приложение для телефона J2ME и хочу сохранить статус приложения при выходе из него.
Поиск в Google привел меня к классу FileConnection:
FileConnection filecon = (FileConnection) Connector.open("file:///E:/mynewfile.txt");
filecon.create();
// write data to file etc etc
и тому подобное. Все это работает, , но имеет следующие два недостатка. На моем телефоне S40 каждый раз, когда я запускаю приложение, меня просят "позволить приложению (бла) записывать в файл?" или что-то подобное. У меня есть другие приложения, которые могут сохранять свои состояния (например, игры, которые сохраняют таблицу рекордов), и которые не спрашивают меня каждый раз о том, могут ли они записать в файл. Какой трюк мне не хватает?
И пока я здесь - имя файла "///E:/mynewfile.txt" тоже не идеально, потому что оно работает для моего телефона, но не работает для телефона моего сына (и почему это?), что означает, что мне нужно редактировать и перекомпилировать приложение каждый раз, когда я хочу, чтобы программа работала на новом телефоне (я могу предусмотреть какой-то тип клуджа, когда программа устанавливает, на каком телефоне запущено приложение - там будет просто некоторые из нас используют его - и затем устанавливают строку, указывающую на действительный файл в допустимом каталоге, соответственно, но это, безусловно, не так, как это должно быть сделано ...). Предположительно, я не должен писать в E: / в любом случае, но есть ли какое-то каноническое «место, куда приложение X помещает все свои файлы данных»? И является ли это каким-то образом независимым от устройства, по крайней мере, до некоторой степени? Опять же, по-видимому, я упускаю уловку - и две проблемы, о которых я спрашиваю, возможно, связаны.
Что мне делать?