Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Unity использует файл манифеста пакета (package.json) для управления информацией о конкретной версии определенного пакета. Манифест пакета всегда находится в корне пакета и содержит важную информацию о пакете, такую ​​как его зарегистрированное имя и номер версии. Он также определяет полезную информацию для сообщения пользователю, например понятное имя, которое отображается в UI(пользовательский интерфейс) Позволяет пользователю взаимодействовать с вашим приложением. Подробнее
См. в Словарь
краткое описание пакета и самую раннюю версию Пакет совместим с Unity.

В манифесте пакета используется синтаксис JSON (нотация объектов JavaScript) для описания содержимого пакета. Формат файла аналогичен npm package.json. формат, но использует другую семантику для некоторых свойств.

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

Обязательные свойства

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

Свойство JSON тип Описание
name String Официально зарегистрированное имя пакета. Это имя должно соответствовать соглашению об именовании диспетчера пакетов Unity, в котором используется обратная нотация имени домена. Дополнительную информацию о соглашении об именах см. в разделе Именование пакета.

Примечание. Это уникальный идентификатор, а не удобное для пользователя имя, которое отображается в представлении списка в окне диспетчера пакетов.

version string Номер версии пакета (MAJOR.MINOR.PATCH).

Например, «3.2.1» означает, что это третий основной выпуск, второй дополнительный выпуск и первое исправление.

Это значение должно учитывать семантическое управление версиями. Дополнительную информацию см. в разделе Управление версиями.

Рекомендуемые свойства

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

Однако следует присвоить значения этим свойствам, чтобы убедиться, что ваш пакет можно обнаружить, и чтобы пользователям было удобнее работать с ним.

Свойство JSON тип Описание
description String Краткое описание пакета. Это текст, который отображается в представлении сведений окна диспетчера пакетов. Это поле поддерживает коды символов UTF–8. Это означает, что вы можете использовать специальные коды символов форматирования, такие как разрывы строк (\n) и маркеры (\u25AA).
displayName String Удобное имя для отображения в редакторе Unity (например, в браузере проектов, окне диспетчера пакетов и т. д.).

Например, Временная шкала Unity, ProBuilder, Покупка в приложении.

unity String Указывает самую раннюю версию Unity, с которой совместим пакет. Если этот параметр опущен, менеджер пакетов считает пакет совместимым со всеми версиями Unity.

Ожидаемый формат: "." (например, 2018.3). Чтобы указать на конкретное исправление, также используйте свойство unityRelease.

Примечание. Пакет, несовместимый с Unity, не отображается в окне диспетчера пакетов.

Необязательные свойства

Эти свойства являются необязательными, то есть их можно не указывать. Однако если они присутствуют, они должны иметь допустимое значение.

Свойство JSON тип Описание
author Object Автор пакета.

Этот объект содержит одно обязательное поле, name, и два необязательных поля, email и url.

Например:
{ "name" : "John Doe",
   "email" : "john.doe@example.com",
   "url" : "http://john.doe.example.com/"
}

changelogUrl String Пользовательское расположение журнала изменений этого пакета, указанное в виде URL-адреса. Например:
"changelogUrl": "https://example.com/changelog"

Примечание. Когда диспетчер пакетов не может получить доступ к URL-адресу (например, из-за проблем с сетью), он делает следующее:

- Если пакет установлен, диспетчер пакетов открывает файловый браузер, отображающий файл CHANGELOG.md в кэше пакета.
- Если пакет не установлен, диспетчер пакетов отображает предупреждение о том, что автономный журнал изменений недоступен.

dependencies Object Карта зависимостей пакетов. Ключи — это имена пакетов, а значения — это конкретные версии. Они указывают на другие пакеты, от которых зависит этот пакет.

Примечание. Диспетчер пакетов не поддерживает синтаксис диапазона, только версии SemVer.

documentationUrl String Пользовательское расположение для документации этого пакета, указанное в виде URL-адреса. Например:
"documentationUrl": "https://example.com/"

Примечание. Когда диспетчер пакетов не может получить доступ к URL-адресу (например, из-за проблем с сетью), он делает следующее:

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

hideInEditor Boolean Диспетчер пакетов автоматически скрывает большинство пакетов (неявное значение — «true»), но вы можете установить для этого свойства значение «false», чтобы убедиться, что ваш пакет и его активы всегда видны.
keywords Array of Strings Массив ключевых слов, используемых поисковыми API диспетчера пакетов. Это помогает пользователям находить соответствующие пакеты.
license String Идентификатор лицензии OSS с использованием формата идентификатора SPDX или строки, такой как "See Файл LICENSE.md".

Примечание. Если вы не укажете это свойство в манифесте пакета, ваш пакет должен содержать файл LICENSE.md.

licensesUrl String Пользовательское расположение для информации о лицензии этого пакета, указанное в виде URL-адреса. Например:
"licensesUrl": "https://example.com/licensing"

Примечание. Когда диспетчер пакетов не может получить доступ к URL-адресу (например, из-за проблем с сетью), он делает следующее:

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

samples Array of Objects Список образцов, входящих в комплект. Каждый образец содержит отображаемое имя, описание и путь к папке образца, начиная с самой папки Samples~:

{
   "displayName": "<name-to-appear-in-the-UI>",
   "description": "<brief-description>",
   "path": "Samples~/<sample-subfolder>"
}

Дополнительную информацию см. в разделе Создание образцов для пакетов.

type String Константа, предоставляющая дополнительную информацию диспетчеру пакетов.

Зарезервировано для внутреннего использования.

unityRelease String Часть версии Unity, указывающая конкретный выпуск Unity, с которым совместим пакет. Вы можете использовать это свойство, когда обновленный пакет требует внесения изменений во время цикла разработки альфа/бета Unity. Это может быть в том случае, если пакету требуются недавно введенные API или используются существующие API, которые были изменены без обратной совместимости без правил API Updater.

Ожидаемый формат: «<UPDATE><RELEASE>» (например, 0b4).

Примечание. Если вы не укажете рекомендуемое свойство unity, это свойство не будет действовать.

Пакет, несовместимый с Unity, не отображается в окне диспетчера пакетов.

Пример манифеста пакета

{ "name": "com.[company-name].[package-name]", "version": "1.2.3", "displayName": "Package Example", "description": "This is an example package", "unity": "2019.1", "unityRelease": "0b5", "documentationUrl": "https://example.com/", "changelogUrl": "https://example.com/changelog", "licensesUrl": "https://example.com/licensing", "dependencies": { "com.[company-name].some-package": "1.0.0", "com.[company-name].other-package": "2.0.0" }, "keywords": [ "keyword1", "keyword2", "keyword3" ], "author": { "name": "Unity", "email": "unity@example.com", "url": "https://www.unity3d.com" } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3