O SDK do Places para Android oferece suporte aos Detalhes do lugar. Se você já conhece o SDK do Places para Android, a nova versão do Place Details faz as seguintes mudanças:
Usa um novo modelo de preços. Para informações de preços de todas as APIs, consulte SDK do Places para Android (novo).
É necessário inicializar o app chamando o método
Places.initializeWithNewPlacesApiEnabled()
. Para mais informações sobre como selecionar o serviço da API Places, consulte Configurar seu projeto do Google Cloud.O mascaramento de campo é obrigatório. É necessário especificar quais campos você quer que sejam retornados na resposta. Não há uma lista padrão de campos retornados. Se você omitir essa lista, os métodos vão retornar um erro.
As seções a seguir descrevem outras mudanças.
Acessar novos tipos de lugar
Cada lugar pode ter um ou mais valores de tipo associados. O Places SDK for Android versão 3.3.0 e mais recentes adiciona muitos novos valores de tipo. Para conferir a lista completa, consulte Tipos de lugar expandidos.
O método
Place.getPlaceTypes()
retorna os valores de tipo como uma lista de valores de string. Os valores retornados
dependem da sua versão do SDK do Places para Android:
SDK do Places para Android (novo): retorna as strings definidas pelas tabelas A e B mostradas em Tipos de lugar (novo), incluindo todos os tipos de lugar adicionados na versão 3.3.0.
SDK do Places para Android: retorna os tipos enumerados definidos por
Place.Types
, que não inclui os novos tipos adicionados na versão 3.3.0 e mais recentes.
Acessar avaliações de lugares
O SDK do Places para Android (novo) adiciona a classe
Review
, que contém uma avaliação de um lugar. O objeto Place
pode conter até
cinco avaliações.
A classe Review
também pode conter uma atribuição e uma atribuição de autor. Se
você mostrar a avaliação no seu app, também precisará mostrar qualquer atribuição
ou atribuição do autor. Para mais informações, consulte Mostrar uma
avaliação.
Para mais informações, consulte a documentação sobre atribuições.
Acessar o código do idioma do nome do lugar
O método
Place.getName()
atual retorna uma string de texto contendo o nome de um lugar. Para preencher o objeto Place
com o nome do lugar, inclua Place.Field.DISPLAY_NAME
na lista de campos da solicitação de detalhes do lugar.
O objeto Place
agora contém o código de idioma da string de nome. Para
preencher o objeto Place
com o código de idioma, faça o seguinte:
Inclua o
Place.Field.DISPLAY_NAME
na lista de campos da solicitação. Esse valor configura a resposta para incluir o nome do lugar e o código de idioma no objetoPlace
.Chame
PlacesClient.fetchPlace()
.PlacesClient.findCurrentPlace()
não oferece suporte ao campo de código do idioma.Use o método
Place.getNameLanguageCode()
para acessar o campo de código de idioma no objetoPlace
.
Definir código de região
O SDK do Places para Android (novo) adiciona o parâmetro de solicitação do código de região aos detalhes do lugar. O código da região é usado para formatar a resposta, especificado como um valor de código CLDR de dois caracteres. Esse parâmetro também pode ter um efeito enviesado nos resultados da pesquisa. Não há um valor padrão. É necessário ativar o novo SDK para definir o código da região.
Se o nome do país do campo de endereço na resposta corresponder ao código da região, o código do país será omitido do endereço.
A maioria dos códigos CLDR é idêntica aos códigos ISO 3166-1, com algumas exceções notáveis. Por exemplo, o ccTLD do Reino Unido é "uk" (.co.uk), e o código ISO 3166-1 é "gb" (tecnicamente, para a entidade "O Reino Unido da Grã-Bretanha e Irlanda do Norte"). O parâmetro pode afetar os resultados com base na legislação aplicável.
Exemplo de solicitação
Para conferir um exemplo completo, consulte Place Details (New).