Permissão para dispositivo Android (aberto) NDK negada

Em uma chamada nativa, estou tentandoopen("/dev/video4", O_RDWR) mas recebo errno EACCES 13 "permissão negada".

Se eu executar o mesmo código * em um executável, no mesmo host Android, como o mesmo UID do aplicativo instalado em execução acima, ele funcionará bem. (* pequenas diferenças comomain() ao invés deJava_com_test_testOpen())

eu tenteichmod 666 /dev/video4 e ainda recebe EACCES, o que é especialmente estranho.

Por que omesmo código, nomesmo host, Enquanto omesmo usuário, dê EACCESS quando chamado via JNI e sucesso quando chamado como executável independente?

O dispositivo de teste está enraizado e executando o Cyanogenmod 12.1 (API 22) e estou direcionando> = API 21 (5.0 Lollipop) em dispositivos enraizados. Obrigado pela ajuda.

questionAnswers(3)

yourAnswerToTheQuestion