Acesse sensores Android via NDK
-
25-09-2019 - |
Pergunta
Preciso ler cerca de 100 amostras por segundo de fora do acelerômetro em um Android e a uma taxa de amostragem fixa. O Sensormanager atual não faz ou não.
Eu li Precisa ler sensores Android muito rápido
Ele parece ter acesso ao código do motorista, o que facilitou sua vida.
Estou curioso para saber se alguém foi capaz de fazer algo assim através do NDK com esse tipo de conhecimento.
Desde já, obrigado!
Solução
Eu dei uma olhada no sensor.h, e a API parece muito promissora; No entanto, um pouco de como lidar com o AsensoreventQueue e Asensoreventqueue_hasevents e assim por diante seriam -se -tremamente úteis.
Ha! Atualizar:
Isso parece um exemplo de código para o que você deseja fazer.
http://developer.android.com/reference/android/app/nativeactivity.html
Outras dicas
Como o Android SDK versão 9 (para Android> 2.2) parece ser possível usar os sensores via NDK.
Consulte o arquivo stable_apis.html incluído nos documentos. (Pesquise "sensor.h"). Um espelho desse arquivo é aqui.
Dianne Hackborn diz que isso não é possível.
http://groups.google.com/group/android-ndk/browse_thread/thread/f299413e610c7e93?hl=en
Exemplo do Google https://github.com/googlesamples/android-ndk/tree/master/sensor-gralp. Seu código permite controlar o sensor_refresh_rate_hz para o acelerômetro.
Os sensores podem ser lidos lendo diretamente dos "arquivos" do sistema como:
/sys/classe/sensores/luz_sensor/lux ou/sys/classe/sensores/luz_sensor/raw_data
Gostaria de saber se existe uma maneira mais direta de fazê -lo, lendo diretamente do chip.
Como algo em /dev /...