Processar erros do SDK do consumidor
O SDK para o consumidor envia erros de atualização de viagem ao aplicativo do consumidor usando um callback
mecanismo de atenção. O parâmetro callback é um tipo de retorno específico da plataforma (
TripUpdateError
no Android, e
NSError
no iOS).
Extrair códigos de status
Os erros transmitidos ao callback são normalmente erros gRPC, e também é possível extrair informações adicionais deles na forma de um código de status. Para o lista completa de códigos de status, consulte Códigos de status e o uso deles no gRPC (em inglês).
Interpretar códigos de status
Os códigos de status abrangem dois tipos de erros: erros relacionados ao servidor e à rede e erros do lado do cliente.
Erros de servidor e de rede
Os códigos de status a seguir são para erros de rede ou de servidor, e você e nenhuma ação será necessária para resolvê-los. O SDK para o consumidor automaticamente se recupera delas.
Código de status | Descrição |
---|---|
ABORTED | O servidor parou de enviar a resposta. Isso é normalmente causado por um um problema no servidor. |
CANCELADO | O servidor encerrou a resposta enviada. Isso normalmente
acontece quando
o aplicativo é enviado para o segundo plano ou quando há uma mudança de estado na App para o consumidor. |
INTERRUPTED | |
DEADLINE_EXCEEDED | O servidor demorou muito para responder. |
INDISPONÍVEL | O servidor não estava disponível. Isso geralmente é causado por uma conexão de rede problema. |
Erros do cliente
Os códigos de status a seguir referem-se a erros do cliente, e você deve tomar medidas para e resolvê-los. O SDK para consumidores continuará tentando atualizar a viagem até que você encerrar o compartilhamento da jornada, mas ele não se recuperará até que você realize uma ação.
Código de status | Descrição |
---|---|
INVALID_ARGUMENT | O aplicativo do consumidor especificou um nome de viagem inválido. O nome da viagem deve
siga o formato providers/{provider_id}/trips/{trip_id} .
|
NOT_FOUND | A viagem não foi criada. |
PERMISSION_DENIED | O app para o consumidor não tem permissões suficientes. Esse erro ocorre quando:
|
RESOURCE_EXHAUSTED | A cota de recursos está em zero ou a taxa do fluxo de tráfego excede a limite de velocidade. |
UNAUTHENTICATED | A autenticação da solicitação falhou devido a um token JWT inválido. Isso ocorre quando o token JWT é assinado sem um ID de viagem ou quando o token JWT tiver expirado. |