W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
Unity 使用包清單文件 (package.json
) 來管理有關(guān)特定包的特定版本的信息。包清單始終位于包的根目錄,并且包含有關(guān)包的重要信息,例如其注冊名稱和版本號。包清單還定義了與用戶通信的有用信息,例如出現(xiàn)在 UI 中的用戶友好名稱、包的簡要說明以及該包兼容的最低 Unity 版本。
包清單使用 JSON(JavaScript 對象表示法)語法來描述包中包含的內(nèi)容。該文件的格式類似于 npm 的 package.json
格式,但是其某些屬性使用了不同的語義。
Package Manager 讀取此清單以確認包中包含的內(nèi)容,如何解壓縮其內(nèi)容,以及在 Package Manager 窗口中向用戶顯示哪些信息。清單將此信息存儲在一系列必需、強制和可選屬性中。
這些屬性是必需的。如果不存在這些屬性,則注冊表在發(fā)布包時會拒絕該包,或者 Package Manager 無法獲取或加載該包。
屬性 | JSON 類型 | 描述 |
---|---|---|
name | String | 官方注冊的包名稱。此名稱必須遵循 Unity Package Manager 命名約定,也就是使用反向域名表示法。 名稱必須滿足以下條件: - 以 com.<公司名稱> 開頭。 - 若要在 Editor 中顯示,長度不得超過 50 個字符;如果無需在 Editor 中顯示,則不得超過 214 個字符。 - 僅包含小寫字母、數(shù)字、連字符 (-)、下劃線 (_) 和句點 (.)。 - 要指示嵌套的命名空間,請為命名空間添加一個句點作為后綴。 例如,com.unity.timeline 是實現(xiàn) Unity Timeline 的包的名稱。 注意:這是一個唯一標識符,而不是出現(xiàn)在 Package Manager 窗口的列表視圖中的用戶友好名稱。 |
version | string | 包版本號 (MAJOR.MINOR.PATCH)。 例如,“3.2.1”表示這是第 3 個主要發(fā)行版、第 2 個次要發(fā)行版和第 1 個補丁。 該值必須遵守語義版本控制。有關(guān)更多信息,請參閱版本控制。 |
這些屬性在技術(shù)上是可選的,即使它們不包含有效值或者缺失,Package Manager 仍可以將它們裝入到項目中。但是,您應(yīng)該為這些屬性值提供值,以使您的包易于發(fā)現(xiàn),并為包使用者提供更好的體驗。
屬性 | JSON 類型 | 描述 |
---|---|---|
displayName | String | 一個顯示在 Unity Editor 中的用戶友好名稱(例如,顯示在 Project Browser 中、Package Manager 窗口中,等等)。 例如,Unity Timeline、ProBuilder 或 In App Purchasing。 |
description | String | 包的簡要描述。這是在 Package Manager 窗口的詳細信息視圖中顯示的文本。支持任何 UTF–8 字符代碼。這意味著您可以使用特殊格式的字符代碼,例如換行符 (\n) 和項目符號 (\u25AA)。 |
unity | String | 指示包兼容的最低 Unity 版本。如果省略,則認為該包與所有 Unity 版本兼容。 預(yù)期格式為“<主要版本>.<次要版本>”(例如,2018.3)。要指向特定補丁,還要使用 unityRelease 屬性。 注意:與 Unity 不兼容的包將不會出現(xiàn)在 Package Manager 窗口中。 |
這些屬性是可選的,這意味著您可以省略它們。但如果存在,則必須具有有效值。
屬性 | JSON 類型 | 描述 |
---|---|---|
unityRelease | String | Unity 版本的一部分,指示與包兼容的特定 Unity 版本。當更新的包需要在 Unity alpha/beta 開發(fā)周期中進行更改時(例如,如果該包需要新引入的 API,或該包使用的現(xiàn)有 API 以非向后兼容方式進行更改而不遵循 API Updater 規(guī)則),則可以使用此屬性。 預(yù)期格式為“<更新><發(fā)行版本>”(例如 0b4)。 注意:如果省略 unity 屬性,則此屬性沒有效果。 與 Unity 不兼容的包不會出現(xiàn)在 Package Manager 窗口中。 |
dependencies | 對象 | 包依賴關(guān)系映射。鍵是包名稱,值是特定版本。它們指示此包依賴的其他包。 注意:Package Manager 不支持范圍語法,僅支持 SemVer 版本。 |
keywords | 字符串數(shù)組 | Package Manager 搜索 API 使用的關(guān)鍵字數(shù)組。這可以幫助用戶找到相關(guān)的包。 |
type | String | 為 Package Manager 提供其他信息的常量。 保留僅供內(nèi)部使用。 |
author | 對象 | 包的創(chuàng)作者。 該對象包含一個必填字段 (name) 和兩個可選字段 (email) 和 (url)。 例如: { "name" : "John Doe", "email" : "john.doe@example.com", "url" : "http://john.doe.example.com/" } |
{
"name": "com.unity.example",
"version": "1.2.3",
"displayName": "Package Example",
"description": "This is an example package",
"unity": "2019.1",
"unityRelease": "0b5",
"dependencies": {
"com.unity.some-package": "1.0.0",
"com.unity.other-package": "2.0.0"
},
"keywords": [
"keyword1",
"keyword2",
"keyword3"
],
"author": {
"name": "Unity",
"email": "unity@example.com",
"url": "https://www.unity3d.com"
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: