Skip to content

monitoramento de localização

Este artigo mostra como configurar o monitoramento de localização para seu aplicativo Android ou FireOS.

Adicione pelo menos uma das seguintes permissões ao seu arquivo AndroidManifest.xml para declarar a intenção do seu app de coletar dados de local:

1
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
1
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

ACCESS_FINE_LOCATION inclui dados de GPS ao relatar a localização do usuário, enquanto ACCESS_COARSE_LOCATION inclui dados do provedor não-GPS mais eficiente em termos de bateria disponível (por exemplo, a rede). A localização aproximada provavelmente será suficiente para a maioria dos casos de uso de dados de local; no entanto, sob o modelo de permissões de tempo de execução, receber permissão de local do usuário autoriza implicitamente a coleta de dados de localização precisa. Dê uma olhada em Estratégias de localização no site Android Developers para saber mais sobre as diferenças entre essas permissões de localização e como usá-las.

Desativação do monitoramento automático de localização

Opção de Tempo de Compilação

Para desativar o monitoramento automático de localização em tempo de compilação, defina com_braze_enable_location_collection como false em braze.xml:

1
<bool name="com_braze_enable_location_collection">false</bool>

Opção do tempo de Execução

Para desativar seletivamente o monitoramento automático de localização em tempo de execução, use BrazeConfig:

1
2
3
4
BrazeConfig brazeConfig = new BrazeConfig.Builder()
  .setIsLocationCollectionEnabled(false)
  .build();
Braze.configure(this, brazeConfig);
1
2
3
4
val brazeConfig = BrazeConfig.Builder()
    .setIsLocationCollectionEnabled(false)
    .build()
Braze.configure(this, brazeConfig)

Registro manual de local

Mesmo quando o rastreamento automático estiver desativado, é possível registrar manualmente pontos de dados únicos de localização através do método setLastKnownLocation() em BrazeUser assim:

1
2
3
4
5
6
Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
  @Override
  public void onSuccess(BrazeUser brazeUser) {
    brazeUser.setLastKnownLocation(LATITUDE_DOUBLE_VALUE, LONGITUDE_DOUBLE_VALUE, ALTITUDE_DOUBLE_VALUE, ACCURACY_DOUBLE_VALUE);
  }
}
1
2
3
Braze.getInstance(context).getCurrentUser { brazeUser ->
  brazeUser.setLastKnownLocation(LATITUDE_DOUBLE_VALUE, LONGITUDE_DOUBLE_VALUE, ALTITUDE_DOUBLE_VALUE, ACCURACY_DOUBLE_VALUE)
}
QUÃO ÚTIL FOI ESTA PÁGINA?
New Stuff!