마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

롤리팝에서 바인더 서비스를 addService하려 합니다

0 추천



E/        ( 2607): static void NiceServiceObj::instantiate(): instantiate

E/SELinux (  231): avc:  denied  { add } for service=NiceService scontext=u:r:wfd_app:s0 tcontext=u:object_r:default_android_service:s0 tclass=service_manager

E/ServiceManager(  231): add_service('NiceService',67) uid=1000 - PERMISSION DENIED

 

안녕하세요~

Android Rollypop 으로 보드 개발 중입니다.

서비스가 필요해서 /framework/av/media/niceservice 에 바인더 서비스를 생성하고

ndk로 만든 app에서 addService() 를 해주었습니다.

addService 결과 위와 같이 permission denied오류가 뜨네요

app의 Manifest에 sharedUserId는 android.uid.system으로 설정 되어있습니다.

로그를 보면 system 퍼미션으로 addService 할 수 없다는 얘기 같은데

서비스의 uid는 어떻게 결정되는 건지 확인 할 방법은 있는건지 궁금합니다.

 

요약하자면 프레임웍에 만들어놓은 서비스를 AddService하고 싶은데 어떤 uid가 필요한지 모르겠습니다.

 

익명사용자 님이 2015년 3월 24일 질문
좀 더 알아보고 질문을 정리합니다.
app에 "sharedId=android.uid.system" 을 적용하여
system 권한이 주어진 상태입니다.
kitkat에서는 이 시스템 권한으로 addService가 가능했었거든요
rollypop 에서는 system 권한으로 addService안되나요?
여전히 app에는 system uid가 들어가 있는데 kitkat과 다른 결과가 나오네요

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...