2013-03-02 10 views
2

내 안드로이드 기기에서 v4l2를 구성했습니다. 웹캠을 연결하고/dev/video4 노드가 만들어 졌는지 확인합니다. 내 JNI 층에서 열려고하면 그러나 (android : JNI에서/dev/video4 (웹캠)를 여는 동안 권한이 거부되었습니다.

내가이되도록 dev에 /의 권한을 변경)

한 다음/VIDEO4 시도

모두 읽기 - 쓰기 "권한이 거부되었습니다"라는)

2) 0666는 (원래는/dev/VIDEO4는 RW 액세스 한 시스템 및 카메라 그룹에 의해 만들어졌습니다.) 그 중

를 수행해도 문제가 해결되지 않는 안드로이드 매니페스트 XML에 android.permission.camera을 추가했습니다. 그것을 해결하는 방법에 대한 아이디어?

+1

chmod 777/dev/video4를 사용해보세요. – Shiv

답변

0

Android 4.4.2 (Sasmung Galaxy S5 SM-G900F)에서 유사한 문제가 발생했습니다. /dev/video4에 대한 권한 변경이 도움이되지 않습니다. 그러나 대한 Chown가 속임수를 썼는지 :

su -c chown 10209:10209 /dev/video4 

(여기서, 10209은 내 응용 프로그램에 안드로이드 alloated UID를했다).

PS 내 주요 문제가 해결되지 않았습니다. 응용 프로그램이 특정 usb 카메라의 비디오 프레임을 읽을 때 커널 패닉이 발생합니다.

0

이 문제는 Lollipop에서 SE 리눅스 사용 권한과 같은 문제인 듯합니다. 내 대답 here을 참조하십시오. 한마디로

, 당신은 할 수 있습니다

  • 비활성화 SE 리눅스 (재부팅 할 때까지) (루트로) 실행하여 echo 0 > /sys/fs/selinux/enforce
  • 이 사이 애 노젠 모드 빌드를 해킹 external/sepolicy/untrusted_app.teallow untrusted_app video_device:chr_file rw_file_perms;를 추가합니다.