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

# Notas de versão do PlayFab 2017

> Notas de versão do SDK PlayFab Services de 2017, incluindo atualizações de versão do SDK, novas adições de API, preterições e correções lançadas ao longo do ano.

## 171204

Data: 4 de dezembro de 2017

### Alterações do SDK do Unreal (Cpp e Bp)

* Ambos os SDKs foram atualizados para o **Unreal 4.18.1**.
* As versões mais antigas ainda funcionam, mas exigem remover o comentário de `#defines` nos arquivos \_.build.cs.

## 171127

Data: 27 de novembro de 2017

### Alterações de API

* Um recurso de inventário que permite itens de "edição limitada" saiu do beta.

* Este recurso permite definir que apenas um número fixo de um determinado `itemId` esteja disponível no seu jogo.

* Removida uma propriedade de moeda virtual dos métodos de API que usam "[ProfileModel](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel)", pois essa informação nunca é fornecida nem está correta. Ela voltará... algum dia.

### Novos métodos de 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)
  * Usado para o [processamento de pagamentos específico da XSolla](/pt-BR/services/playfab/economy-monetization/economy/tutorials/non-receipt-payment-processing)
* client.[ReportDeviceInfo](xref:titleid.playfabapi.com.client.analytics.reportdeviceinfo)
  * Este método de API não deve ser chamado diretamente. No momento, é um recurso integrado dos SDKs do Unity e do Lumberyard. Ele pode ser desabilitado com a [política de API](/pt-BR/services/playfab/api-references/api-access-policy). Além disso, em breve adicionaremos outra opção para desabilitá-lo na página de configurações do título no Game Manager.

### Códigos de erro de métodos de API atualizados

* 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)

### Atualizações específicas do SDK

* [UnitySdk](https://github.com/PlayFab/UnitySDK): agora estamos compilando todos os arquivos de pacote do Unity publicados com o Unity 2017.2.0f3.
* Para os testes, atualizamos internamente para a versão mais recente de cada versão principal.secundária, do Unity 4.7.2f1 ao 2017.1.2f1.
* Servidor de jogo de teste de exemplo do Unity: correção aplicada a `HttpHelper` para corrigir a validação SSL em solicitações `SignalR`.
* [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK): AirSdk do exemplo atualizado para a v27.
* [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK): ainda estamos direcionando para a 3.15.1, apesar do lançamento do Cocos 3.16 (fique ligado).
* SdkTestingCloudScript e [NodeSDK](https://github.com/PlayFab/NodeSDK): projetos de exemplo do VS atualizados para dar suporte ao VS/msbuild 2017.
* WindowsSDK: este é o último build do pacote NuGet direcionado ao Visual Studio 2013:
  * [Pacote NuGet do WindowsSdk para VS 2013](https://www.NuGet.org/packages/com.playfab.windowssdk.v120/1.19.171127)
  * Estamos atualizando nossas máquinas de build automatizado e não estamos instalando o VS 2013 nas novas.
  * O [pacote NuGet mais recente](https://www.NuGet.org/packages/com.playfab.windowssdk.v140/) continuará funcionando no VS 2015 e 2017.

## 171106

Data: 6 de novembro de 2017

### Novos métodos de API

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

### Evento do PlayStream atualizado

* [sent\_email](/pt-BR/services/playfab/api-references/events/TitleCommunications/sent-email) ganha novos campos: Body e Subject.

### Todos os SDKs

* **PEQUENA ALTERAÇÃO SIGNIFICATIVA NO SDK:** `ForgetClientCredentials()` foi renomeado para `ForgetAllCredentials()`.
* Isso faz parte de um recurso "em breve", que será anunciado quando concluído.

## 171102

Data: 2 de novembro de 2017

### Novo recurso do PlayFab

* Envie emails para seus jogadores usando modelos.

### Novos métodos de 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)

### Atualização da documentação

* [Nova lista de códigos de erro relevantes para todas as chamadas de API do PlayFab](/pt-BR/services/playfab/api-references/global-api-method-error-codes)
* Códigos de erro atualizados para: 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)

### Novos eventos do PlayStream

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

### Atualização específica do Unreal

* Nosso builder automático não conseguiu publicar os SDKs do Unreal para os builds 171016 e 171026. Resolvemos o problema no builder automático, publicamos a versão 171026 posteriormente, e os releases voltaram ao normal

### Alterações específicas do Unity

* **PEQUENA ALTERAÇÃO SIGNIFICATIVA:** `ForgetClientCredentials` foi renomeado para `ForgetAllCredentials`.
* Isso faz parte de um novo recurso que será lançado em breve. Estamos renomeando `ForgetClientCredentials` para `ForgetAllCredentials` em todos os SDKs nos próximos releases.

## 171026

Data: 26 de outubro de 2017

### Alterações na documentação de API

* Atualização dos códigos de erro dos métodos de API.

* Removidos da lista por método de API muitos códigos de erro que são universais para todos os métodos de API. Uma nova página descreve os códigos de erro universais.

* **Códigos universais removidos:**
  * InvalidParams
  * OverLimit
  * DataUpdateRateExceeded
  * AccountBanned

* Esses erros (e outros, que serão publicados em um documento separado) podem ser retornados por qualquer método de API e devem ser tratados adequadamente.

* Adicionados novos códigos de erro a várias dezenas de métodos de API, e removidos alguns códigos falsos. As listas de códigos de erro devem estar muito mais precisas para os retornos de erro específicos de cada método. Este ainda é um processo contínuo, portanto haverá mais atualizações.

* Vários métodos de API que envolvem moeda virtual podem reduzir o saldo para menos de zero. Nós os rotulamos adequadamente.

### Alterações de API

* **Novos métodos de API:**
  * admin.[DeleteTitle](xref:titleid.playfabapi.com.admin.accountmanagement.deletetitle)
  * Os servidores de jogo hospedados dão suporte a **IPv4** e **IPv6**.
  * Os servidores de jogo personalizados agora dão suporte a **IPV6**. Todas as instâncias de servidor de jogo iniciadas recentemente recebem endereços **IPV4** e **IPV6**, que são exibidos na guia **Servers** do Game Manager e retornados pelas APIs de matchmaking. Os clientes podem se conectar ao endereço **IPV4** ou **IPV6** do servidor atribuído.
  * Todos os métodos de API que retornam endereços de servidor agora retornam ambas as opções: client.\[StartGame]\(xref:titleid.playfabapi.com.client.matchmaking).\[StartGameResult]\(xref:titleid.playfabapi.com.client.matchmaking)

### Alterações no Game Manager

* Agora você pode excluir títulos usando a nova API Admin/DeleteTitle ou na página de estúdios do Game Manager, conforme mostrado na imagem a seguir.
  <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

Data: 16 de outubro de 2017

### Alterações de API

* Adicionado um parâmetro a 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), para o Badge do iOS.
* Esclarecida a natureza específica do dispositivo de vários parâmetros.

### Novos eventos do PlayStream

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

### Alterações específicas do JavaScriptSDK

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * Nosso SDK agora se integra ao [Phaser.io](https://phaser.io/).

### Alterações específicas do LuaSDK

* [LuaSDK](https://github.com/PlayFab/LuaSDK)
  * Corrigimos nosso pipeline de publicação do Lua, e o LuaSDK voltou a ser atualizado corretamente.

### Alterações específicas do UnitySdk

* [UnitySdk](https://github.com/PlayFab/UnitySDK)
  * Tratamos uma [regressão no Unity](https://issuetracker.unity3d.com/issues/unitywebrequest-getresponseheaders-method-returns-null-on-android-devices) do nosso lado, e ela não deve mais afetar os clientes do PlayFab.

~~**Alterações específicas do UnrealCppSdk:**~~ (ATUALIZADO: este SDK foi preterido. Para o novo SDK do Unreal, consulte [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~Um dos nossos clientes criou um plug-in complementar para o nosso SDK, que integra o Unreal OnlineSubsystem e o SDK do PlayFab~~
* ~~Você pode conferi-lo [aqui](https://gitlab.com/mtuska/OnlineSubsystemPlayFab).~~

### Exemplo Unicorn Battle

* Excluído o plug-in de push personalizado do PlayFab e atualizado para mensagens push do FCM.

## 170925

Data: 5 de setembro de 2017

### Alterações de API

* Removidas algumas APIs beta que nunca foram tornadas públicas. Isso não deve afetar nenhum cliente atual nem títulos ao vivo.
* Ignoramos as verificações padrão de cabeçalho no nível da linguagem em nosso mecanismo de CloudScript. Isso significa que vários cabeçalhos de http.request() do CloudScript que antes eram rejeitados agora devem funcionar.

### Atualização global de notificações por push

* Consulte [nosso blog](https://blog.playfab.com/blog/push-sep-17) para obter detalhes sobre as melhorias nas notificações por push

### Novos eventos do PlayStream

* [player\_device\_info](/pt-BR/services/playfab/api-references/events/PlayerIdentity/player-device-info)
* Os jogos que usam o UnitySDK mais recente agora podem ver alguns dados analíticos básicos sobre seus clientes. O SnowFlake é ideal para visualizar e analisar essas informações, mas elas também estão disponíveis no PlayStream Event History.
* player\_updated\_membership

### Alterações específicas do JavaScriptSDK

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * Adicionados ao JavaScriptSDK alguns minirrecursos que existem em outros SDKs:
  * Agora você pode injetar cabeçalhos extras nas solicitações (removendo um dos impedimentos para logins com criptografia dupla com este SDK).
  * Adicionada uma nova função: `PlayFabClientSDK.ForgetClientCredentials()`
  * Esta é uma função de conveniência que redefine o cliente após o desligamento ou logout.
  * `PlayFab.GenerateErrorReport()`
  * Esta é uma função de conveniência que converte o resultado de erro de uma chamada ao PlayFab com falha em uma única descrição completa de como a chamada falhou.
* Adicionados retransmissores de dados opcionais às solicitações de API do PlayFab:
  * `result.customData`
    * É qualquer objeto contextual que você pode anexar à solicitação e que pode fornecer contexto para o resultado. Por exemplo, você pode fornecer um objeto de jogador local do cliente como `customData` de uma chamada **UpdatePlayerStatistics** e definir as estatísticas atualizadas nesse jogador depois que a chamada remota for bem-sucedida.
  * `result.request`
    * A solicitação das suas chamadas de API agora é retransmitida para o resultado, o que pode fornecer contexto para o resultado. Por exemplo, ao chamar `UpdatePlayerStatistics`, você pode ler as estatísticas atualizadas da solicitação ao atualizar seu objeto de jogador local.

### Alterações específicas do UnitySDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Novo recurso experimental: este release do PlayFab UnitySDK agora permite, opcionalmente, ver informações dos dispositivos dos seus jogadores. Exemplos de informações que você pode ver: memória, resolução, user-agent, tipo de dispositivo, versão do sistema operacional etc.

~~**Alterações específicas do UnrealCppSdk:**~~ (ATUALIZADO: este SDK foi preterido. Para o novo SDK do Unreal, consulte [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~Atualizado para o Unreal 4.17~~
* ~~Dividido em três plug-ins separados, cada um com funcionalidades diferentes~~
* ~~Upgrades significativos em geral~~

## 170828

Data: 28 de agosto de 2017

### Alterações da API de cliente

* ~~client.\[GetCurrentGames].\[result].Games\[i].GameServerState foi preterido e substituído por \[GameServerStateEnum]~~.
  ~~- GameServerState era serializado como um inteiro, o que era um erro. O novo campo é uma cadeia de caracteres de enum adequada.~~ (ATUALIZADO: preterido. Consulte [Servers](/pt-BR/services/playfab/multiplayer/servers))

### Outras alterações de API

* Preterimos os seguintes métodos de API nas APIs Admin e Server.
  * [GetActionsOnPlayersInSegmentTaskInstance](xref:titleid.playfabapi.com.admin.scheduledtask.getactionsonplayersinsegmenttaskinstance) - Foi rotulado acidentalmente como preterido, mas foi um erro que já foi revertido.
* [SendPushNotification](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification) agora pode especificar [TargetPlatforms](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest)
* Adicionados alguns esclarecimentos sobre quais parâmetros funcionam em quais plataformas para [SendPushNotificationRequest](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest) (não é recomendado usar parâmetros sem suporte em uma plataforma de destino).
* Adicionadas algumas informações sobre as [restrições](/pt-BR/services/playfab/community/associations/groups/using-shared-group-data) dos [grupos compartilhados](xref:titleid.playfabapi.com.client.sharedgroupdata.createsharedgroup) à documentação de grupos compartilhados (especificamente, que eles não podem ser usados para algo como guildas).
* Os [perfis de jogador](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel) agora podem armazenar um [endereço de email de contato](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#contactemailinfomodel) do jogador.

### Novos eventos do PlayStream

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

## 170814

Data: 14 de agosto de 2017

### Atualizações de API

* Os métodos de API server.[GetFriendsList](xref:titleid.playfabapi.com.server.friendlistmanagement.getfriendslist) e client.[GetFriendsList](xref:titleid.playfabapi.com.client.friendlistmanagement.getfriendslist) agora retornam um [PlayerProfile](xref:titleid.playfabapi.com.client.friendlistmanagement.getfriendslist#playerprofilemodel) para cada um dos seus amigos.

### Atualizações específicas do CSharpSdk

* O SDK agora inclui um arquivo chamado [NewtonSoftJsonWrapper.cs](https://github.com/PlayFab/CSharpSDK/blob/master/PlayFabSDK/source/Json/NewtonsoftWrapper.cs), que permite trocar o serializador SimpleJson incluído pelo pacote NuGet do NewtonSoft.
* O arquivo inclui instruções sobre como usá-lo.

## 170807

Data: 7 de agosto de 2017

### Novos métodos de API

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

### Métodos de API preteridos

* Esses métodos de API nunca funcionaram de forma tão completa quanto deveriam. Para resolver isso, recomeçamos e criamos a nova API [DeletePlayer](xref:titleid.playfabapi.com.admin.accountmanagement.deleteplayer) na seção anterior, e estes foram preteridos:
* `admin.ResetUsers`
* `admin.DeleteUsers`

### Atualizações de API

* `PlayerProfile` (em [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)) contém um novo campo, `ContactEmailAddresses`, que contém todas as informações de endereço de email que você tenha salvo sobre seus jogadores.

### Eventos do PlayStream

* Novo evento: [auth\_token\_validated](/pt-BR/services/playfab/api-references/events/PlayerIdentity/auth-token-validated)
* Novo evento: [player\_removed\_title](/pt-BR/services/playfab/api-references/events/PlayerIdentity/player-removed-title)
* Novo evento: [player\_updated\_contact\_email](/pt-BR/services/playfab/api-references/events/PlayerIdentity/player-updated-contact-email)
* Novo evento: [player\_verified\_contact\_email](/pt-BR/services/playfab/api-references/events/PlayerIdentity/player-verified-contact-email)
* Novo evento: [sent\_email](/pt-BR/services/playfab/api-references/events/TitleCommunications/sent-email) (ainda em beta, mas os eventos já são públicos)
* Novo campo no evento: [player\_realmoney\_purchase](/pt-BR/services/playfab/api-references/events/Player/player-realmoney-purchase).TransactionId

~~**Alterações do LumberyardSdk:**~~

* ~~**AVISO DE UPGRADE:** este SDK não é mais compatível com versões anteriores do Lumberyard.~~
* ~~Este release do PlayFab LumberyardSdk não funciona mais com a versão 1.3 do Lumberyard. Ele foi atualizado e agora é direcionado ao Lumberyard 1.9. Provavelmente ele será direcionado à 1.10 em breve, mas, novamente, sem compatibilidade retroativa com a 1.9 ou anteriores. Consulte [nosso blog](https://blog.playfab.com/blog/cpp-SDK-updates) para obter detalhes.~~

~~**UnrealCppSdk:**~~ (**ATUALIZADO**: este SDK foi preterido. Para o novo SDK do Unreal, consulte [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK)).

~~**SDK do Unreal:**~~ (**ATUALIZADO**: este SDK foi preterido. Para o novo SDK do Unreal, consulte [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~O PlayFab UnrealBlueprintSdk agora foi renomeado como "Unreal SDK"~~
* ~~O SDK do Unreal foi atualizado para a 4.16, com algumas pequenas correções~~
* ~~Também estamos removendo o suporte a versões mais antigas do Unreal, que exigem versões mais antigas do Visual Studio~~
* ~~Agora damos suporte da 4.14 à 4.16~~
* ~~Seu projeto pode continuar funcionando em versões mais antigas do Visual Studio, mas só podemos dar suporte e testar o Visual Studio 2015 e posteriores~~
* ~~Leia [nosso blog](https://blog.playfab.com/blog/visual-studio-2013-deprecation-notice) para obter mais informações~~

### Unity Editor Extensions

* Corrigidos problemas no download e upload de revisões do CloudScript.
* Corrigidos problemas para usuários cujo idioma do sistema usa letras não ASCII.

## 170710

Data: 10 de julho de 2017

### Alterações de API

* Um recurso Enterprise para logins com criptografia dupla saiu do beta e agora está em produção.
* **Novos métodos de 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) tem uma nova propriedade, LobbyId, que permite tentar registrar novamente um jogo existente
* server.[SendPushNotificationRequest](xref:titleid.playfabapi.com.server.accountmanagement.sendpushnotification#sendpushnotificationrequest) agora aceita uma nova propriedade, Package, que define todos os recursos avançados de push do Android.

### Alteração significativa do SDK

* admin.[SetupPushNotificationRequest](xref:titleid.playfabapi.com.admin.title-widedatamanagement.setuppushnotification#setuppushnotificationrequest).Platform agora é definido como um enum em vez de uma cadeia de caracteres. Esta não é uma alteração significativa na API (pois os enums são transmitidos como cadeias de caracteres), mas exige que alguns usuários convertam suas cadeias de caracteres para os valores de enum no código.

### Alterações em todos os SDKs

* Pequena alteração significativa no SDK: a maioria dos SDKs perdeu um campo opcional em várias solicitações chamado UseSpecificVersion, que era uma forma alternativa de definir o campo adjacente Version como nulo. Nem todas as linguagens têm a capacidade de definir um inteiro como nulo na solicitação, e esse campo só tinha utilidade nos SDKs relevantes (especificamente o Unreal). Se você estiver usando esse campo, basta removê-lo e definir o campo adjacente Version como nulo quando apropriado.

### Atualização do Unity EditorExtensions

* O painel de sinalizadores foi atualizado.
* O sinalizador `ENABLE/DISABLE_IDFA` agora pode ser alternado.
* Exibe sinalizadores que não são do PlayFab e permite removê-los (use com cuidado e não remova sinalizadores de que você precisa).

### Atualizações de dependências do SDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK) compilado, empacotado e testado com o Unity2017.1.0f1.
  * Apenas alterações triviais e não significativas.
* [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK) testado com o AirSDK v26.
  * SDK inalterado, exemplo atualizado para a v26.
* [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK) compilado e testado com o Cocos 3.15.1.
* O Cocos 3.14->3.15 continha alterações que quebraram nosso exemplo, o que, por sua vez, exigiu a atualização do exemplo. O exemplo ainda funciona da 3.13 à 3.15, mas talvez não funcione com versões mais antigas do Cocos. O SDK não foi alterado e deve funcionar com a maioria das versões 3.X mais recentes do Cocos.

## 170612

Data: 12 de junho de 2017

### Alterações na documentação

* Muitas pequenas revisões em dezenas de métodos de API para maior clareza
* Vários agrupamentos da documentação, cada um contendo apenas um método de API, foram mesclados em um único grupo chamado "Platform Specific Methods".
* O grupo "Matchmaking APIs" foi renomeado para "Matchmaking" para ser consistente com outros grupos.
* Muitos campos de cadeia de caracteres com restrição de tamanho agora descrevem os intervalos permitidos.

### Alterações em todos os SDKs

* Atualizados e corrigidos muitos links quebrados em todos os READMEs dos SDKs.

### Alterações específicas do UnitySDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Agora damos suporte a várias versões da API do Android e do Google Play Services. Leia mais detalhes [aqui](https://github.com/PlayFab/UnitySDK/tree/master/Packages).
  * Isso conclui, por enquanto, as alterações planejadas no plug-in de push do Unity + Android. Informe-nos se você tiver mais solicitações [aqui](https://community.playfab.com/questions/10840/android-plugin-upgrade-discussion.html).

## 170530

Data: 30 de maio de 2017

### Alterações de API

* **ALTERAÇÃO SIGNIFICATIVA:** em server.[ReportPlayer](xref:titleid.playfabapi.com.server.playeritemmanagement.reportplayer), removemos imediatamente o campo `titleId` em [ReportPlayerServerRequest](xref:titleid.playfabapi.com.server.playeritemmanagement.reportplayer#reportplayerserverrequest) (não apenas o preterimos). Todas as denúncias agora vão para o próprio título e não podem ser feitas para outro título.
  * Esta precisou ser uma alteração significativa, pois, caso contrário, seria uma leve vulnerabilidade entre títulos. [Entre em contato conosco](https://community.playfab.com/questions/ask.html) se precisar de ajuda com essa alteração.
* Em client.[ReportPlayer](xref:titleid.playfabapi.com.client.accountmanagement.reportplayer) e server.[ReportPlayer](xref:titleid.playfabapi.com.server.playeritemmanagement.reportplayer), preterimos result.Updated em ambos os casos. Ele é sempre verdadeiro, e a chamada de API retorna um erro se o jogador estiver acima do limite de denúncias. Alteramos essa condição de erro para OverLimit para corresponder a outros limites.
* Todos os [métodos de login](xref:titleid.playfabapi.com.client.authentication) agora podem retornar um [objeto de perfil de jogador](xref:titleid.playfabapi.com.client.authentication.loginwithandroiddeviceid#playerprofilemodel), se solicitado, que contém informações antes disponíveis apenas nos resultados de placares.

### Novos métodos de API

* client.[GetPlayerProfile](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile) e server.[GetPlayerProfile](xref:titleid.playfabapi.com.server.accountmanagement.getplayerprofile)
  * Retorna informações antes disponíveis apenas nos resultados de placares.

### Documentação

* Pequenas atualizações; vários exemplos não contêm mais informações sobre campos preteridos.
* Definidos os limites de tamanho de retorno e de log de [ExecuteCloudScript](xref:titleid.playfabapi.com.client.server-sidecloudscript.executecloudscript).

### Novos eventos do PlayStream

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

### Alterações específicas do UnitySDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Nosso plug-in de push do Android foi reformulado.
  * [Postagem no blog](https://blog.playfab.com/blog/push-upgrade-5-22)
  * [Guia novo/atualizado](/pt-BR/services/playfab/live-service-management/game-configuration/title-communications/push-notifications/push-notifications-for-android)

### Alterações específicas do CSharpSDK

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * Agora é possível especificar cabeçalhos extras que são injetados em uma solicitação de API.
  * Este é um recurso exclusivo do Enterprise, específico para solicitações de login com criptografia dupla.

## 170508

Data: 8 de maio de 2017

### Alterações de API

* **ALTERAÇÃO SIGNIFICATIVA:**
  * [ExecuteCloudScript](xref:titleid.playfabapi.com.client.server-sidecloudscript.executecloudscript) não serializa o valor de retorno da sua chamada se ele for muito grande.
  * [ExecuteCloudScript](xref:titleid.playfabapi.com.client.server-sidecloudscript.executecloudscript) não serializa os logs da sua chamada se eles forem muito grandes.
* Em qualquer uma dessas condições, a chamada ainda retorna 200/êxito, mas as propriedades FunctionResult e/ou Logs serão nulas.

### Alterações em eventos do PlayStream

* [player\_vc\_item\_purchased](/pt-BR/services/playfab/api-references/events/Player/player-vc-item-purchased) e [character\_vc\_item\_purchased](/pt-BR/services/playfab/api-references/events/Character/character-vc-item-purchased) agora contêm um parâmetro StoreId que indica qual loja foi usada para fazer uma compra.
* **Novo evento:**
  * [title\_profile\_view\_constraints\_changed](/pt-BR/services/playfab/api-references/events/PlayerIdentity/title-profile-view-constraints-changed)

### Atualizações do CSharpSDK

* [CSharpSDK](https://github.com/PlayFab/CSharpSDK)
  * Excluídos alguns arquivos de origem não utilizados no [CSharpSDK](https://github.com/PlayFab/CSharpSDK).
  * Isso não deve afetar nenhum projeto existente nem o pacote NuGet, pois esses arquivos não eram referenciados pela solução do Visual Studio.

### Atualização da coleção do Postman

* Vários parâmetros de solicitação comuns agora usam variáveis de ambiente.
* Especificamente, TitleId=\{\{TitleId}}, PlayFabId=\{\{PlayFabId}}, CharacterId=\{\{CharacterId}} e CatalogVersion=\{\{PrimaryCatalogName}}

## 170424

Data: 24 de abril de 2017

### Release de hotfix do SDK

* **Atualizações do [JavaSDK](https://github.com/PlayFab/JavaSDK):**
  * Agora publicamos arquivos Jar para o SDK, um para o código e outro para a documentação Java, que você pode importar no seu projeto Java em vez de copiar e colar código. Agradecemos a Will Iverson  por nos ajudar a melhorar a usabilidade do nosso [JavaSDK](https://github.com/PlayFab/JavaSDK)
* **Atualizações do UnityEditorExtensions:**
  * Resolvemos algumas exceções no momento da instalação. Especificamente, não é mais necessário reiniciar o Unity após a primeira instalação.
  * Além disso, foi corrigido um problema em que a API de cliente às vezes era desabilitada indevidamente. (editado)
* ~~**Atualizações do UnrealCppSdk:**~~ (ATUALIZADO: este SDK foi preterido. Para o novo SDK do Unreal, consulte [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))
* ~~O titleId agora está disponível na interface do plug-in~~

## 170411

Data: 11 de abril de 2017

### Alterações de API

* Novo recurso Enterprise: mais criptografia de login
* Você pode usar os métodos da API Policy para impor que as chamadas de login exijam uma segunda camada de criptografia
* Consulte: [UpdatePolicy](xref:titleid.playfabapi.com.admin.authentication.updatepolicy), especificamente [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)
* Este recurso ainda está parcialmente em beta, e ativá-lo não é recomendado (ainda; em breve!)

### Novos eventos do PlayStream

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

### Alterações específicas do UnitySDK

* Agora é possível especificar cabeçalhos extras que são injetados em uma solicitação de API (isso é necessário para as chamadas de login criptografadas da seção anterior).

### Alterações específicas do UnityEditorExtensions

* Corrigido um problema de compilação com o Unity 5.6.

## 170406

Data: 6 de abril de 2017

### Hotfix do plug-in de push do Unity para Android

* Corrigido o bug de falha no Android 7.0+.
* Corrigida a ausência de suporte a Large Icon no Android (Lollipop+).
* Corrigido o suporte a Small Icon no Android 7.0+ (agora dá suporte a \_transparent.png).

## 170403

Data: 3 de abril de 2017

### Alterações de API

* **Métodos de placar de cliente e servidor:** os métodos Get-Leaderboard (como client.[GetLeaderboard](xref:titleid.playfabapi.com.client.playerdatamanagement.getleaderboard)) haviam ganhado anteriormente os novos parâmetros não anuláveis Version e UseSpecificVersion. A exigência de que eles fossem não anuláveis era uma alteração que quebrava a API. Atualizamos essas propriedades para serem totalmente opcionais.
* **API de cliente:** o campo Items de [GetPurchaseResult](xref:titleid.playfabapi.com.client.playeritemmanagement.getpurchase#getpurchaseresult) foi preterido: essa parte do resultado costuma estar incorreta ou incompleta. Ela será substituída futuramente por um parâmetro totalmente funcional.

### Novos eventos do PlayStream

* `player_display_name_filtered`

~~**Alterações específicas do Unreal:**~~ (**ATUALIZADO**: este SDK foi preterido. Para o novo SDK do Unreal, consulte [UnrealMarketplaceSDK](https://www.unrealengine.com/marketplace/playfab-SDK))

* ~~UnrealCppSdk: corrigido um problema em que configurações do PlayFab, como TitleId, eram perdidas ao publicar um build.
  Ambos os SDKs foram testados e verificados com o Unreal 4.15~~

### Alterações específicas do JavaSDK

* [JavaSDK](https://github.com/PlayFab/JavaSDK)
  * A estrutura de pastas e os testes do [JavaSDK](https://github.com/PlayFab/JavaSDK) foram reestruturados.
  * A estrutura de pastas interna do repositório mudou um pouco para seguir as práticas recomendadas do Maven.
  * As dependências agora são controladas pelo Maven e não são mais incluídas com o SDK.
  * Nossos testes automatizados internos foram convertidos para a linha de comando do Maven.
  * Nosso SDK não está disponível no Maven Central, pois esse esforço não avançou. No momento, não há previsão de conclusão.

### Alterações específicas do UnitySDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * A versão interna do Unity usada para testar e compilar pacotes de ativos foi atualizada para a 5.6.0. Nosso SDK do Unity continua compatível com todas as versões do Unity da 4.7 à 5.6.
  * Corrigido um problema de compilação com `UnityEditorExtensions` no Unity 5.6.

## 170223

Data: 22 de fevereiro de 2017

### Alterações de API

* Os placares do PlayFab agora armazenam uma URL de avatar para cada jogador. Ela pode ser usada para fazer referência a uma imagem do jogador nas entradas do placar.
* Todas as APIs de placar agora podem buscar uma versão específica do placar. Isso se destina a títulos configurados para usar placares com redefinição.
* As entradas do placar agora contêm o [PlayerProfile](xref:titleid.playfabapi.com.client.accountmanagement.getplayerprofile#playerprofilemodel), que pode ser usado para exibir placares mais detalhados sem chamadas de API extras
* O PlayFab agora pode autenticar clientes usando o Windows Hello e validar recibos da Windows Store

### Novas APIs

```
- [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)
```

### Novos eventos do PlayStream

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

### Alterações específicas do WindowsSDK

* Adicionadas algumas verificações de nulo ausentes ao serializador JSON.

### Todos os SDKs

* Pequenas adições ao formato [testTitleData](https://github.com/PlayFab/SDKGenerator/blob/master/JenkinsConsoleUtility/testTitleData.md). Isso se aplica apenas aos projetos Example-Test que acompanham os SDKs.

## 170130

Data: 29 de janeiro de 2017

### Alterações significativas

* A estrutura de pastas do [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK) e do [NodeSDK](https://github.com/PlayFab/NodeSDK) foi alterada com o release principal de hoje. Isso pode resultar em algumas conexões quebradas no seu projeto ao fazer o upgrade. (Os nomes e o conteúdo dos arquivos não mudaram. Agora existem novos arquivos **TypeScript**, que não existiam antes.)

### Alterações de API

* Adicionada documentação de esclarecimento às APIs de CDN, mencionando especificamente que a CDN não faz parte do nosso serviço gratuito.
* Correções no login do Google (postagem no blog pendente).

### Novos eventos do PlayStream

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

### Alterações específicas do JavaScriptSDK

* [JavaScriptSDK](https://github.com/PlayFab/JavaScriptSDK)
  * Dia de lançamento de um grande upgrade! Número de versão atualizado para 1.0.
  * Integração com TypeScript!
  * Limpeza do repositório: separação dos arquivos do SDK dos arquivos de exemplo.
  * Nosso projeto de exemplo foi convertido para TypeScript.
  * Consulte [nosso blog](https://blog.playfab.com/blog/typescript/)!

### Alterações específicas do NodeSDK

* [NodeSDK](https://github.com/PlayFab/NodeSDK)
  * Dia de lançamento de um grande upgrade! Número de versão atualizado para 1.0
  * Integração com TypeScript!
  * Nosso projeto de exemplo foi convertido para TypeScript
  * Consulte [nosso blog](https://blog.playfab.com/blog/typescript/)!

### Exemplos de CloudScript

* Lançamento de um novo repositório de exemplos.
* Integração com TypeScript!
* Consulte [nosso blog](https://blog.playfab.com/blog/typescript/)!
* E o [novo repositório](https://github.com/PlayFab/SdkTestingCloudScript)!
* Vamos expandir este repositório ao longo do tempo.

### Alterações específicas do UnitySDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Corrigido um problema em que **JsonWrapper** não funcionava como esperado em todos os casos.
  * Consulte nossa postagem no fórum para obter detalhes: [https://community.playfab.com/questions/7599/cloudscript-getplayercombinedinfo-little-problem.html](https://community.playfab.com/questions/7599/cloudscript-getplayercombinedinfo-little-problem.html)
  * Removidas todas as seguintes classes wrapper preteridas em favor de `PlayFab.Json.JsonWrapper`:
    * `PlayFab.Json.JsonConvert` (use `PlayFab.Json.JsonWrapper`)
    * `PlayFab.Json.SimpleJson` (use `PlayFab.Json.JsonWrapper` ou `PlayFab.Json.PlayFabSimpleJson`)
    * `PlayFab.SimpleJson` (use `PlayFab.Json.JsonWrapper` ou `PlayFab.Json.PlayFabSimpleJson`)
  * Repetindo uma observação de [160627](/pt-BR/services/playfab/release-notes/2016#160627): `UnityEngine.SimpleJson` é um namespace vazio em `UnityEngine.dll`, o que nos obriga a não usar esse identificador.

### Unity Editor Extensions

* Resolvido um problema em que o painel do PlayFab era recarregado infinitamente se sua conta não pudesse ver nenhum estúdio.
* Resolvido um problema em que `PlayFabSharedSettings` (Scriptable Object) não era salvo corretamente se você escolhesse seu título no painel do PlayFab.

## 170109

Data: 8 de janeiro de 2017

### Alterações significativas

* Removidas as libs das versões mais antigas do WindowsSDK, e elas precisam ser recriadas no Visual Studio. Essas libs nunca funcionaram no vs2015, portanto é altamente recomendável apenas atualizar para o WindowsSDK mais recente, publicado na semana passada.

### Alterações de API

* Corrigidos erros de digitação na documentação.

### Todos os SDKs

* [Novos guias de introdução](/pt-BR/services/playfab/get-started)

### Alterações específicas do SDKGenerator

* [SDKGenerator](https://github.com/PlayFab/SDKGenerator)
  * O script de build do [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK) era inconsistente com os outros SDKs. Simplificamos os comandos do [SDKGenerator](https://github.com/PlayFab/SDKGenerator) que compilam o [ActionScriptSDK](https://github.com/PlayFab/ActionScriptSDK) para corresponder aos outros SDKs. (Nenhuma alteração no próprio SDK.)

### Alterações específicas do UnitySdk

* [UnitySdk](https://github.com/PlayFab/UnitySDK)
  * Alguns elementos públicos em PlayFabSettings receberam marcas Obsolete: `PlayFabSettings.PlayFabSharedSettings` `PlayFabSettings.DefaultPlayFabApiUrl` `PlayFabSettings.GetSharedSettingsObject()` `PlayFabSettings.ProductionEnvironmentUrl`

Eles se tornarão privados após um período de transição.

### Alterações específicas do WindowsSDK

* Aplicamos o BFG no repositório do GitHub e removemos todos os arquivos grandes do histórico. Exclua seu clone ou fork e recrie-o para que seu histórico fique limpo.

## 170102

Data: 1º de janeiro de 2017

### Alterações de API

* `Client/GetUserCombinedInfo` passou a ser totalmente obsoleto, e o removemos do SDK e da documentação.

### Alterações específicas do Cocos2d-xSDK

* [Cocos2d-xSDK](https://github.com/PlayFab/Cocos2d-xSDK)
  * Corrigida uma falha quando uma API do PlayFab retorna uma resposta inválida.
  * Resolvidos alguns avisos do compilador.
  * Adicionados testes de unidade para funções de retorno de chamada lambda no nosso projeto de exemplo de teste.

### Alterações específicas do UnitySDK

* [UnitySDK](https://github.com/PlayFab/UnitySDK)
  * Atualizamos internamente para o Unity 5.5, e nossos arquivos **.unitypackage** são compilados com essa versão

  * Como sempre, continuamos dando suporte a *todas as versões do Unity a partir da 4.7*.

  * Adicionados construtores estáticos a muitas classes estáticas, para consolidar a sequência de inicialização no compilador **Mono2x**. Isso deve resolver alguns dos problemas de `PlayFabSharedSettings` que temos visto no iOS.

  * **IDFA/ADID** agora funcionará corretamente no Unity 5.6 beta.

  * **PROBLEMA CONHECIDO:** os builds do Unity 5.6 beta não funcionam no **Windows Server** (**SO**), o que inclui a hospedagem de servidores de jogo do PlayFab. Entre em contato com a Unity se isso afetar você.

### Alterações específicas do WindowsSDK

* Dia de lançamento de um grande upgrade!
* Postagem no blog: [Windows SDK Update Released](https://api.playfab.com/blog/windows-SDK-update-released)
* Guia de upgrade: [Guia de upgrade do PlayFab WindowsSdk v0.x -> v1.x](https://github.com/PlayFab/WindowsSdk/blob/master/UpgradeGuide.md)


## Related topics

- [Notas de versão do PlayFab 2018](/pt-BR/services/playfab/release-notes/2018.md)
- [Notas de versão do PlayFab 2019](/pt-BR/services/playfab/release-notes/2019.md)
- [Notas de versão](/pt-BR/tools/tools-pc/xbox-pc-remote-tools/release-notes/index.md)
- [Notas de versão do PlayFab 2021](/pt-BR/services/playfab/release-notes/2021.md)
