> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK Generator 快速入門

> 設定 Node.js、安裝 PlayFab SdkGenerator，並在 Windows 上使用 Visual Studio 工具從 API JSON 規格產生 PlayFab 用戶端 SDK。

SDK Generator 是以 node.js 為基礎的程式，它會取得 PlayFab API 的 JSON 描述，並使用該描述產生所有必須保持最新的不同 SDK。SDK Generator 專案也包含所有平台上所有 PlayFab SDK 的原始碼。如果您想要變更 SDK，就必須在這裡進行變更。

您必須先擁有 [PlayFab 開發人員帳戶](https://developer.playfab.com)，才能呼叫任何 PlayFab API。

## 必要條件

1. 任何最新的 MS-Windows 作業系統。
2. 您必須安裝 Node.js：[https://nodejs.org/](https://nodejs.org/)
   * node.exe 的位置必須位於您的 PATH 環境變數中。預設值：C:\Program Files (x86)\nodejs\\
   * 強烈建議您安裝 Node.js tools for Visual Studio：[https://beta.visualstudio.com/vs/node-js/](https://beta.visualstudio.com/vs/node-js/)。
3. `SdkGenerator` 需要數個 PlayFab 存放庫，這些存放庫須複製到您的本機電腦，並作為 `SdkGenerator` 的同層級資料夾。
   * `<parent-folder>/SdkGenerator = <https://github.com/PlayFab/SDKGenerator>` (也就是您正在查看的這個)
   * `<parent-folder>/sdks/<targetSDK>` - 對於您想要產生的每個 SDK，您應該先將該目標的 PlayFab 存放庫 git-clone 至 "sdks" 子資料夾。在許多情況下，存放庫中有一些不會產生的必要檔案。
4. `SdkGenerator` 可以設定為從其他 PlayFab 存放庫讀取，這些存放庫須複製到您的本機電腦，並作為 SdkGenerator 的同層級資料夾。
   * `<parent-folder>/API_Specs = <https://github.com/PlayFab/api_specs>`

## 使用指示

如果您已安裝 Node.js 工具，就可以從 Visual Studio 方案建置任何現有的 SDK：[https://github.com/PlayFab/SDKGenerator/blob/master/SDKGenerator.sln](https://github.com/PlayFab/SDKGenerator/blob/master/SDKGenerator.sln)

* 開啟方案。
* 將專案設定設為與您想要建置的 SDK 相符。
* **Build** -> **Build Solution**。

有許多預先建置的指令碼可以自動建置每個 SDK：[https://github.com/PlayFab/SDKGenerator/tree/master/SDKBuildScripts](https://github.com/PlayFab/SDKGenerator/tree/master/SDKBuildScripts)

* 找到與您想要建置的 SDK 相符的指令碼 (例如 unity\_build.bat)。
* 按兩下該檔案。

如果您想要建置新的 SDK，可能需要使用下一節中的指示建置新的 .bat 檔案。

最後，您必須提供要產生的目標清單，以及要產生到的目錄。

若要手動叫用產生器，請在專案的根目錄開啟命令列，然後輸入目標。每個目標的格式如下：

`<targetName>=<targetOutputLocation>`

其中 `<targetName>` 是其中一個支援的 SDK 目標，而 `<targetOutputLocation>` 是要在其中產生 SDK 的目錄路徑。

<Note>
  請確定引數與等號之間沒有空格。
</Note>

### API-Spec 位置

* 您可以選擇性地定義一個 (且只能一個) 讀取 API-Spec 資訊的位置。
  * `-apiSpecPath []`
    * 如果定義了 `-apiSpecPath` 參數但沒有路徑，則預設為 `../API_Specs` (相對路徑，與 SdkGenerator 存放庫位置同層級)。
  * `-apiSpecGitUrl []`
    * 如果定義了 `-apiSpecGitUrl` 參數但沒有 URL，則預設為 `<https://raw.githubusercontent.com/PlayFab/API_Specs/master/>`
    * 直接從 GitHub 存放庫讀取 API\_Specs。
  * `-apiSpecPfUrl []`
    * 如果定義了 `-apiSpecPfUrl` 參數但沒有 URL，則預設為 `<https://www.playfabapi.com/apispec/>`
    * 直接從 PlayFab API 伺服器讀取 API\_Specs。

旗標是選擇性的，可用於產生主控台 API。

## 建置新的 SDK

在 `SdkGenerator` 中設定新目標相當簡單。此範例已新增至 `SdkGenerator` 以供參考：[https://github.com/PlayFab/SDKGenerator/tree/master/targets/newTarget](https://github.com/PlayFab/SDKGenerator/tree/master/targets/newTarget)。

* 在 [SdkGenerator/Targets](https://github.com/PlayFab/SDKGenerator/tree/master/targets) 中新增子資料夾。
* 將 "make.js" 檔案新增至您的新目標。
  * 在檔案中實作 `makeClientAPI2`、`makeServerAPI` 和/或 `makeCombinedAPI`，如 [NewTarget 範例](https://github.com/PlayFab/SDKGenerator/blob/master/targets/newTarget/make.js)所示。
  * 您也可以選擇使用範本檔案和來源檔案，如 NewTarget 範例中所述。
* 在 [SdkGenerator/SDKBuildScripts](https://github.com/PlayFab/SDKGenerator/tree/master/SDKBuildScripts) 中新增 bat 檔案以產生您的 SDK。

PlayFab 有時會接受新 SDK 的提交。此程序相當繁複，且必須與我們的自動化建置和測試系統整合。如需詳細資訊，請在論壇上與我們連絡。

## 疑難排解

如需可用 API 的完整清單，請參閱 [API 參考](/zh-TW/services/playfab/api-references)。

### 連絡我們

我們很樂意聽取開發人員社群的意見！您對我們如何改善產品和服務有任何想法嗎？

我們的開發人員成功團隊可以協助回答任何問題，並處理您對 PlayFab 服務的任何意見反應。

[論壇、支援和知識庫](https://community.playfab.com/)


## Related topics

- [PlayFab 工具和延伸模組](/zh-TW/services/playfab/sdks/tools/index.md)
- [快速入門](/zh-TW/services/playfab/economy-monetization/economy-v2/quickstart.md)
- [Android 快速入門](/zh-TW/services/playfab/sdks/c/quickstart-android.md)
- [iOS 快速入門](/zh-TW/services/playfab/sdks/c/quickstart-ios.md)
- [Win32 快速入門](/zh-TW/services/playfab/sdks/c/quickstart-win32.md)
