2014-12-02 3 views
0

Android에서 h264 프레임을 디코딩하는 'c'로 작성된 gstreamer 디코더 애플리케이션이 있습니다. 내 카메라 서비스가이 애플리케이션과 통신하기를 원합니다. 이를 위해 소켓 (dgram)을 사용했습니다. "/ data/cam_file"경로로 유닉스 PF_INET 소켓을 생성하고있다.데몬 서비스로 안드로이드 내부 소켓 연결이 실패합니다.

이제 명령 줄 (adb 셸)에서 gstreamer 응용 프로그램을 실행하면 카메라 서비스 및 데이터 교환에서 연결할 수 있지만 gstreamer 응용 프로그램을 데몬 서비스로 만들면 문제가 발생합니다 (late_start 옵션 사용).), 소켓 연결이 실패합니다. 또한 camera app source에서 processbuilder()를 사용하여 gstreamer 응용 프로그램을 포크하면 실패합니다. 모든 단서?

답변

0

이 문제는 해결되었습니다. 문제는 네이티브 서비스의 권한 때문이었습니다. 다른 서비스가 init..rc에서 연결할 수 없기 때문에 사용자를 'root'로 설정합니다. 사용자를 '시스템'으로 설정하면 다른 서비스를 연결할 수 있습니다. 네이티브 서비스를 연결하고있는 서비스의 '그룹'설정에 '시스템'을 추가하십시오. 초보자를 도울 수 있기를 바랍니다.

관련 문제