O Waze é compatível com uma API que permite aos desenvolvedores abrir o aplicativo cliente ou a página da Web do Waze por meio de um URL externo. O URL pode ser acessado de outro app ou de uma página da Web para dispositivos móveis.
O URL base para usar links diretos do Waze é o seguinte:
https://waze.com/ul
O aplicativo Waze pode identificar um endereço, marcar um endereço no mapa ou iniciar uma sessão de navegação até um endereço ou destino, com base nos parâmetros transmitidos a esse URL.
Como os links diretos funcionam
A configuração de sistema do usuário define se o Waze será aberto como um aplicativo cliente ou uma página da Web:
- Computador: o Waze será aberto como uma página da Web.
- Dispositivo móvel (e o app Waze está instalado): o app Waze será aberto.
- Dispositivo móvel (e o Waze não está instalado): o Waze será aberto como uma página da Web.
Se você tiver certeza de que o app Waze está instalado, poderá usar "waze://" para iniciar uma comunicação entre apps sem a experiência na Web. Isso substitui o URL base descrito anteriormente. Use essa opção apenas se tiver certeza de que os usuários têm o Waze instalado. Caso contrário, se os usuários tocarem no link, nada acontecerá.
Usar links diretos do Waze
Você pode usar o URL a seguir para iniciar o Waze com parâmetros de um app de terceiros, e-mail, SMS, link de página da Web ou outra origem.
Os links diretos do Waze usam o seguinte URL:
https://waze.com/ul?param_name=value[¶m_name=value]
Confira a seguir algumas tarefas comuns de links diretos do Waze.
Navegar até um local
Para navegar até um local específico:
- Abra o mapa ao vivo do Waze e pesquise seu local. Digite na caixa de pesquisa ou aumente o zoom e clique em um segmento específico do mapa.
- Clique no ícone de compartilhamento
no
canto inferior direito do mapa. - Uma caixa de diálogo será exibida. Clique em Compartilhar rotas de carro, copie e cole o link.
Exemplo
O exemplo a seguir centraliza o mapa na Times Square, em Nova York:
https://www.waze.com/ul?ll=40.75889500%2C-73.98513100&navigate=yes&zoom=17
Navegar até um favorito
Você pode navegar até os seguintes favoritos salvos no app Waze:
workhome
Use o seguinte URL para navegar até um local favorito especificado:
https://waze.com/ul?favorite=favorite&navigate=yes
O exemplo a seguir define o destino como "trabalho":
https://waze.com/ul?favorite=work&navigate=yes
Pesquisar
Pesquise um endereço com a seguinte sintaxe:
https://waze.com/ul?q=search_terms
Os valores transmitidos para os parâmetros precisam ser codificados para uso em URLs. Por exemplo, você precisa substituir
espaços por %20.
O exemplo a seguir pesquisa "66 Acacia Avenue":
https://waze.com/ul?q=66%20Acacia%20Avenue
Mostrar no mapa
Use a seguinte sintaxe para definir o nível de ampliação (ou zoom) da visualização do mapa do Waze mapa:
https://waze.com/ul?z=magnification_level
O valor mínimo para magnification_level é 6 (mais próximo ou maior ampliação). e o valor máximo de magnification_level é 8.192 (mais distante ou menor ampliação).
O exemplo a seguir define o nível de ampliação como 8:
https://waze.com/ul?z=8
Parâmetros de URL
A tabela a seguir descreve os parâmetros de trajeto disponíveis para links diretos do Waze:
| Parâmetro | Obrigatório? | Descrição |
|---|---|---|
avoid_tolls |
Opcional | Especifica se um trajeto que evita pedágios deve ser calculado. Defina como true ou t para evitar pedágios. Defina como false ou f para permitir pedágios. O padrão é permitir pedágios (false). |
avoid_ferries |
Opcional | Especifica se um trajeto que evita balsas deve ser calculado. Defina como true ou t para evitar balsas. Defina como false ou f para permitir balsas. O padrão é permitir balsas (false). |
avoid_freeways |
Opcional | Especifica se um trajeto que evita rodovias deve ser calculado. Defina como true ou t para evitar rodovias. Defina como false ou f para permitir rodovias. O padrão é permitir rodovias (false). |
avoid_dangerous_turns |
Opcional | Especifica se curvas perigosas devem ser evitadas. Defina como true ou t para evitar curvas perigosas. Defina como false ou f para permitir curvas perigosas. O padrão é evitar curvas perigosas (true). |
avoid_trails |
Opcional |
Especifica as preferências de trajeto para vias sem asfalto. Os valores compatíveis são:
|
vehicle_type |
Opcional |
Especifica o tipo de veículo. Os valores compatíveis são:
|
Combinar parâmetros
É possível usar os parâmetros juntos no mesmo URL separando os pares nome/valor com "&". Os exemplos a seguir mostram como usar combinações de parâmetros:
Para centralizar o mapa em Maryhill e ampliar o zoom para 10, use:
https://waze.com/ul?ll=45.6906304,-120.810983&z=10
Para procurar um endereço e, em seguida, navegar até ele, use:
https://waze.com/ul?q=66%20Acacia%20Avenue&ll=45.6906304,-120.810983&navigate=yes
Incluir utm_source
Se você incluir um utm_source na sua implementação, poderemos associar o uso a
parceiros específicos. Se ocorrer um problema que afete a integração, o utm_source
nos permitirá entrar em contato com o parceiro e oferecer uma experiência melhor. Para mais
detalhes, consulte o exemplo do iOS. Se você tiver problemas, sinta-se à vontade para entrar em contato conosco.
Exemplos
Esta seção fornece exemplos de como usar a API de links diretos do Waze nas plataformas Android e iOS.
Exemplo do Android
O exemplo de snippet de código a seguir inicia o Waze para procurar o local especificado, se o Waze estiver instalado. Se o Waze não estiver instalado, ele abrirá a página do Waze no Google Play:
try { // Launch Waze to look for Hawaii: String url = "https://waze.com/ul?q=Hawaii"; Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); } catch (ActivityNotFoundException ex) { // If Waze is not installed, open it in Google Play: Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.waze")); startActivity(intent); }
Exemplo do iOS
O exemplo de snippet de código a seguir navega até a latitude/longitude se o Waze estiver instalado. Caso contrário, ele inicia a App Store para instalar o Waze:
- (void) navigateToLatitude:(double)latitude longitude:(double)longitude { if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"waze://"]]) { NSString *bundleIdentifier = NSBundle.mainBundle.bundleIdentifier; // Waze is installed. Launch Waze and start navigation NSString *urlStr = [NSString stringWithFormat:@"https://waze.com/ul?ll=%f,%f&navigate=yes&utm_source=%s", latitude, longitude, bundleIdentifier]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlStr]]; } else { // Waze is not installed. Launch AppStore to install Waze app [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://itunes.apple.com/us/app/id323229106"]]; } }
Se você fizer a compilação usando o iOS SDK 9.0 e versões mais recentes, será preciso adicionar o seguinte código ao arquivo de lista de propriedades do seu aplicativo para incluir o Waze:
<key>LSApplicationQueriesSchemes</key> <array> <string>waze</string> </array>