https://a.storyblok.com/f/270183/1368x665/c3de0b34bf/25mar_dev_blog_client-library.png

Apresentamos nossa nova biblioteca de clientes para Android e iOS

Publicado em March 11, 2025

Tempo de leitura: 3 minutos

Temos o prazer de anunciar nossa Biblioteca de Clientes para Android e iOS, um novo SDK desenvolvido do zero que permite aos desenvolvedores contornar o Wi-Fi e garantir que chamadas específicas de API sejam enviadas exclusivamente por redes móveis. Essa Biblioteca de Cliente substitui o Verify Silent Auth e SDKs de Verificação de Número, que não receberão mais atualizações.

Por que isso é importante

Algumas APIs de rede, como API de Verificação de Número ou Verify API com Autenticação Silenciosa, funcionam apenas em redes móveis. Isso ocorre porque as operadoras de celular utilizam dados de tráfego de rede para verificar os usuários.

A nova biblioteca do cliente faz com que as solicitações GET da API sejam enviadas pela rede de celular, sem a necessidade de desligar manualmente a conexão Wi-Fi nos dispositivos dos usuários.

Como funciona

Integrar a biblioteca de clientes da Vonage ao seu aplicativo móvel é simples. Com apenas algumas linhas de código, os desenvolvedores podem enviar suas solicitações de API pela rede móvel, contornando o Wi-Fi quando necessário.

Vamos ver como funciona!

Android

Para usar a Biblioteca do Cliente, adicione a seguinte dependência ao seu arquivo build.gradle :

implementation 'com.vonage:client-library:1.0.0'

Importe os pacotes necessários e inicialize a biblioteca antes de fazer chamadas à API:

import com.vonage.clientlibrary.VGCellularRequestClient
import com.vonage.clientlibrary.VGCellularRequestParameters

VGCellularRequestClient.initializeSdk(this.applicationContext)

Criar um VGCellularRequestClientParameters com os parâmetros necessários:

val params = VGCellularRequestClientParameters(
    url = "http://www.vonage.com",
    headers = mapOf("x-my-header" to "My Value") ,
    queryParameters = mapOf("query-param" to "value"),
    maxRedirectCount = 10
)

Onde:

  • URL: corresponde a um endpoint da API.

  • Cabeçalhos: um mapa de strings com os cabeçalhos HTTP que você deseja incluir na sua solicitação.

  • queryParameters: um mapa de strings (pares chave-valor) com os parâmetros de consulta a serem incluídos em nossa solicitação GET.

  • maxRedirectCount: opcional e tem valor padrão de 10. Esse parâmetro define o número de redirecionamentos permitidos. A confirmar

Por fim, chame o método startCellularGetRequest para enviar a solicitação pela rede móvel:

val response = VGCellularRequestClient.getInstance().startCellularGetRequest(params)

O método aceita um segundo parâmetro booleano para depurar chamadas de API. Esse parâmetro tem o valor padrão “false”, mas pode ser ativado da seguinte maneira:

val response = 
VGCellularRequestClient.getInstance().startCellularGetRequest(params, true)

iOS

Da mesma forma que no Android, adicione a biblioteca do cliente como dependência ao seu projeto:

let package = Package(
    dependencies: [
        .Package(url: "https://github.com/Vonage/vonage-ios-client-library.git")
    ]
)

Você também pode instalar a biblioteca por meio de Cocoapods, usando o pod VonageClientLibrary.

Importe e inicialize a biblioteca:

import VonageClientLibrary

let client = VGCellularRequestClient()



Create a VGCellularRequestClientParameters object with the necessary parameters:
let params = VGCellularRequestParameters(url: "http://www.vonage.com",
                                headers: ["x-my-header": "My Value"],
                                queryParameters: ["query-param" : "value"]
                                maxRedirectCount: 10)

Use o método startCellularGetRequest para enviar a solicitação pela rede móvel. O segundo parâmetro debug é opcional e define o sinalizador de depuração (o valor padrão é false):

let response = try await client.startCellularRequest(params: params, debug: true)

Respostas

Quando é recebida uma resposta do endpoint da URL, o método startCellularGetRequest retorna um objeto contendo as seguintes propriedades:

{
    "http_status": string, // HTTP status code of the URL response
    "response_body" : {    // Optional, depending on the HTTP status
        ...                // The response body of the requested url
    },
    "debug" : {            // Present if the debug flag is set to true
        "device_info": string, 
        "url_trace" : string
    }
}

Se não houver conectividade ou se ocorrer um erro interno na biblioteca do cliente, o objeto de resposta incluirá as seguintes propriedades:

{
    "error" : string,             // Error code
    "error_description": string,  // Error description
    "debug" : {                   // Present if debug flag is set to true
        "device_info": string, 
        "url_trace" : string
    }
}

Tem alguma dúvida ou quer compartilhar o que está criando?

Fique conectado e acompanhe as últimas notícias, dicas e eventos para desenvolvedores.

Compartilhar:

https://a.storyblok.com/f/270183/405x400/2b811a162d/alvaro-navarro.jpg
Alvaro NavarroEx-funcionários da Vonage

Álvaro é um ex-membro da equipe da Vonage. Ele atuou como defensor dos desenvolvedores na Vonage, com foco em APIs de rede. É apaixonado por experiência do desenvolvedor, APIs e código aberto. Fora do trabalho, é comum encontrá-lo explorando lojas de quadrinhos, participando de festivais de ficção científica e terror ou montando coisas com aqueles famosos blocinhos de plástico.