Método ILocation::SetReportInterval (locationapi.h)
[A API de Localização do Win32 está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. Em vez disso, use a API Windows.Devices.Geolocation . ]
Especifica a quantidade mínima de tempo solicitada, em milissegundos, entre eventos de relatório.
Sintaxe
HRESULT SetReportInterval(
[in] REFIID reportType,
[in] DWORD millisecondsRequested
);
Parâmetros
[in] reportType
REFIID que especifica o tipo de relatório para o qual definir o intervalo.
[in] millisecondsRequested
DWORD que contém o valor do intervalo de relatório, em milissegundos. Se esse valor for zero, nenhum intervalo mínimo será especificado e seu aplicativo receberá eventos no intervalo padrão do sensor de localização.
Valor retornado
O método retorna um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
O chamador não está registrado para receber eventos para o tipo de relatório especificado. |
|
reportType era diferente de IID_ILatLongReport ou IID_ICivicAddressReport. |
Comentários
O intervalo que você solicita usando esse método representa a menor quantidade de tempo entre eventos. Isso significa que você solicita receber notificações de evento não com mais frequência do que o especificado, mas o tempo decorrido pode ser significativamente maior. Use esse método para ajudar a garantir que as notificações de evento não usem mais recursos de processador do que o necessário.
Não é garantido que sua solicitação para um intervalo de relatório específico será definida pelo provedor de localização. Chame GetReportInterval para descobrir a configuração de intervalo de relatório verdadeiro.
Um intervalo de relatório de zero significa que nenhum intervalo mínimo é especificado e o aplicativo pode receber eventos na frequência em que o sensor de localização envia eventos.
Exemplos
O exemplo a seguir demonstra como chamar SetReportInterval.
// Set the latitude/longitude report interval to 1000 milliseconds
HRESULT hr = spLocation->SetReportInterval(IID_ILatLongReport, 1000);
Requisitos
Cliente mínimo com suporte | Windows 7 [somente aplicativos da área de trabalho], Windows 7 |
Servidor mínimo com suporte | Nenhum compatível |
Plataforma de Destino | Windows |
Cabeçalho | locationapi.h |
DLL | LocationAPI.dll |