Запись на диск

Adobe AIR 1.0 и более поздних версий

Приложения, выполняемые в веб-обозревателе, имеют ограничения по взаимодействию с локальной файловой системой пользователя. Веб-обозреватели реализуют политики безопасности, которые обеспечивают защиту компьютера пользователя при загрузке веб-содержимого. Например, SWF-файлы, выполняющиеся в проигрывателе Flash Player в обозревателе, не могут напрямую взаимодействовать с файлами, уже записанными на компьютер пользователя. Общие объекты и файлы cookie могут быть записаны на компьютер пользователя с целью сохранения предпочтений пользователя и других данных, но этим и ограничивается взаимодействие с файловой системой. Поскольку приложения AIR устанавливаются как собственные, к ним применяются другие условия безопасности, которые включают в себя возможность чтения и записи по всей локальной файловой системе.

Такая свобода подразумевает большую ответственность разработчиков. Снижение защиты приложения подвергает риску не только функциональность самого приложения, но и целостность компьютерной системы пользователя. По этой причине разработчики должны ознакомиться с Рекомендации по обеспечению защиты для разработчиков .

Разработчики AIR могут получать доступ к файлам и записывать их в локальную файловую систему, используя некоторые правила написания схемы URL-адресов:

Схема URL-адресов

Описание

app:/

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

app-storage:/

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

file:///

Псевдоним, указывающий на корневой каталог жесткого диска пользователя. Файлы, доступ к которым осуществляется по этому пути, входят в изолированную программную среду приложения, если существуют в каталоге приложения, в противном случае — в другую изолированную программную среду.

Примечание. Приложения AIR не могут изменить содержимое, используя схему URL-адресов app:. Кроме того, считывание из каталога приложения может осуществляться только с использованием настроек администратора.

Если административные ограничения доступа к компьютеру пользователя отсутствуют, приложения AIR имеют право на запись в любое местоположение на жестком диске пользователя. Разработчикам рекомендуется использовать путь app-storage:/ для локального хранилища, относящегося к приложению. Файлы, записанные в каталог app-storage:/ из приложения, помещаются в стандартное местоположение:

  • В Mac OS: каталогом хранилища приложения является <appData>/<appId>/Local Store/ , где <appData> — это папка установок пользователя. Как правило, это /Users/<user>/Library/Preferences

  • В Windows: каталогом хранилища приложения является <appData>\<appId>\Local Store\ , где <appData> — это специальная папка пользователя CSIDL_APPDATA. Как правило, это C:\Documents and Settings\<userName>\Application Data

  • В Linux: <appData>/<appID>/Local Store/ , где <appData> — это /home/<user>/.appdata

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