android bindService打开失败

在写demo验证SurfaceControlViewHost的时候,bindService提示

Unable to start service Intent U=0: not found

在源代码里搜了下,找到是在如下方法里面里面打印出来的

java 复制代码
// frameworks/base/services/core/java/com/android/server/am/ActiveServices.java
retrieveServiceLocked {
    ....
    if(mAm.getPackageManagerInternal().filterAppAccess(r.packageName,callingUid,
        userId)){
        Slog.w(TAG_SERVICE,"Unable to start service "+service+" U="+userId
        +": not found");
        returnnull;
    }
    ....
}

后面查了下,发现是包可见性的变更引起的异常

Android 11 中的软件包可见性 | Android Developers
Android 上的软件包可见性过滤 | Android Developers

解决方案,在使用的bindService的应用的AndroidManifest.xml里面加上queries,类似如下

java 复制代码
    <queries>
        <package android:name="com.example.host"/>
    </queries>
相关推荐
加农炮手Jinx1 小时前
Flutter for OpenHarmony:web_socket_channel 全平台 WebSocket 通信标准库,从原理到鸿蒙实战(3000字深度解析)
android·前端·网络·websocket·flutter·华为·harmonyos
王码码20351 小时前
Flutter for OpenHarmony:web_socket 纯 Dart 标准 WebSocket 客户端(跨平台兼容性之王) 深度解析与鸿蒙
android·前端·websocket·网络协议·flutter·华为·harmonyos
zh_xuan3 小时前
kotlin runBlocking函数
android·kotlin·协程·runblocking
三少爷的鞋3 小时前
别再 launch(IO) 了:协程线程切换的 3隐藏反模式
android
贤泽5 小时前
Android 15 Lock Task 模式深度分析(第二部分)
android
huohuopro6 小时前
Vue3 Webview 转 Android 虚拟导航栏遮挡问题记录
android·vue
zh_xuan6 小时前
kotlin 挂起函数
android·开发语言·kotlin
贤泽6 小时前
Android 15 Lock Task 模式深度分析(第一部分)
android
zh_xuan7 小时前
kotlin launch函数
android·kotlin·协程·launch
贤泽7 小时前
android 15 AOSP Broadcast 广播机制源码分析
android·aosp