> ## 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 릴리스 노트 2020

> 2020년 PlayFab Services SDK 릴리스 노트로, 해당 연도에 배포된 SDK 업데이트, 새로운 API 엔드포인트, 기능 추가 및 버그 수정을 담고 있습니다.

<Note>
  서비스 릴리스 및 제품 업데이트에 대한 릴리스 노트는 [PlayFab의 공개 GitHub 저장소](https://github.com/PlayFab/PlayFab)의 [릴리스 노트](https://github.com/PlayFab/PlayFab/releases) 섹션을 참조하세요.
</Note>

## 201218

날짜: 2020-12-18

* 사소한 버그 수정

## 201207

날짜: 2020-12-07

[2020년 12월 2일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.7)를 지원합니다.

### [UnrealMarketplacePlugin](https://www.unrealengine.com/marketplace/product/playfab-sdk) 관련 변경 사항

* 정적 설정 문제를 수정했습니다. [새 업그레이드 가이드](https://github.com/PlayFab/UnrealMarketplacePlugin/blob/master/UpgradeGuide_201207.md)를 따르세요.

## 201119

날짜: 2020-11-19

### [PostmanCollection](https://github.com/PlayFab/PostmanCollection) 관련 변경 사항

* 적절한 경우 Title Entity에 대한 자동 로그인이 추가되었습니다.

### [UnitySDK](https://github.com/PlayFab/UnitySDK) 관련 변경 사항

* Unity 2020의 스팸성 로그를 수정했습니다.
* 이제 Unity 2020이 완전히 지원됩니다.

### [XPlat C++ SDK](https://github.com/PlayFab/XPlatCppSdk) 관련 변경 사항

* 모든 서버가 시간 초과되는 경우의 QoS 검색 응답을 수정했습니다.

## 201027

날짜: 2020-10-27

[2020년 9월 2일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.6)를 지원합니다.

API에 사소한 업데이트가 있었습니다.

## 201014

날짜: 2020-10-14

[2020년 9월 2일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.6)를 지원합니다.

([Experimentation](https://learn.microsoft.com/en-us/rest/api/services/playfab/experimentation/experimentation) API의 새 메서드도 지원하며, 이는 곧 있을 서비스 릴리스에 나타날 예정입니다.)

PlayFab은 다양한 게임 엔진 및 프레임워크를 사용하여 크로스 플랫폼 및 크로스 디바이스 게임을 개발하는 데 저희 서비스를 사용할 수 있도록 하는 것을 목표로 하고 있습니다. 필요한 새 기능 개발에 더 잘 집중할 수 있도록 다음 SDK를 커뮤니티 기여를 위해 개방합니다. 더 궁금한 점이 있거나 지원이 필요하면 [PlayFab 커뮤니티 포럼](https://community.playfab.com/index.html)을 방문하세요. 다음 SDK에 대한 마지막 공식 업데이트입니다:

* [https://github.com/PlayFab/Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK)
* [https://github.com/PlayFab/Objective\_C\_SDK](https://github.com/PlayFab/Objective_C_SDK)
* [https://github.com/PlayFab/PhpSdk](https://github.com/PlayFab/PhpSdk)
* [https://github.com/PlayFab/PythonSdk](https://github.com/PlayFab/PythonSdk)

## 200914

날짜: 2020-09-14

[2020년 9월 2일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.6)를 지원합니다.

## 200901

날짜: 2020-09-01

[2020년 8월 26일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.5)를 지원합니다.

## 200817

날짜: 2020-08-17

[2020년 8월 12일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.3)를 지원합니다.

## 200805

날짜: 2020-08-05

[2020년 8월 5일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.2)를 지원합니다.

## 200730

날짜: 2020-07-30

[2020년 7월 15일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.5.1)를 지원합니다.

## 200713

날짜: 2020-07-13

[2020년 7월 1일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.4.3)를 지원합니다.

## 200615

날짜: 2020-06-15

[2020년 6월 10일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.3.3)를 지원합니다.

## 200602

날짜: 2020-06-02

[2020년 5월 27일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.3.1)를 지원합니다.

## 200518

날짜: 2020-05-18

[2020년 5월 13일 PlayFab 서비스 릴리스](https://github.com/PlayFab/PlayFab/releases/tag/2.2.4)를 지원합니다.

### [UnitySDK](https://github.com/PlayFab/UnitySDK) 관련 변경 사항:

* PlayFab SDK가 더 이상 Application.runInBackground = true를 설정하지 않습니다.
  * 게임 개발자는 앱 포커스 변경 시 또는 종료 전에 API 호출이 성공적으로 수행되는지 확인할 책임이 있습니다.

### [XPlat C++ SDK](https://github.com/PlayFab/XPlatCppSdk) 관련 변경 사항

* CURL HTTP 구현에서 더 많은 CURL 오류 상태가 모니터링되고 처리됩니다.
* Event Pipeline 기능이 이제 백그라운드 스레드 기능을 사용하고 지원합니다.
* TitleId가 설정되지 않은 경우 API 메서드는 이제 동기 또는 스레드 콜백에서 문제를 보고하는 대신 실시간으로 동기적으로 예외를 발생시킵니다.

## 200422

날짜: 2020-04-22

### [NodeSDK](https://github.com/PlayFab/NodeSDK) 업데이트:

* 핫픽스
  * 최근 NPM 패키지에 중요한 파일이 누락되어 가져올 수 없던 문제를 수정했습니다.
  * 일부 타입 정의가 적절한 타입 대신 "Number"로 잘못 설정된 문제를 수정했습니다.

## 200421

날짜: 2020-04-21

SDK가 2020-04-21 기준 PlayFab 서비스를 지원합니다. [서비스 릴리스 노트는 여기](https://github.com/PlayFab/PlayFab/releases/tag/2.1.4)에서 확인할 수 있습니다.

## 200402

날짜: 2020-04-02

### API 변경 사항

* [Insights](/services/playfab/data-analytics/legacy/insights/overview):
  * 새로운 [Insights](/services/playfab/data-analytics/legacy/insights/overview) 기능을 확인하세요!

## 200330

날짜: 2020-03-30

### API 변경 사항

* [Authentication](/services/playfab/identity/player-identity/authentication):
  * Apple 및 Nintendo용 새 [LoginIdentityProviders](/services/playfab/api-references/events/data-types/loginidentityprovider)가 추가되었습니다.
* [Multiplayer Server](/services/playfab/multiplayer):
  * 새 BuildRegion 관리 함수 [DeleteBuildRegion](https://learn.microsoft.com/en-us/rest/api/services/playfab/multiplayer/multiplayer-server/delete-build-region) 및 [UpdateBuildRegion](https://learn.microsoft.com/en-us/rest/api/services/playfab/multiplayer/multiplayer-server/update-build-region)이 추가되었습니다.
* [UnrealMarketplacePlugin](https://github.com/PlayFab/UnrealMarketplacePlugin):
  * 새 [Mac 빌드 헬퍼 스크립트](https://github.com/PlayFab/UnrealMarketplacePlugin/blob/master/4.24/ExampleProject/BuildMac.sh)가 추가되었습니다.

### [XPlat C++ SDK](https://github.com/PlayFab/XPlatCppSdk) 관련 변경 사항

* PlayFabEventPipeline의 일부 스레딩 문제를 수정했습니다.

### [UnrealMarketPlacePlugin](https://github.com/PlayFab/UnrealMarketplacePlugin) 관련 변경 사항

* 보안 버그 수정

## 200303

날짜: 2020-03-03

### API 변경 사항

* server.UnlinkXboxAccountRequest는 더 이상 XboxToken 연결 해제를 요구하지 않습니다.
* Experiments 기능과 API가 릴리스되었습니다.
  * 자세한 내용은 [블로그 게시물](https://api.playfab.com/blog/announcing-playfabs-experimentation-all-new-for-trustworthy-experiments)을 참조하세요.
* 새 메서드
  * client.LoginWithApple
  * client.LinkApple
  * client.UnlinkApple

## 200220

날짜: 2020-02-20

### 신규

* 자동화 - 새 [PlayFab용 Visual Studio Code 확장](https://marketplace.visualstudio.com/items?itemName=PlayFab.playfab-explorer)을 릴리스했습니다. 소스 코드는 [GitHub](https://github.com/PlayFab/vscode-playfab-explorer)에서 확인할 수 있습니다.

### [CPP Gsdk](https://github.com/PlayFab/gsdk) - 호환성이 깨지는 변경 사항

* 스레드 안전성 우려로 인해 다음 메서드의 시그니처가 수정되었습니다:
  | 메서드 이름                                                                               | 이전 반환 타입                                               | 새 반환 타입                                               |
  | ------------------------------------------------------------------------------------ | ------------------------------------------------------ | ----------------------------------------------------- |
  | `GSDK::getConfigSettings()`                                                          | `const std::unordered_map <std::string, std::string>&` | `const std::unordered_map <std::string, std::string>` |
  | `GSDK::getLogsDirectory()`                                                           | `const std::string&`                                   | `const std::string`                                   |
  | `GSDK::getSharedContentDirectory()`                                                  | `const std::string& `                                  | `const std::string`                                   |
  | [업그레이드 가이드](https://github.com/PlayFab/gsdk/blob/main/upgradeguide200219.md)를 참조하세요. |                                                        |                                                       |

## 200218

날짜: 2020-02-18

### API 및 문서 변경 사항:

* 새 API 메서드:
  * admin.CreateInsightsScheduledScalingTask
  * multiplayer.GetMultiplayerSessionLogsBySessionId
* 새 기능 및 메서드:
  * Cloud Script를 위한 새 메커니즘인 Azure functions를 이제 PlayFab에서 사용할 수 있습니다.
  * [기능 문서](/services/playfab/live-service-management/service-gateway/automation/cloudscript-af)
  * 새 메서드 목록:
    * cloudscript.ExecuteFunction
    * cloudscript.ListFunctions
    * cloudscript.ListHttpFunctions
    * cloudscript.ListQueuedFunctions
    * cloudscript.PostFunctionResultForEntityTriggeredAction
    * cloudscript.PostFunctionResultForFunctionExecution
    * cloudscript.PostFunctionResultForScheduledTask
    * cloudscript.RegisterHttpFunction
    * cloudscript.RegisterQueuedFunction
    * cloudscript.UnregisterFunction
* API 메서드 변경:
  * multiplayer.GetMultiplayerServerLogs에서 Region 요청 매개변수가 더 이상 필요하지 않습니다.

### [CSharpSdk](https://github.com/PlayFab/CSharpSDK) 관련 변경 사항:

* PlayFab Multiplayer의 QoS ping 계산을 전면 개편하고 개선했습니다.

## 200213

날짜: 2020-02-13

PlayFab의 Multiplayer Servers는 Dynamic Standby라는 자동 확장 개선 기능을 도입합니다. 이 기능은 대기 서버 임계값 수준을 모니터링하고 게임 서버의 프로비저닝 증가를 동적으로 활성화하여 대규모로 수요를 충족할 수 있도록 합니다. 이 기능은 Multiplayer 프로그래밍 인터페이스에 "DynamicStandby"라는 새 객체를 추가합니다. Dynamic Standby 객체는 [BuildRegionParams](https://learn.microsoft.com/en-us/rest/api/services/playfab/multiplayer/multiplayer-server/update-build-regions#buildregionparams) 객체의 선택적 속성입니다.

Dynamic Standby는 고급 게임 서버 기능이며 기본값에서 설정을 편집할 때는 주의해야 합니다. Dynamic Standby 구성은 Game Manager 개발자 포털에서 수행하거나 Dynamic Standby 객체의 속성을 프로그래밍 방식으로 편집하여 수행할 수 있습니다. Dynamic Standby에 대해 자세히 알아보려면 [PlayFab Multiplayer Servers](/services/playfab/multiplayer/servers/dynamic-standby) 온라인 문서의 사용자 가이드를 방문하세요.

## 200128

날짜: 2020-01-28

### Multiplayer Server 이벤트 변경 사항:

이벤트 이름을 나머지 PlayFab 이벤트 이름과 통일하기 위해 Multiplayer Server 이벤트 명명 규칙을 변경합니다. 또한 Multiplayer Server 기능이 Public Preview가 되기 전에 이러한 변경을 사전에 진행합니다. 변경 사항은 다음과 같습니다:

* Multiplayer Server 이벤트 이름은 PascalCasing을 사용하도록 업데이트됩니다.
* Multiplayer Server 이벤트는 더 이상 레거시 v1 PlayStream 이벤트 형식으로 전송되지 않으며, v2 PlayStream 이벤트 형식만 지원됩니다.

이 두 변경 사항은 특히 이름의 부정확한 대소문자 처리 또는 Multiplayer Server 이벤트의 PlayStream v1에 종속된 개발자에게 호환성이 깨지는 변경 사항을 나타냅니다. Game Manager UI(cloud script, insights, rules 또는 scheduled tasks)에서 이벤트 이름을 사용하는 개발자에게는 호환성이 깨지지 않습니다. 이 변경 사항은 2020년 2월 26일 수요일 오전 10:00 PST부터 적용됩니다. 변경 날짜 전에 코드를 이러한 변경에 맞게 조정하세요.

**형식 변경**

일반적으로 PlayFab 이벤트는 다음과 유사한 형식을 가집니다:

```text theme={null}
{
   'Event Name':'my_event'
   'Payload':
   {
      'prop1':1
      'prop2':2
      'camelcase':3
      }
}
```

근본적인 형식 변경은 다른 PlayStream 이벤트와의 일관성을 위해 이벤트 Payload 객체의 속성이 PascalCasing을 사용하도록 업데이트된다는 점입니다. 따라서 새 속성 이름은 다음 형식을 따르게 됩니다:

```text theme={null}
{
   'Event Name':'my_event'
   'Payload':
   {
      'Prop1':1
      'Prop2':2
      'CamelCase':3
      }
}
```

Multiplayer 서버 이벤트의 속성 이름이 이제 PascalCasing을 사용하도록 업데이트된 것에 유의하세요.

이 변경 사항은 (a) Kusto 쿼리 또는 (b) PlayFab cloud script에서 Multiplayer 서버 이벤트를 처리하는 고객에게 영향을 미칩니다. 마지막으로, 고객이 PlayFab Event Archive 기능(현재 public preview)을 사용하는 경우 내보낸 Multiplayer 서버 이벤트의 속성도 PascalCasing으로 형식이 지정됩니다.

**스키마 변경**

두 번째 변경 사항은 Multiplayer 서버 이벤트가 PlayStream v2 형식으로만 전달되고 더 이상 레거시 PlayStream v1 형식으로는 전달되지 않는다는 점입니다.

PlayFab은 현재 두 개의 이벤트 스키마를 지원합니다.

| 스키마 형식        | 설명                 | Multiplayer 이벤트 네임스페이스 값       |
| ------------- | ------------------ | ------------------------------ |
| PlayStream V1 | 플레이어 이벤트를 중심으로 설계됨 | com.playfab.events.multiplayer |
| PlayStream V2 | 엔티티 이벤트를 중심으로 설계됨  | playfab.servers                |

일반적으로 PlayFab API는 PlayStream V1 형식 또는 PlayStream V2 형식으로 이벤트를 생성합니다. 예를 들어, 플레이어 아이템을 부여하는 API는 PlayStream V1 이벤트를 생성했습니다. 반면 엔티티 아이템을 부여하는 API는 PlayStream V2 이벤트를 생성했습니다.

Multiplayer Servers가 PlayStream V2가 도입된 시점과 비슷한 시기에 public preview로 출시되었기 때문에 Multiplayer Server 기능은 PlayStream V1 및 V2 형식을 모두 지원했습니다. 즉, 모든 Multiplayer Server API 호출은 V1 및 V2 형식으로 두 개의 이벤트를 생성했습니다.

중복을 제거하기 위해 'com.playfab.events.multiplayer.servers' 네임스페이스의 Multiplayer 서버 이벤트는 사용 중단됩니다. 'playfab.servers' 네임스페이스의 이벤트는 계속 지원됩니다.

V1 및 V2 형식의 Multiplayer Server 이벤트를 구분하려면 이벤트의 namespace 속성을 확인하세요. 네임스페이스는 위 표의 세 번째 열에 지정되어 있습니다. JSON 표현은 다음 형식과 유사합니다:

```text theme={null}
{
   'FullName':
   {
      'Namespace':'abc',
      'Name':'xyz'
   }
}
```

검색할 속성 이름은 `Namespace`입니다.

## 200121

날짜: 2020-01-21

### API 및 문서 변경 사항:

* PlayFab API 문서 사이트가 [/gaming/playfab](https://learn.microsoft.com/en-us/gaming/services/playfab/)로 완전히 마이그레이션되었습니다.
  * 대부분의 `api.playfab.com` 링크가 이에 상응하는 `learn.microsoft.com` 링크로 변환되었습니다.
  * 대부분의 원본 링크는 새 사이트로 올바르게 리디렉션됩니다.
  * 이전 링크가 작동하지 않으면 [포럼](https://community.playfab.com/index.html)에서 알려주세요.
* 새 API 메서드:
  * multiplayer.ListServerBackfillTicketsForPlayer
  * multiplayer.GetServerBackfillTicket
  * multiplayer.CreateServerBackfillTicket
  * multiplayer.CancelServerBackfillTicket
  * multiplayer.CancelAllServerBackfillTicketsForPlayer
  * server.UnlinkPSNAccount
  * server.LinkPSNAccount

### [LuaSdk](https://github.com/PlayFab/LuaSdk) 관련 변경 사항:

* 사소한 로그인 버그 수정

### [PhpSdk](https://github.com/PlayFab/PhpSdk) 관련 변경 사항:

* 엄격한 정확성을 위한 사소한 구문 수정

### [UnitySDK](https://github.com/PlayFab/UnitySDK) 관련 변경 사항:

* GitHub 저장소 및 프로젝트 구조를 업데이트합니다.
  * Unity EdEx 패키지를 (UnityEditorExtensions)\[[https://github.com/PlayFab/UnityEditorExtensions](https://github.com/PlayFab/UnityEditorExtensions)]에서 (UnitySdk)\[[https://github.com/PlayFab/UnitySDK/blob/master/Packages/PlayFabEditorExtensions.unitypackage](https://github.com/PlayFab/UnitySDK/blob/master/Packages/PlayFabEditorExtensions.unitypackage)]로 이동합니다.
  * 향후 별도의 UnityEditorExtensions 저장소도 단계적으로 폐지할 예정입니다.


## Related topics

- [PlayFab 릴리스 노트 2021](/ko/services/playfab/release-notes/2021.md)
- [PlayFab 릴리스 노트 2022](/ko/services/playfab/release-notes/2022.md)
- [PlayFab 릴리스 노트 2015](/ko/services/playfab/release-notes/2015.md)
- [PlayFab 릴리스 노트 2018](/ko/services/playfab/release-notes/2018.md)
- [PlayFab 릴리스 노트 2019](/ko/services/playfab/release-notes/2019.md)
