Информация о версии Платформы Launch Services для OS X v10.5
Этот документ суммирует изменения в Launch Services для OS X v10.5 (Leopard), которые особенно интересны для разработчиков программного обеспечения. Обратите внимание на то, что можно быть в состоянии найти больше информации об этих изменениях в документации разработчика Apple.
Launch Services в OS X v10.5 (Leopard) доступна как компонент платформы защиты Core Services. Это - совместимое с двоичным файлом изменение от Mac OS 10.4, где Launch Services была частью платформы защиты Прикладных служб. Клиенты Launch Services API могут соединиться с платформой Core Services или высокоуровневой платформой зонтика (Прикладные службы, Какао или Углерод).
Содержание:
64-разрядная поддержка приложений
Leopard OS X содержит 64-разрядные версии многих системных платформ, включая Launch Services, включая создание и запуск приложений Какао в 64-разрядном адресном пространстве. 64-разрядная версия Launch Services API отличается от 32-разрядного API во всего одной незначительной подробности: были устранены два поля в структуре LSItemInfoRecord (iconFileName и kindID). Они не использованы и не документированы в 32-разрядном API, и тем самым не были перенесены на следующий период к 64-разрядному API.
Карантин файла
Карантин файла является новой функцией в Leopard, разработанном для защиты пользователей от атак троянского коня. Это позволяет приложения, загружающие содержание файла с Интернета для размещения файлов в «карантин», чтобы указать, что файл мог быть из ненадежного источника. Приложение изолирует файл просто путем присвоения значений одному или более карантинным свойствам, сохраняющим информацию о том, когда и куда файл прибывают из.
Когда Launch Services, API используется для открытия изолированного файла и файла, будет казаться, будет приложением, сценарием или другим типом исполняемого файла, Launch Services выведет на экран предупреждение, чтобы подтвердить, что пользователь понимает, что файл является некоторым приложением. Если файл открыт, карантинные свойства автоматически очищены Launch Services, если у пользователя есть доступ для записи к файлу.
Карантинный словарь свойств является новым именованным атрибутом, доступным с LSCopyItemAttribute или LSCopyItemAttributes функции. Новая строковая константа определяет имя карантинного атрибута свойств:
const CFStringRef kLSItemQuarantineProperties; |
Карантинный словарь свойств изменяется с помощью новой функции для установки именованных атрибутов. В Leopard карантинный словарь свойств является единственным устанавливаемым именованным атрибутом.
OSStatus LSSetItemAttribute( |
const FSRef * inItem, |
LSRolesMask inRoles, |
CFStringRef inAttributeName, |
CFTypeRef inValue); |
Значение карантинного атрибута свойств является a CFDictionaryRef. Словарь может содержать значения для следующих карантинных свойств:
const CFStringRef kLSQuarantineAgentNameKey; |
const CFStringRef kLSQuarantineAgentBundleIdentifierKey; |
const CFStringRef kLSQuarantineTimeStampKey; |
const CFStringRef kLSQuarantineTypeKey; |
const CFStringRef kLSQuarantineOriginURLKey; |
const CFStringRef kLSQuarantineDataURLKey; |
Для получения дополнительной информации о доступе к именованным атрибутам, посмотрите интерфейс LSInfo.h. Дополнительные сведения о карантинных свойствах см. в новом интерфейсном файле LSQuarantine.h. Автоматическая изоляция файла может также быть включена как установка всего процесса с помощью приложения ключ Info.plist (см. Новые Ключи Info.plist).
Списки совместно используемого файла
Список Совместно используемого файла API в новинку для Launch Services в Leopard OS X. Этот API обеспечивает доступ к нескольким видам системной глобальной переменной и персистентным спискам в расчете на пользователя объектов файловой системы, таким как недавние документы и приложения, избранное и элементы входа в систему. Для получения дополнительной информации посмотрите новый интерфейсный файл LSSharedFileList.h.
Открытие приложений с параметрами
LSApplicationParameters структура, представленная в OS X v10.4, содержит argv поле, разработанное для передающих параметров приложению main функция. Эта опция API была отключена в этих 10,4 выпусках, но реализована в Leopard. Если новый порядок подачи заявки создается в результате вызова к LSOpenApplication, LSOpenItemsWithRole или LSOpenURLsWithRole , элементы argv поля передаются основной функции приложения.
Новые ключи Info.plist
Launch Services в Leopard поддерживает несколько новых ключей Info.plist для конфигурирования различных параметров настройки приложения, включая автоматический карантинный режим файла, конфигурацию архитектуры ЦП для повсеместного применения и ранжирование обработчика типа документа. Таблица ниже суммирует значение и использование каждого нового ключа:
Ключ: |
|
Тип значения: |
Массив строк |
Допустимые значения: |
PPC, ppc64, i386, x86_64 |
Примечания: |
Этот ключ указывает допустимый набор и предпочтенный порядок выбора доступной исполнимой архитектуры в пакете повсеместного применения. Например, если i386 появится прежде x86_64 в массиве, то на 64-разрядном Intel CPUs, 32-разрядная архитектура будет выбрана, если пользователь не изменит настройки в приложении окно Info в Средстве поиска. Если PPC появится в массиве прежде i386, то на Intel CPUs выполнение Розетты будет предпочтено по собственному выполнению. Используйте |
Ключ: |
|
Тип значения: |
Словарь |
Допустимые ключи: |
PPC, ppc64, i386, x86_64 |
Допустимые значения: |
Строка версии выпуска OS X, такой как «10,5» или «10.4.2» |
Примечания: |
Этот ключ управляет минимальным числом версии системы, которому разрешают выполнить каждую архитектуру в пакете повсеместного применения. Например, если значение ppc64 ключа будет «10.5.2», то выпуски до 10.5.2 не позволят приложению запускать в 64-разрядном режиме на PowerPC CPUs. |
Ключ: |
|
Тип значения: |
Булевская переменная |
Примечания: |
Когда значение этого ключа |
Ключ: |
|
Тип значения: |
Строка |
Допустимые значения: |
Владелец, значение по умолчанию, альтернатива, ни один |
Примечания: |
Ранжирование обработчика является механизмом для подстройки документа обязательные правила выбора в Launch Services. |
Copyright © 2015 Apple Inc Все права защищены. Условия использования | Политика конфиденциальности | обновленный: 31.10.2007