> ## 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.

# PlayFab 2017 版本資訊

> PlayFab Services SDK 2017 年版本資訊，包括全年推出的 SDK 版本更新、新增 API、淘汰事項和修正。

## 171204

日期：2017 年 12 月 4 日

### Unreal SDK 變更 (Cpp 和 Bp)

* 將兩個 SDK 都更新至 **Unreal 4.18.1**。
* 舊版仍可運作，但需要取消註解 \_.build.cs 檔案中的 `#defines`。

## 171127

日期：2017 年 11 月 27 日

### API 變更

* 允許「限量版」物品的庫存功能現已脫離 Beta 正式發行。

* 此功能可讓您定義遊戲中特定 `itemId` 只有固定數量可用。

* 從使用「[ProfileModel](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel)」的 API 方法中移除了虛擬貨幣屬性，因為該資訊從未提供或不正確。它總有一天會回來。

### 新的 API 方法

* admin.[CheckLimitedEditionItemAvailability](xref:titleid.playfabapi.com.admin.playeritemmanagement.checklimitededitionitemavailability)
* admin.[IncrementLimitedEditionItemAvailability](xref:titleid.playfabapi.com.admin.playeritemmanagement.incrementlimitededitionitemavailability)
* client.[GetPaymentToken](xref:titleid.playfabapi.com.client.playeritemmanagement.getpaymenttoken)
  * 用於 [XSolla 特定付款處理](/zh-TW/services/playfab/economy-monetization/economy/tutorials/non-receipt-payment-processing)
* client.[ReportDeviceInfo](xref:titleid.playfabapi.com.client.analytics.reportdeviceinfo)
  * 此 API 方法並非供直接呼叫。它目前是 Unity 和 Lumberyard SDK 的內建功能。可以使用 [API 原則](/zh-TW/services/playfab/api-references/api-access-policy)將其停用。此外，我們即將新增另一個選項，可在 Game Manager 的遊戲設定頁面中將其停用。

### 已更新的 API 方法錯誤碼

* client.[AddOrUpdateContactEmail](xref:titleid.playfabapi.com.client.accountmanagement.addorupdatecontactemail)
* client.[GetLeaderboardAroundPlayer](xref:titleid.playfabapi.com.client.playerdatamanagement.getleaderboardaroundplayer)
* client.[LoginWithAndroidDeviceID](xref:titleid.playfabapi.com.client.authentication.loginwithandroiddeviceid)
* client.[LoginWithCustomID](xref:titleid.playfabapi.com.client.authentication.loginwithcustomid)
* client.[LoginWithIOSDeviceID](xref:titleid.playfabapi.com.client.authentication.loginwithiosdeviceid)

### SDK 特定更新

* [UnitySdk](https://github.com/PlayFab/UnitySDK)：我們現在使用 Unity 2017.2.0f3 建置所有已發佈的 Unity 套件檔案。
* 為了測試，我們在內部將每個 major.minor 版本更新至最新，從 Unity 4.7.2f1 到 2017.1.2f1。
* Unity 範例測試遊戲伺服器：對 `HttpHelper` 套用了修正，以修正 `SignalR` 要求的 SSL 驗證。
* [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK)：範例中的 AirSdk 已更新至 v27。
* [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK)：儘管 Cocos 已發行 3.16，我們仍以 3.15.1 為目標 (敬請期待)。
* SdkTestingCloudScript 和 [NodeSDK](https://github.com/PlayFab/NodeSDK)：更新了範例 VS 專案以支援 VS/msbuild 2017。
* WindowsSDK：這是以 Visual Studio 2013 為目標之 NuGet 套件的最後一個組建：
  * [WindowsSdk VS 2013 NuGet 套件](https://www.NuGet.org/packages/com.playfab.windowssdk.v120/1.19.171127)
  * 我們正在更新自動化建置電腦，而且不會在新電腦上安裝 VS 2013。
  * [較新的 NuGet 套件](https://www.NuGet.org/packages/com.playfab.windowssdk.v140/)將繼續在 VS 2015 和 2017 上運作。

## 171106

日期：2017 年 11 月 6 日

### 新的 API 方法

* admin.[GetPlayerProfile](xref:titleid.playfabapi.com.admin.accountmanagement.getplayerprofile)
* server.[SendEmailFromTemplate](xref:titleid.playfabapi.com.server.accountmanagement.sendemailfromtemplate)

### 已更新的 PlayStream 事件

* [sent\_email](/zh-TW/services/playfab/api-references/events/TitleCommunications/sent-email) 新增了欄位：Body 和 Subject。

### 所有 SDK

* **小型 SDK 重大變更：**`ForgetClientCredentials()` 已重新命名為 `ForgetAllCredentials()`。
* 這是「即將推出」之功能的一部分，完成時將會宣布。

## 171102

日期：2017 年 11 月 2 日

### 新的 PlayFab 功能

* 使用範本傳送電子郵件給您的玩家。

### 新的 API 方法

* admin.[ResetPassword](xref:titleid.playfabapi.com.admin.accountmanagement.resetpassword)
* admin.[GetPlayerIdFromAuthToken](xref:titleid.playfabapi.com.admin.accountmanagement.getplayeridfromauthtoken)
* client.[AddOrUpdateContactEmail](xref:titleid.playfabapi.com.client.accountmanagement.addorupdatecontactemail)
* client.[RemoveContactEmail](xref:titleid.playfabapi.com.client.accountmanagement.removecontactemail)
* server.[SendCustomAccountRecoveryEmail](xref:titleid.playfabapi.com.server.accountmanagement.sendcustomaccountrecoveryemail)

### 文件更新

* [與每個 PlayFab API 呼叫相關的新錯誤碼清單](/zh-TW/services/playfab/api-references/global-api-method-error-codes)
* 更新了下列項目的錯誤碼：client.[LoginWithGoogleAccount](xref:titleid.playfabapi.com.client.authentication.loginwithgoogleaccount)、client.[UpdatePlayerStatistics](xref:titleid.playfabapi.com.client.playerdatamanagement.updateplayerstatistics)、server.[ConsumeItem](xref:titleid.playfabapi.com.server.playeritemmanagement.consumeitem)

### 新的 PlayStream 事件

* [auth\_token\_validated](/zh-TW/services/playfab/api-references/events/PlayerIdentity/auth-token-validated)
* [player\_updated\_contact\_email](/zh-TW/services/playfab/api-references/events/PlayerIdentity/player-updated-contact-email)
* [sent\_email](/zh-TW/services/playfab/api-references/events/TitleCommunications/sent-email)

### Unreal 特定更新

* 我們的自動建置器未能發佈組建編號 171016 和 171026 的 Unreal SDK。我們已解決自動建置器的問題，事後發佈了 171026 版，發行也已恢復正常

### Unity 特定變更

* \*\*小型重大變更：\*\*將 `ForgetClientCredentials` 重新命名為 `ForgetAllCredentials`。
* 這是即將推出之新功能的一部分。在接下來的幾個版本中，我們會在所有 SDK 中將 `ForgetClientCredentials` 重新命名為 `ForgetAllCredentials`。

## 171026

日期：2017 年 10 月 26 日

### API 文件變更

* 更新 API 方法的錯誤碼。

* 從個別 API 方法清單中移除了許多適用於所有 API 方法的通用錯誤碼。新頁面會說明通用錯誤碼。

* **已移除的通用代碼：**
  * InvalidParams
  * OverLimit
  * DataUpdateRateExceeded
  * AccountBanned

* 這些錯誤 (以及其他將在另一份文件中發佈的錯誤) 可能從任何 API 方法傳回，應妥善處理。

* 在數十個 API 方法中新增了新的錯誤碼，並移除了一些錯誤的代碼。對於方法特定的錯誤傳回，錯誤碼清單應該會準確得多。這仍是持續進行的過程，因此還會有更多更新。

* 數個涉及虛擬貨幣的 API 方法可能會使餘額減少至小於零。我們已適當地標示這些方法。

### API 變更

* **新的 API 方法：**
  * admin.[DeleteTitle](xref:titleid.playfabapi.com.admin.accountmanagement.deletetitle)
  * 裝載的遊戲伺服器同時支援 **IPv4** 和 **IPv6**。
  * 自訂遊戲伺服器現在支援 **IPV6**。所有新啟動的遊戲伺服器執行個體都會同時指派 **IPV4** 和 **IPV6** 位址，這些位址會顯示在 Game Manager 的 **Servers** 索引標籤中，並由配對 API 傳回。用戶端可以連線至所指派伺服器的 **IPV4** 或 **IPV6** 位址。
  * 所有傳回伺服器位址的 API 方法現在都會傳回這兩個選項：client.\[StartGame]\(xref:titleid.playfabapi.com.client.matchmaking).\[StartGameResult]\(xref:titleid.playfabapi.com.client.matchmaking)

### Game Manager 變更

* 您現在可以使用新的 Admin/DeleteTitle API，或在 Game Manager 的工作室頁面上刪除遊戲，如下圖所示。
  <img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/release-notes/images/171026-DelTitleGameManager.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=e05b5b1b05161e4730923e705349b890" alt="DelTitleGameManager" width="1280" height="800" data-path="images/playfab/release-notes/images/171026-DelTitleGameManager.png" />

## 171016

日期：2017 年 10 月 16 日

### API 變更

* 在 server.[SendPushNotification](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification).[SendPushNotificationRequest](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest).[PushNotificationPackage](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#pushnotificationpackage) 中新增了一個用於 iOS Badge 的參數。
* 釐清了各種參數的裝置特定性質。

### 新的 PlayStream 事件

* [player\_started\_purchase](/zh-TW/services/playfab/api-references/events/Player/player-started-purchase)
* [player\_paid\_for\_purchase](/zh-TW/services/playfab/api-references/events/Player/player-paid-for-purchase)

### JavaScriptSDK 特定變更

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * 我們的 SDK 現在與 [Phaser.io](https://phaser.io/) 整合。

### LuaSDK 特定變更

* [LuaSDK](https://github.com/PlayFab/LuaSDK)
  * 修正了我們的 Lua 發佈管線，LuaSDK 再次正常更新。

### UnitySdk 特定變更

* [UnitySdk](https://github.com/PlayFab/UnitySDK)
  * 我們在自己這端處理了 [Unity 中的迴歸問題](https://issuetracker.unity3d.com/issues/unitywebrequest-getresponseheaders-method-returns-null-on-android-devices)，它應該不會再影響 PlayFab 客戶。

~~**UnrealCppSdk 特定變更：**~~ (已更新：此 SDK 已淘汰。如需新的 Unreal SDK，請參閱 [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~我們的一位客戶為我們的 SDK 製作了附加外掛程式，整合了 Unreal OnlineSubsystem 和 PlayFab SDK~~
* ~~您可以在[這裡](https://gitlab.com/mtuska/OnlineSubsystemPlayFab)查看。~~

### Unicorn Battle 範例

* 刪除了 PlayFab 自訂 Push 外掛程式，並更新為 FCM 推播訊息。

## 170925

日期：2017 年 9 月 5 日

### API 變更

* 移除了少數從未公開的 Beta API。這應該不會影響任何現有客戶或上線中的遊戲。
* 我們在 CloudScript 引擎中略過了預設的語言層級標頭檢查。這表示先前遭到拒絕的數個 CloudScript http.request() 標頭現在應該可以運作。

### 全域推播通知更新

* 如需推播通知改進的詳細資訊，請參閱[我們的部落格](https://blog.playfab.com/blog/push-sep-17)

### 新的 PlayStream 事件

* [player\_device\_info](/zh-TW/services/playfab/api-references/events/PlayerIdentity/player-device-info)
* 使用最新 UnitySDK 的遊戲現在可以看到一些關於其客戶的基本分析資料。SnowFlake 非常適合檢視和分析此資訊，但也可以在 PlayStream 事件歷程記錄中取得。
* player\_updated\_membership

### JavaScriptSDK 特定變更

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * 在 JavaScriptSDK 中新增了少數其他 SDK 中已有的小功能：
  * 您現在可以在要求中插入額外的標頭 (移除了此 SDK 使用雙重加密登入的其中一個阻礙)。
  * 新增了新函式：`PlayFabClientSDK.ForgetClientCredentials()`
  * 這是一個便利函式，可在關閉或登出後重設用戶端。
  * `PlayFab.GenerateErrorReport()`
  * 這是一個便利函式，可將失敗之 PlayFab 呼叫的錯誤結果轉換為單一完整的呼叫失敗原因描述。
* 在 PlayFab API 要求中新增了選擇性的資料轉送：
  * `result.customData`
    * 這是您可以附加至要求的任何內容物件，可為結果提供內容。例如，您可以將本機用戶端玩家物件作為 **UpdatePlayerStatistics** 呼叫的 `customData` 提供，並在遠端呼叫成功後，在該玩家上設定更新後的統計資料。
  * `result.request`
    * API 呼叫的要求現在會轉送至結果，可為結果提供內容。例如，當您呼叫 `UpdatePlayerStatistics` 時，可以在更新本機玩家物件時，從要求中讀取更新後的統計資料。

### UnitySDK 特定變更

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * 新的實驗性功能：此版本的 PlayFab UnitySDK 現在可讓您選擇性地查看玩家的裝置資訊。您可以看到的資訊範例包括：記憶體、解析度、使用者代理程式、裝置類型、作業系統版本等。

~~**UnrealCppSdk 特定變更：**~~ (已更新：此 SDK 已淘汰。如需新的 Unreal SDK，請參閱 [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~已更新至 Unreal 4.17~~
* ~~拆分為三個獨立的外掛程式，各有不同的功能~~
* ~~整體大幅升級~~

## 170828

日期：2017 年 8 月 28 日

### Client API 變更

* ~~client.\[GetCurrentGames].\[result].Games\[i].GameServerState 已淘汰，並由 \[GameServerStateEnum] 取代~~。
  ~~- GameServerState 被序列化為整數，這是一個錯誤。新欄位是適當的列舉字串。~~ (已更新：此項目已淘汰。請參閱[伺服器](/zh-TW/services/playfab/multiplayer/servers))

### 其他 API 變更

* 在 Admin 和 Server API 上淘汰了下列 API 方法。
  * [GetActionsOnPlayersInSegmentTaskInstance](xref:titleid.playfabapi.com.admin.scheduledtask.getactionsonplayersinsegmenttaskinstance) - 這曾被意外標示為已淘汰，但那是一個錯誤，已經還原。
* [SendPushNotification](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification) 現在可以指定 [TargetPlatforms](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest)
* 為 [SendPushNotificationRequest](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest) 新增了一些關於哪些參數適用於哪些平台的說明 (不建議使用目標平台不支援的參數)。
* 在共用群組文件中新增了一些關於[共用群組](xref:titleid.playfabapi.com.client.sharedgroupdata.createsharedgroup)[限制](/zh-TW/services/playfab/community/associations/groups/using-shared-group-data)的資訊 (具體來說，它們無法用於公會之類的用途)。
* [玩家設定檔](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel)現在可以儲存玩家的[連絡電子郵件地址](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#contactemailinfomodel)。

### 新的 PlayStream 事件

* [entity\_created](/zh-TW/services/playfab/api-references/events/PlayerIdentity/entity-created)
* [entity\_logged\_in](/zh-TW/services/playfab/api-references/events/PlayerIdentity/entity-logged-in)

## 170814

日期：2017 年 8 月 14 日

### API 更新

* server.[GetFriendsList](xref:titleid.playfabapi.com.server.friendlistmanagement.getfriendslist) 和 client.[GetFriendsList](xref:titleid.playfabapi.com.client.friendlistmanagement.getfriendslist) API 方法現在會為您的每位朋友傳回 [PlayerProfile](xref:titleid.playfabapi.com.client.friendlistmanagement.getfriendslist#playerprofilemodel)。

### CSharpSdk 特定更新

* SDK 現在包含一個名為 [NewtonSoftJsonWrapper.cs](https://github.com/PlayFab/CSharpSDK/blob/master/PlayFabSDK/source/Json/NewtonsoftWrapper.cs) 的檔案，可讓您將我們隨附的 SimpleJson 序列化程式替換為 NewtonSoft NuGet 套件。
* 該檔案包含如何使用的指示。

## 170807

日期：2017 年 8 月 7 日

### 新的 API 方法

* admin.[DeletePlayer](xref:titleid.playfabapi.com.admin.accountmanagement.deleteplayer)

### 已淘汰的 API 方法

* 這些 API 方法從未如預期般完整運作。為了加以清理，我們重新開始，建置了上一節中新的 [DeletePlayer](xref:titleid.playfabapi.com.admin.accountmanagement.deleteplayer) API，而下列方法已淘汰：
* `admin.ResetUsers`
* `admin.DeleteUsers`

### API 更新

* `PlayerProfile` (位於 [Admin](xref:titleid.playfabapi.com.admin.accountmanagement.getplayerprofile#playerprofilemodel)/[Server](xref:titleid.playfabapi.com.server.accountmanagement.getplayerprofile#playerprofilemodel)/[PlayStream](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel)) 包含新欄位 `ContactEmailAddresses`，其中包含您可能已儲存的任何玩家電子郵件地址資訊。

### PlayStream 事件

* 新事件：[auth\_token\_validated](/zh-TW/services/playfab/api-references/events/PlayerIdentity/auth-token-validated)
* 新事件：[player\_removed\_title](/zh-TW/services/playfab/api-references/events/PlayerIdentity/player-removed-title)
* 新事件：[player\_updated\_contact\_email](/zh-TW/services/playfab/api-references/events/PlayerIdentity/player-updated-contact-email)
* 新事件：[player\_verified\_contact\_email](/zh-TW/services/playfab/api-references/events/PlayerIdentity/player-verified-contact-email)
* 新事件：[sent\_email](/zh-TW/services/playfab/api-references/events/TitleCommunications/sent-email) (仍為 Beta，但事件已公開)
* 事件中的新欄位：[player\_realmoney\_purchase](/zh-TW/services/playfab/api-references/events/Player/player-realmoney-purchase).TransactionId

~~**LumberyardSdk 變更：**~~

* ~~\*\*升級警告：\*\*此 SDK 不再與舊版 Lumberyard 相容。~~
* ~~此版本的 PlayFab LumberyardSdk 不再適用於 Lumberyard 1.3 版。它已升級，現在以 Lumberyard 1.9 為目標。我們可能很快就會以 1.10 為目標，但同樣不會回溯相容於 1.9 或更早版本。如需詳細資訊，請參閱[我們的部落格](https://blog.playfab.com/blog/cpp-SDK-updates)。~~

~~**UnrealCppSdk：**~~ (**已更新**：此 SDK 已淘汰。如需新的 Unreal SDK，請參閱 [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))。

~~**Unreal SDK：**~~ (**已更新**：此 SDK 已淘汰。如需新的 Unreal SDK，請參閱 [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~PlayFab UnrealBlueprintSdk 現在重新命名為「Unreal SDK」~~
* ~~Unreal SDK 已更新至 4.16，並包含一些小型修正~~
* ~~我們也將移除對舊版 Unreal 的支援，這些版本需要舊版的 Visual Studio~~
* ~~我們現在支援 4.14 到 4.16~~
* ~~您的專案可能會繼續在舊版 Visual Studio 上運作，但我們只能支援和測試 Visual Studio 2015 及更新版本~~
* ~~如需詳細資訊，請閱讀[我們的部落格](https://blog.playfab.com/blog/visual-studio-2013-deprecation-notice)~~

### Unity 編輯器延伸模組

* 修正了下載和上傳 CloudScript 修訂版本的問題。
* 修正了系統語言使用非 ASCII 字母之使用者的問題。

## 170710

日期：2017 年 7 月 10 日

### API 變更

* 企業版雙重加密登入功能已脫離 Beta 發行，現已上線。
* **新的 API 方法：**
  * admin.[CreatePlayerSharedSecret](xref:titleid.playfabapi.com.admin.authentication.createplayersharedsecret)
  * admin.[DeletePlayerSharedSecret](xref:titleid.playfabapi.com.admin.authentication.deleteplayersharedsecret)
  * admin.[GetPlayerSharedSecrets](xref:titleid.playfabapi.com.admin.authentication.getplayersharedsecrets)
  * admin.[SetPlayerSecret](xref:titleid.playfabapi.com.admin.authentication.setplayersecret)
  * admin.[UpdatePlayerSharedSecret](xref:titleid.playfabapi.com.admin.authentication.updateplayersharedsecret)
  * client.[GetTitlePublicKey](xref:titleid.playfabapi.com.client.authentication.gettitlepublickey)
  * client.[SetPlayerSecret](xref:titleid.playfabapi.com.client.authentication.setplayersecret)
  * server.[SetPlayerSecret](xref:titleid.playfabapi.com.server.authentication.setplayersecret)
* server.\[RegisterGameRequest]\(xref:titleid.playfabapi.com.server.matchmaking) 有新屬性：LobbyId，可讓您嘗試重新註冊現有遊戲
* server.[SendPushNotificationRequest](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest) 現在接受新屬性：Package，它定義了所有進階 Android 推播功能。

### SDK 重大變更

* admin.[SetupPushNotificationRequest](xref:titleid.playfabapi.com.admin.title-widedatamanagement.setuppushnotification#setuppushnotificationrequest).Platform 現在定義為列舉，而非字串。這不是 API 的重大變更 (因為列舉是以字串傳輸)，但需要部分使用者在程式碼中將字串轉換為列舉值。

### 所有 SDK 中的變更

* 小型 SDK 重大變更：大多數 SDK 在多個要求中移除了名為 UseSpecificVersion 的選擇性欄位，這是將相鄰的 Version 欄位定義為 null 的替代方式。並非所有語言都能在要求中將整數定義為 null，而此欄位只適用於相關的 SDK (具體來說是 Unreal)。如果您正在使用此欄位，只要將其移除，並在適當時將相鄰的 Version 欄位設定為 null 即可。

### Unity EditorExtensions 更新

* 更新了旗標面板。
* 現在可以切換 `ENABLE/DISABLE_IDFA` 旗標。
* 顯示非 PlayFab 旗標，並可讓您將其移除 (請謹慎使用，不要移除您需要的旗標)。

### SDK 相依性更新

* [UnitySDK](https://github.com/PlayFab/UnitySDK) 已使用 Unity2017.1.0f1 建置、封裝和測試。
  * 只有細微、非重大的變更。
* [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK) 已使用 AirSDK v26 測試。
  * SDK 未變更，範例已更新為以 v26 為目標。
* [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK) 已使用 Cocos 3.15.1 建置和測試。
* Cocos 3.14->3.15 包含破壞我們範例的變更，因此必須更新範例。範例仍適用於 3.13 到 3.15，但範例可能無法在較舊版本的 Cocos 上運作；SDK 本身未變更，應該適用於大多數最新的 3.X Cocos 版本。

## 170612

日期：2017 年 6 月 12 日

### 文件變更

* 為了清楚起見，對數十個 API 方法進行了許多小幅修訂
* 將數個各只包含單一 API 方法的文件群組合併為一個名為「Platform Specific Methods」的群組。
* 將「Matchmaking APIs」群組重新命名為「Matchmaking」，以與其他群組保持一致。
* 許多有長度限制的字串欄位現在會描述允許的範圍。

### 所有 SDK 中的變更

* 更新並修正了所有 SDK 讀我檔案中許多損毀的連結。

### UnitySDK 特定變更

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * 我們現在支援多個版本的 Android API 和 Google Play 服務。請在[這裡](https://github.com/PlayFab/UnitySDK/tree/master/Packages)閱讀更多詳細資料。
  * 對 Unity + Android Push-Plugin 的計劃變更暫時告一段落。如果您有任何其他要求，請在[這裡](https://community.playfab.com/questions/10840/android-plugin-upgrade-discussion.html)告訴我們。

## 170530

日期：2017 年 5 月 30 日

### API 變更

* \*\*重大變更：\*\*在 server.[ReportPlayer](xref:titleid.playfabapi.com.server.playeritemmanagement.reportplayer) 中，我們立即移除了 [ReportPlayerServerRequest](xref:titleid.playfabapi.com.server.playeritemmanagement.reportplayer#reportplayerserverrequest) 中的 `titleId` 欄位 (而不只是淘汰)。所有檢舉現在都會傳送至其自己的遊戲，無法檢舉至其他遊戲。
  * 這必須是重大變更，否則會成為輕微的跨遊戲漏洞。如果您需要此變更的協助，請[與我們連絡](https://community.playfab.com/questions/ask.html)。
* 在 client.[ReportPlayer](xref:titleid.playfabapi.com.client.accountmanagement.reportplayer) 和 server.[ReportPlayer](xref:titleid.playfabapi.com.server.playeritemmanagement.reportplayer) 中，我們在這兩種情況下都淘汰了 result.Updated。它一律為 true，如果玩家超過檢舉限制，API 呼叫會傳回錯誤。我們將此錯誤情況變更為 OverLimit，以與其他限制一致。
* 所有[登入方法](xref:titleid.playfabapi.com.client.authentication)現在都可以在要求時傳回[玩家設定檔物件](xref:titleid.playfabapi.com.client.authentication.loginwithandroiddeviceid#playerprofilemodel)，其中包含先前只有排行榜結果才能取得的資訊。

### 新的 API 方法

* client.[GetPlayerProfile](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile) 和 server.[GetPlayerProfile](xref:titleid.playfabapi.com.server.accountmanagement.getplayerprofile)
  * 傳回先前只有排行榜結果才能取得的資訊。

### 文件

* 小幅更新，數個範例不再包含已淘汰欄位的相關資訊。
* 定義了 [ExecuteCloudScript](xref:titleid.playfabapi.com.client.server-sidecloudscript.executecloudscript) 傳回和記錄的大小限制。

### 新的 PlayStream 事件

* gameserverhost\_started
* gameserverhost\_stopped
* [player\_set\_profile\_property](/zh-TW/services/playfab/api-references/events/Player/player-set-profile-property)

### UnitySDK 特定變更

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * 全面翻修了我們的 Android Push 外掛程式。
  * [部落格文章](https://blog.playfab.com/blog/push-upgrade-5-22)
  * [新的/更新的指南](/zh-TW/services/playfab/live-service-management/game-configuration/title-communications/push-notifications/push-notifications-for-android)

### CSharpSDK 特定變更

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * 現在可以指定要插入 API 要求中的額外標頭。
  * 這是企業版專屬功能，特別用於雙重加密的登入要求。

## 170508

日期：2017 年 5 月 8 日

### API 變更

* **重大變更：**
  * 如果呼叫的傳回值太大，[ExecuteCloudScript](xref:titleid.playfabapi.com.client.server-sidecloudscript.executecloudscript) 不會將其序列化。
  * 如果呼叫的記錄太大，[ExecuteCloudScript](xref:titleid.playfabapi.com.client.server-sidecloudscript.executecloudscript) 不會將其序列化。
* 在上述任一情況下，呼叫仍會傳回 200/成功，但 FunctionResult 和/或 Logs 屬性會是 null。

### PlayStream 事件變更

* [player\_vc\_item\_purchased](/zh-TW/services/playfab/api-references/events/Player/player-vc-item-purchased) 和 [character\_vc\_item\_purchased](/zh-TW/services/playfab/api-references/events/Character/character-vc-item-purchased) 現在包含 StoreId 參數，指出購買時使用的是哪個商店。
* **新事件：**
  * [title\_profile\_view\_constraints\_changed](/zh-TW/services/playfab/api-references/events/PlayerIdentity/title-profile-view-constraints-changed)

### CSharpSDK 更新

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * 刪除了 [CSharpSDK](https://github.com/PlayFab/CSharpSDK) 中一些未使用的原始程式檔。
  * 這應該不會影響任何現有專案或 NuGet 套件，因為 Visual Studio 方案並未參考這些檔案。

### Postman 集合更新

* 數個常見的要求參數現在使用環境變數。
* 具體來說是 TitleId=\{\{TitleId}}、PlayFabId=\{\{PlayFabId}}、CharacterId=\{\{CharacterId}} 和 CatalogVersion=\{\{PrimaryCatalogName}}

## 170424

日期：2017 年 4 月 24 日

### SDK Hotfix 版本

* **[JavaSDK](https://github.com/PlayFab/JavaSDK) 更新：**
  * 我們現在會發佈 SDK 的 Jar 檔案，一個用於程式碼，一個用於 Java 文件，您可以將其匯入 Java 專案，而不必複製貼上程式碼。感謝 Will Iverson  協助我們改善 [JavaSDK](https://github.com/PlayFab/JavaSDK) 的可用性
* **UnityEditorExtensions 更新：**
  * 我們已解決一些安裝時的例外狀況。具體來說，首次安裝後不再需要重新啟動 Unity。
  * 此外，也修正了 Client API 有時會被不當停用的問題。(已編輯)
* ~~**UnrealCppSdk 更新：**~~ (已更新：此 SDK 已淘汰。如需新的 Unreal SDK，請參閱 [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))
* ~~titleId 現在可從外掛程式介面取得~~

## 170411

日期：2017 年 4 月 11 日

### API 變更

* 新的企業版功能：更多登入加密
* 您可以使用 Policy API 方法，強制要求登入呼叫使用第二層加密
* 請參閱：[UpdatePolicy](xref:titleid.playfabapi.com.admin.authentication.updatepolicy)，特別是 [UpdatePolicyRequest](xref:titleid.playfabapi.com.admin.authentication.updatepolicy#updatepolicyrequest).[Statements](xref:titleid.playfabapi.com.admin.authentication.updatepolicy#permissionstatement).[ApiConditions](xref:titleid.playfabapi.com.admin.authentication.updatepolicy#apicondition)
* 此功能仍有部分處於 Beta，不建議啟用 (尚未 - 即將推出！)

### 新的 PlayStream 事件

* [player\_receipt\_validation](/zh-TW/services/playfab/api-references/events/Player/player-receipt-validation)

### UnitySDK 特定變更

* 現在可以指定要插入 API 要求中的額外標頭 (上一節中的加密登入呼叫需要此功能)。

### UnityEditorExtensions 特定變更

* 修正了 Unity 5.6 的編譯問題。

## 170406

日期：2017 年 4 月 6 日

### Unity Android Push 外掛程式的 Hotfix

* 修正了 Android 7.0+ 當機錯誤。
* 修正了 Android 缺少大型圖示支援的問題 (Lollipop+)。
* 修正了 Android 7.0+ 上的小型圖示支援 (現在支援 \_transparent.png)。

## 170403

日期：2017 年 4 月 3 日

### API 變更

* \*\*Client 和 Server 排行榜方法：\*\*取得排行榜的方法 (例如 client.[GetLeaderboard](xref:titleid.playfabapi.com.client.playerdatamanagement.getleaderboard)) 先前新增了不可為 null 的參數 Version 和 UseSpecificVersion。要求它們不可為 null 是一項破壞 API 的變更。我們已將這些屬性更新為完全選擇性。
* **Client API：**[GetPurchaseResult](xref:titleid.playfabapi.com.client.playeritemmanagement.getpurchase#getpurchaseresult) 的 Items 欄位已淘汰：結果的這個部分經常不正確或不完整。它最終會被功能完整的參數取代。

### 新的 PlayStream 事件

* `player_display_name_filtered`

~~**Unreal 特定變更：**~~ (**已更新**：此 SDK 已淘汰。如需新的 Unreal SDK，請參閱 [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~UnrealCppSdk：修正了發佈組建時遺失 TitleId 等 PlayFab 設定的問題。
  兩個 SDK 都已在 Unreal 4.15 上測試並驗證可運作~~

### JavaSDK 特定變更

* [JavaSDK](https://github.com/PlayFab/JavaSDK)
  * 重新調整了 [JavaSDK](https://github.com/PlayFab/JavaSDK) 的資料夾結構和測試。
  * 存放庫的內部資料夾結構稍有變更，以配合 Maven 最佳做法。
  * 相依性現在由 Maven 控制，不再隨附於 SDK 中。
  * 將我們的內部自動化測試轉換為 Maven 命令列。
  * 我們的 SDK 無法在 Maven Central 上取得，因為該工作已停滯。目前沒有預計的完成時間。

### UnitySDK 特定變更

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * 用於測試和建置資產套件組合的內部 Unity 版本已更新至 5.6.0。我們的 Unity SDK 仍與 4.7 到 5.6 的所有 Unity 版本相容。
  * 修正了 Unity 5.6 中 `UnityEditorExtensions` 的編譯問題。

## 170223

日期：2017 年 2 月 22 日

### API 變更

* PlayFab 排行榜現在會為每位玩家儲存大頭貼 URL。這可用來為排行榜項目參考玩家圖片。
* 所有排行榜 API 現在都可以擷取特定版本的排行榜。這適用於設定為使用重設排行榜的遊戲。
* 排行榜項目現在包含 [PlayerProfile](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel)，可用來顯示更詳細的排行榜，而不需要額外的 API 呼叫
* PlayFab 現在可以使用 Windows Hello 驗證用戶端，並驗證 Windows 市集收據

### 新 API

```
- [Client/UpdateAvatarUrl](xref:titleid.playfabapi.com.client.accountmanagement.updateavatarurl)
- `Client/RegisterWithWindowsHello`{/* [Client/RegisterWithWindowsHello](xref:titleid.playfabapi.com.client.authentication.registerwithwindowshello) */}
- `Client/GetWindowsHelloChallenge`{/* [Client/GetWindowsHelloChallenge](xref:titleid.playfabapi.com.client.authentication.getwindowshellochallenge) */}
- `Client/LoginWithWindowsHello`{/* [Client/LoginWithWindowsHello](xref:titleid.playfabapi.com.client.authentication.loginwithwindowshello) */}
- `Client/LinkWindowsHello`{/* [Client/LinkWindowsHello](xref:titleid.playfabapi.com.client.accountmanagement.linkwindowshello) */}
- `Client/UnlinkWindowsHello`{/* [Client/UnlinkWindowsHello](xref:titleid.playfabapi.com.client.accountmanagement.unlinkwindowshello) */}
- [Client/ValidateWindowsStoreReceipt](xref:titleid.playfabapi.com.client.platformspecificmethods.validatewindowsstorereceipt)
- [Server/SetFriendTags](xref:titleid.playfabapi.com.server.friendlistmanagement.setfriendtags)
```

### 新的 PlayStream 事件

* [player\_changed\_avatar](/zh-TW/services/playfab/api-references/events/PlayerIdentity/player-changed-avatar)

### WindowsSDK 特定變更

* 在 JSON 序列化程式中新增了一些遺漏的 null 檢查。

### 所有 SDK

* [testTitleData](https://github.com/PlayFab/SDKGenerator/blob/master/JenkinsConsoleUtility/testTitleData.md) 格式的小幅新增。這只適用於 SDK 隨附的 Example-Test 專案。

## 170130

日期：2017 年 1 月 29 日

### 重大變更

* 隨著今天的主要版本，變更了 [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK) 和 [NodeSDK](https://github.com/PlayFab/NodeSDK) 的資料夾結構。升級時，這可能會導致您專案中的某些連線中斷。(檔案名稱和檔案內容沒有變更。現在有了先前不存在的新 **TypeScript** 檔案。)

### API 變更

* 在 CDN API 中新增了說明文件。特別提到 CDN 不屬於我們的免費服務。
* Google 登入修正 (部落格文章待發佈)。

### 新的 PlayStream 事件

* `developer_logged_in`
* `developer_registered`
* [studio\_created](/zh-TW/services/playfab/api-references/events/DeveloperIdentity/studio-created)
* [studio\_user\_added](/zh-TW/services/playfab/api-references/events/DeveloperIdentity/studio-user-added)
* [studio\_user\_invited](/zh-TW/services/playfab/api-references/events/DeveloperIdentity/studio-user-invited)
* [studio\_user\_removed](/zh-TW/services/playfab/api-references/events/DeveloperIdentity/studio-user-removed)

### JavaScriptSDK 特定變更

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * 主要升級的發行日！版本號碼已更新為 1.0。
  * TypeScript 整合！
  * 存放庫清理：將 SDK 檔案與範例檔案分開。
  * 將我們的範例專案轉換為 TypeScript。
  * 請參閱[我們的部落格](https://blog.playfab.com/blog/typescript/)！

### NodeSDK 特定變更

* [NodeSDK](https://github.com/PlayFab/NodeSDK)
  * 主要升級的發行日！版本號碼已更新為 1.0
  * TypeScript 整合！
  * 將我們的範例專案轉換為 TypeScript
  * 請參閱[我們的部落格](https://blog.playfab.com/blog/typescript/)！

### CloudScript 範例

* 發行了新的範例存放庫。
* TypeScript 整合！
* 請參閱[我們的部落格](https://blog.playfab.com/blog/typescript/)！
* 以及[新的存放庫](https://github.com/PlayFab/SdkTestingCloudScript)！
* 我們會隨著時間擴充此存放庫。

### UnitySDK 特定變更

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * 修正了 **JsonWrapper** 並非在所有情況下都如預期般運作的問題。
  * 如需詳細資訊，請參閱我們的論壇文章：[https://community.playfab.com/questions/7599/cloudscript-getplayercombinedinfo-little-problem.html](https://community.playfab.com/questions/7599/cloudscript-getplayercombinedinfo-little-problem.html)
  * 移除了下列所有已淘汰的包裝函式類別，改用 `PlayFab.Json.JsonWrapper`：
    * `PlayFab.Json.JsonConvert` (請使用 `PlayFab.Json.JsonWrapper`)
    * `PlayFab.Json.SimpleJson` (請使用 `PlayFab.Json.JsonWrapper` 或 `PlayFab.Json.PlayFabSimpleJson`)
    * `PlayFab.SimpleJson` (請使用 `PlayFab.Json.JsonWrapper` 或 `PlayFab.Json.PlayFabSimpleJson`)
  * 重申 [160627](/zh-TW/services/playfab/release-notes/2016#160627) 中的一則注意事項：`UnityEngine.SimpleJson` 是 `UnityEngine.dll` 中的空命名空間，因此我們必須避免使用該識別碼。

### Unity 編輯器延伸模組

* 解決了當您的帳戶無法檢視任何工作室時，PlayFab 面板會無限重新載入的問題。
* 解決了當您從 PlayFab 面板選擇遊戲時，`PlayFabSharedSettings` (Scriptable Object) 無法正確儲存的問題。

## 170109

日期：2017 年 1 月 8 日

### 重大變更

* 移除了舊版 WindowsSDK 中的程式庫，必須在 Visual Studio 中重新建立。這些程式庫從未在 vs2015 中運作，因此強烈建議您直接更新至上週發佈的最新 WindowsSDK。

### API 變更

* 修正了文件中的錯字。

### 所有 SDK

* [新的入門指南](/zh-TW/services/playfab/get-started)

### SDKGenerator 特定變更

* [SDKGenerator](https://github.com/PlayFab/SDKGenerator)
  * [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK) 建置指令碼與其他 SDK 不一致。我們簡化了建置 [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK) 的 [SDKGenerator](https://github.com/PlayFab/SDKGenerator) 命令，使其與其他 SDK 一致。(SDK 本身沒有變更。)

### UnitySdk 特定變更

* [UnitySdk](https://github.com/PlayFab/UnitySDK)
  * PlayFabSettings 中的一些公用元素已加上 Obsolete 標記：`PlayFabSettings.PlayFabSharedSettings` `PlayFabSettings.DefaultPlayFabApiUrl` `PlayFabSettings.GetSharedSettingsObject()` `PlayFabSettings.ProductionEnvironmentUrl`

這些元素會在過渡期之後設為私用。

### WindowsSDK 特定變更

* 使用 BFG 清理了 GitHub 存放庫，並從歷程記錄中移除了所有大型檔案。請刪除您的複製或分支並重新建立，讓您的歷程記錄保持乾淨。

## 170102

日期：2017 年 1 月 1 日

### API 變更

* `Client/GetUserCombinedInfo` 已轉換為完全過時，我們已將其從 SDK 和文件中移除。

### Cocos2d-xSDK 特定變更

* [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK)
  * 修正了 PlayFab API 傳回無效回應時的當機問題。
  * 解決了一些編譯器警告。
  * 在我們的測試範例專案中新增了 Lambda 回呼函式的單元測試。

### UnitySDK 特定變更

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * 我們已在內部更新至 Unity 5.5，我們的 **.unitypackage** 檔案是使用此版本建置的

  * 一如往常，我們會繼續支援*所有 4.7 及更高版本的 Unity*。

  * 在許多靜態類別中新增了靜態建構函式，以強化 **Mono2x** 編譯器中的初始化順序。這應該可以解決我們在 iOS 中看到的一些 `PlayFabSharedSettings` 問題。

  * **IDFA/ADID** 現在可在 Unity 5.6 Beta 中正常運作。

  * \*\*已知問題：\*\*Unity 5.6 Beta 組建無法在 **Windows Server** (**OS**) 上運作，其中包括 PlayFab 遊戲伺服器裝載。如果這影響到您，請與 Unity 連絡。

### WindowsSDK 特定變更

* 主要升級的發行日！
* 部落格文章：[Windows SDK 更新已發行](https://api.playfab.com/blog/windows-SDK-update-released)
* 升級指南：[PlayFab WindowsSdk v0.x -> v1.x 升級指南](https://github.com/PlayFab/WindowsSdk/blob/master/UpgradeGuide.md)


## Related topics

- [PlayFab 2019 版本資訊](/zh-TW/services/playfab/release-notes/2019.md)
- [PlayFab 2018 版本資訊](/zh-TW/services/playfab/release-notes/2018.md)
- [版本資訊](/zh-TW/tools/tools-pc/xbox-pc-remote-tools/release-notes/index.md)
