当前位置: 首页 > news >正文

Android 11 Unable to start/bind service

今天在Android11上发现了一个的问题,如果目标Service的进程没有启动,那么无论是bindService还是startService都没有办法拉起指定的Service。
网上查了很多资料如下:
1.目标Service 设置 android:exported="true"
2.目标Service需要声明自定义权限。客户端需要声明权限。
3.目标Service需要添加<intent-filter></intent-filter>

上面的方法都试过了**然并卵**,还是报Unable to start service Intent.
实在没办法去翻了下源码~在startService中过程中当调用调用pms去解析intent是返回null会打印这个日志。代码片段如下~

ActiveServices # retrieveServiceLocked     ResolveInfo rInfo = mAm.getPackageManagerInternalLocked().resolveService(service,resolvedType, flags, userId, callingUid);ServiceInfo sInfo = rInfo != null ? rInfo.serviceInfo : null;if (sInfo == null) {Slog.w(TAG_SERVICE, "Unable to start service " + service + " U=" + userId +": not found");return null;}


     //....代码省略
    

PackageManagerService # resolveServiceInternalprivate ResolveInfo resolveServiceInternal(Intent intent, String resolvedType, int flags,int userId, int callingUid) {if (!mUserManager.exists(userId)) return null;flags = updateFlagsForResolve(flags, userId, callingUid, false /*includeInstantApps*/,false /* isImplicitImageCaptureIntentAndNotSetByDpc */);List<ResolveInfo> query = queryIntentServicesInternal(intent, resolvedType, flags, userId, callingUid, false /*includeInstantApps*/);if (query != null) {if (query.size() >= 1) {// If there is more than one service with the same priority,// just arbitrarily pick the first one.return query.get(0);}}return null;}


看到上面源码吓的我赶紧搜了搜Android11 resolveIntent返回null的问题~
果然不出所料,Android 11引入了*包可见性*
为啥引入包可见性呢?
Goole给出的原因:
1.鼓励最小权限原则,需要与那些应用交互,就申请那些包名。
2.帮助 Google Play 等应用商店评估应用的隐私性和安全性。、

好啦,知道了前因后果那么我们来解决问题吧~

Solve方案
方案一:

<queries>//你要交互的service的包名<package android:name="com.XXX.XXX" />//...等等包名
</queries>


方案二:

<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>


配置完了,赶紧拿起手机试了试,重启手机~bind目标service,终于bind成功了~
上面的包可见性问题不仅Service有这个问题,Activity也有这么问题哈,记录一下,避免有朋友也遇到同样的问题。

相关文章:

Android 11 Unable to start/bind service

今天在Android11上发现了一个的问题&#xff0c;如果目标Service的进程没有启动&#xff0c;那么无论是bindService还是startService都没有办法拉起指定的Service。 网上查了很多资料如下: 1.目标Service 设置 android:exported"true" 2.目标Service需要声明自定义权…...

走难而正确的路并持之以恒

走难而正确的路并持之以恒 接近八月&#xff0c;台风频繁。气象台说台风“格美”今夜将至&#xff0c;往粤北走&#xff0c;而留在粤东的将是持续的高温。高温的广州&#xff0c;这几晚的天空惊喜不断&#xff0c;成片的火烧云&#xff0c;站在猎德大桥观望&#xff0c;丹红的凤…...

规范:Redis规范

在公司项目中&#xff0c;redis属于高频使用&#xff0c;在使用中&#xff0c;我们遇到了各种各样的redis问题&#xff0c;于是针对自身情况梳理了一个redis使用规范。 一、键名设计 1、key名设计 1. 禁止包含特殊字符(比如空格、换行、单双引号以及其他转义字符) 2. 建议以…...

比较 WordPress 、 Baklib 和 BetterDocs

对于希望管理其产品和服务的在线文档或知识库以支持其客户和员工的组织来说&#xff0c;市场上有太多的平台和工具。一些组织使用 WordPress 作为 Web 内容管理&#xff0c;并打算使用可用的插件。如果您是这样的组织之一&#xff0c;正在考虑使用广泛使用的 WordPress 插件之一…...

Redis 哨兵搭建

Redis哨兵(sentinel)搭建 7.2.5 文章目录 一、单节点哨兵1. 环境介绍2. 环境前准备工作3. 安装 Redis 7.2.54. redis 配置修改并且启动4.1 修改配置文件4.2 编写启动脚本 5. 开启主从5.1 开启5.2 主库实例查看主从信息 6. 创建sentinel的配置文件并启动6.1 创建配置文件6.2 启…...

HackTheBox--Knife

Knife 测试过程 1 信息收集 端口扫描 80端口测试 echo "10.129.63.56 knife.htb" | sudo tee -a /etc/hosts网站是纯静态的&#xff0c;无任何交互功能&#xff0c;检查网页源代码也未发现任何可利用的文件。 检查页面请求时&#xff0c;请求与响应内容&#xff0…...

Linux_实现TCP网络通信

目录 1、实现服务器的逻辑 1.1 socket 1.2 bind 1.3 listen 1.4 accept 1.5 read 1.6 write 1.7 服务器代码 2、实现客户端的逻辑 2.1 connect 2.3 客户端代码 3、实现服务器与客户端的通信 结语 前言&#xff1a; 在Linux下&#xff0c;实现传输层协议为TCP…...

正则表达式与文本三剑客之grep

目录 前言 一、grep命令 二、基础正则表达式常见元字符 2.1、特殊字符 2.2、定位符 2.3、非打印字符 三、元字符操作实例 3.1、查找特定字符 3.2、利用中括号“[]”来查找集合字符 3.3、查找行首“^”与行尾字符“$” 3.4、查找任意一个字符“.”与重复字符“*” 3.…...

微信小程序开发:项目程序代码构成

✨✨ 欢迎大家来访Srlua的博文&#xff08;づ&#xffe3;3&#xffe3;&#xff09;づ╭❤&#xff5e;✨✨ &#x1f31f;&#x1f31f; 欢迎各位亲爱的读者&#xff0c;感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢&#xff0c;在这里我会分享我的知识和经验。&am…...

【云原生】Kubernetes微服务Istio:介绍、原理、应用及实战案例

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…...

【Docker】Docker-consul容器服务自动发现与注册

目录 一.Consul概述 1.解决了什么问题 2.什么叫微服务或者注册与发现 3.consul的模式 4.相关命令 二.consul 部署 1.consul服务器部署 2.部署docker容器 3.Nginx负载均衡器 3.1.安装启动nginx 3.2.配置nginx负载均衡 3.3.创建配置consul complate模板文件 3.4.添加…...

Go 1.22 remote error: tls: handshake failure

Golang 1.22 remote error: tls: handshake failure 1.22之前运行下面代码是没有错误 package mainimport ("crypto/tls""fmt""net/http" )func main() {http.DefaultTransport.(*http.Transport).TLSClientConfig &tls.Config{InsecureS…...

迈向通用人工智能:AGI的到来与社会变革展望

正文&#xff1a; 随着科技的飞速发展&#xff0c;通用人工智能&#xff08;AGI&#xff09;的来临似乎已不再遥远。近期&#xff0c;多位行业领袖和专家纷纷预测&#xff0c;AGI的到来时间可能比我们想象的要早。在这篇博客中&#xff0c;我们将探讨AGI的发展趋势、潜在影响以…...

大模型额外篇章三:vercel搭建openai中转服务器

文章目录 一、起因和注意1)起因2)注意二、实现方法(原理:透传)1)nginx方案2)node服务3)纯 js 方案4)选择国外的域名服务商(DNS 解析路径缩短,建议方案国外提供 CDN 云服务商结合自建云服务业务做负载均衡)三、实践(vercel部署OpenAI代理服务器)四、测试搭建的Ope…...

使用 jQuery 中的 this 实例

在 jQuery 中&#xff0c;this 关键字用于表示指向当前操作的 DOM 元素。本篇博客将详细介绍如何在 jQuery 中使用 this 实例。 一、选择器中的 this 在选择器中&#xff0c;this 可以方便地指向当前操作的 DOM 元素。例如&#xff0c;当用户点击一个按钮时&#xff0c;我们想…...

下载最新版Anaconda、安装、更换源、配置虚拟环境并在vscode中使用

文章目录 进入官网进入下载页安装更换源配置虚拟环境env安装包requests在vscode中使用虚拟环境 进入官网 https://repo.anaconda.com/ 或进入清华大学下载 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 进入下载页 安装 更换源 查看已经存在的镜像源 bash cond…...

极狐GitLab Git LFS(大文件存储)如何管理?

GitLab 是一个全球知名的一体化 DevOps 平台&#xff0c;很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab &#xff1a;https://gitlab.cn/install?channelcontent&utm_sourcecsdn 是 GitLab 在中国的发行版&#xff0c;专门为中国程序员服务。可以一键式部署…...

迭代学习笔记

一、迭代学习定义和分类 1、直观理解 迭代学习一般应用于重复性的场景。比如控制一个单自由度的小车以特定的速度曲线移动到指定位置&#xff0c;整个时间是10s&#xff0c;控制频率是0.01&#xff0c;那么整个控制序列就会有1000个点。这1000个点在10s内依次发出&#xff0c…...

【安全】系统安全设计规范(DOC完整版)

1.1安全建设原则 1.2 安全管理体系 1.3 安全管理规范 1.4 数据安全保障措施 1.4.1 数据库安全保障 1.4.2 操作系统安全保障 1.4.3 病毒防治 1.5安全保障措施 1.5.1实名认证保障 1.5.2 接口安全保障 1.5.3 加密传输保障 1.5.4终端安全保障 软件资料清单列表部分文档&…...

windows常用命令整理

本文分享一些常用的windows命令。根据功能的不同&#xff0c;大致可分为以下几个方面&#xff0c;一是文件操作命令&#xff0c;二是进程相关命令&#xff0c;三是磁盘相关命令&#xff0c;四是网络相关命令&#xff0c;五是其他命令。 1.文件操作命令 dir&#xff1a;显示当…...

【极限压测】从99.9%全红到5%安全线!2026最新横评5款硬核降AI工具

说真的&#xff0c;作为在知乎摸爬滚打好几年的博主&#xff0c;我太理解大家临近交稿时的那种绝望了。眼看着论文初稿要交&#xff0c;结果降ai检测一出来&#xff0c;竟然是红彤彤的99%&#xff1f;&#xff01;那一刻&#xff0c;我感觉脑袋真的“嗡”的一声。好不容易熬夜码…...

NaViL-9B效果实测:支持‘请将图中文字翻译为英文,并描述整体场景’

NaViL-9B效果实测&#xff1a;支持请将图中文字翻译为英文&#xff0c;并描述整体场景 1. 多模态能力惊艳亮相 NaViL-9B作为新一代原生多模态大语言模型&#xff0c;在图文理解方面展现出令人印象深刻的能力。不同于传统模型仅能处理单一模态&#xff0c;它能够同时理解图片内…...

Linux内核构建系统:Makefile、Kconfig与.config解析

1. Linux内核构建系统核心组件解析1.1 内核构建系统概述Linux内核作为复杂的开源项目&#xff0c;其构建系统由三个关键组件构成&#xff1a;Makefile、Kconfig和.config文件。这三个组件协同工作&#xff0c;构成了内核模块化构建的基础架构。1.1.1 组件类比关系Kconfig&#…...

Leptin30;YQQVLTSLPSQNVLQIANDLENLRDLLHLL (mouse)

一、基本信息名称&#xff1a; Leptin30&#xff08;小鼠源瘦素功能片段肽&#xff09;单字母序列&#xff1a; YQQVLTSLPSQNVLQIANDLENLRDLLHLL三字母序列&#xff1a; Tyr-Gln-Gln-Val-Leu-Thr-Ser-Leu-Pro-Ser-Gln-Asn-Val-Leu-Gln-Ile-Ala-Asn-Asp-Leu-Glu-Asn-Leu-Arg-Asp…...

DownKyi:B站视频下载工具的全方位技术解析与应用指南

DownKyi&#xff1a;B站视频下载工具的全方位技术解析与应用指南 【免费下载链接】downkyi 哔哩下载姬downkyi&#xff0c;哔哩哔哩网站视频下载工具&#xff0c;支持批量下载&#xff0c;支持8K、HDR、杜比视界&#xff0c;提供工具箱&#xff08;音视频提取、去水印等&#x…...

如何打造个人游戏云:5步掌握Sunshine跨平台串流技术

如何打造个人游戏云&#xff1a;5步掌握Sunshine跨平台串流技术 【免费下载链接】Sunshine Sunshine: Sunshine是一个自托管的游戏流媒体服务器&#xff0c;支持通过Moonlight在各种设备上进行低延迟的游戏串流。 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine…...

HFSS建模进阶:如何高效使用布尔运算和局部坐标系(实战案例解析)

HFSS建模进阶&#xff1a;布尔运算与局部坐标系的高效实战指南 在微波器件和天线设计的数字世界里&#xff0c;精确的三维建模往往是成功仿真的第一步。当您已经掌握了HFSS的基础建模操作后&#xff0c;如何将建模效率提升到专业水平&#xff1f;本文将带您深入探索两个常被忽视…...

RWKV7-1.5B-g1a惊艳案例:将复杂段落压缩为三条逻辑闭环要点

RWKV7-1.5B-g1a惊艳案例&#xff1a;将复杂段落压缩为三条逻辑闭环要点 1. 模型能力展示&#xff1a;从复杂到简洁的文本处理 RWKV7-1.5B-g1a作为一款轻量级文本生成模型&#xff0c;在信息压缩和提炼方面展现出令人惊喜的能力。我们通过一个实际案例来展示它如何将复杂内容转…...

【FastAPI 2.0流式AI响应终极指南】:20年架构师亲授异步SSE/Chunked Transfer实战避坑清单

第一章&#xff1a;FastAPI 2.0流式AI响应面试概览在现代AI应用开发中&#xff0c;面试场景下的实时交互体验正成为关键评估维度。FastAPI 2.0 引入了对原生异步流式响应&#xff08;StreamingResponse&#xff09;的深度优化&#xff0c;支持 Server-Sent Events&#xff08;S…...

探索Tabler Icons 3.40.0:新增6000+高质量SVG图标的终极指南

探索Tabler Icons 3.40.0&#xff1a;新增6000高质量SVG图标的终极指南 【免费下载链接】tabler-icons A set of over 4800 free MIT-licensed high-quality SVG icons for you to use in your web projects. 项目地址: https://gitcode.com/GitHub_Trending/ta/tabler-icons…...