핸드 헬드에서 실행중인 WearableListenerService가 컴패니언 앱에서만 액세스 가능하게하고 싶습니다. 나는 사용자 지정 권한을 만드는 것이 경로를 취할 것이라고 생각하지만,이 접근 방식으로 문제가 발생하여 웨어러블을 핸드 헬드에 성공적으로 바인드 할 수 없으면 핸드 헬드에서 다음과 같은 예외가 발생합니다.컴패니언 시계 앱이 핸드 헬드의 착용 식 수신기 서비스에만 연결할 수 있도록 허용하는 방법은 무엇입니까?
Permission Denial: Accessing service ComponentInfo{com.mypackage.android/com.mypackage.android.androidwear.service.WearListenerService} from pid=4868, uid=10014 requires com.mypackage.android.WATCHAPP
WearableService: bind: Permission denied connecting to ServiceRecord[com.mypackage.android.androidwear.service.WearListenerService, events=1, bound=false, [Event[79380002: onMessageReceived, event=requestId=16741, action=/start-activity, dataSize=26, source=31c5457d]]]
java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.gms.wearable.BIND_LISTENER cmp=com.mypackage.android/.androidwear.service.WearListenerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1437)
at android.app.ContextImpl.bindService(ContextImpl.java:1395)
at android.content.ContextWrapper.bindService(ContextWrapper.java:632)
at android.content.ContextWrapper.bindService(ContextWrapper.java:632)
at android.content.ContextWrapper.bindService(ContextWrapper.java:632)
at aeim.a(:com.google.android.gms:6693)
at aeim.a(:com.google.android.gms:1378)
at aeim.handleMessage(:com.google.android.gms:1295)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.os.HandlerThread.run(HandlerThread.java:61)
내가 처음에만 핸드 헬드 매니페스트에 다음 두 매니페스트에서, 여러 가지 방법으로 사용자 지정 권한을 정의하는 노력뿐만 아니라 다른 보호 수준, 정상, 서명, signatureOrSystem을 시도하고있다. 나는 심지어 dumpsys 명령을 실행하여 웨어러블에 대한 권한이 성공적으로 부여되었음을 확인했습니다.
declared permissions:
com.mypackage.android.WATCHAPP: prot=normal, INSTALLED
requested permissions:
android.permission.WAKE_LOCK
com.mypackage.android.WATCHAPP
install permissions:
com.mypackage.android.WATCHAPP: granted=true
android.permission.WAKE_LOCK: granted=true
나는 그러나 나는 단지 내 응용 프로그램 내 서비스와 충분하지 않는 것 필터 방식을 시작할 수 있음을 시행하고자하는 내 서비스에 데이터 필터를 적용했습니다.
덕분에, 그게 내가 스택 추적에서 수집 한 것입니다. 그렇다고해서 여전히 내 동반자 앱만 내 서비스와 상호 작용할 수 있도록 내 서비스를 제한하는 것이 가능하거나 오히려 가능하다는 의문이 제기됩니다. – RoLAN210