怎么在Android系统中添加服务?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
如何获取系统服务
我们获取系统服务都是在context中,getSystemService获取到的. 那么我们看一下getSystemService发生了哪些些事情.
getSystemService的实现是ContextImpl,我们去看一下ContextImpl的源码就知道了.
Android 4.4.4 (KitKat)
这里是Android4.4.4的源码, 6.0的源码过会儿看.
//这是我们获取服务的路口 @Override public Object getSystemService(String name) { //可以看到我们是从一个HashMap中拿的服务. ServiceFetcher fetcher = SYSTEM_SERVICE_MAP.get(name); return fetcher == null ? null : fetcher.getService(this); } private static final HashMap<String, ServiceFetcher> SYSTEM_SERVICE_MAP = new HashMap<String, ServiceFetcher>(); //这是注册服务的方法,请注意是静态方法 private static void registerService(String serviceName, ServiceFetcher fetcher) { if (!(fetcher instanceof StaticServiceFetcher)) { fetcher.mContextCacheIndex = sNextPerContextServiceCacheIndex++; } SYSTEM_SERVICE_MAP.put(serviceName, fetcher); }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- 在 Java 中,asm 框架究竟有哪些作用呢?(java中asm框架的作用是什么)
- 如何优化 Java 中 HashMap 的性能?(Java中HashMap的性能如何优化 )
- 如何声明和使用 Java 静态成员?(Java静态成员怎么声明与使用)
- Java 后端常用技术有哪些?(java后端常用技术是什么)
- JavaScript 事件委托主要适用于哪些场景呢?(JavaScript事件委托适用哪些情况)
- Java 中私有变量的最佳实践有哪些?(私有变量在java中的最佳实践)
- 如何在 Java 中生成固定长度的随机数?(java怎么生成固定长度随机数)
- 如何使用 Java 的 entrySet 方法来获取 Map 集合中的元素?(Java怎么用entrySet方法获取Map集合中的元素)
- Java 中实现 JDBC 批量提交的方法究竟是什么?(java中jdbc批量提交的方法是什么)
- Java 中 decimal 类型具有哪些特性?(java中decimal类型有哪些特点)
猜你喜欢
AI推送时光机怎么在Android系统中添加服务
后端开发2023-05-31
Android 7.1添加一个 系统底层服务
后端开发2022-06-06
在android上添加samba服务
后端开发2023-09-17
win10系统中怎么在home文件夹中添加库
后端开发2023-06-08
android怎么在布局中添加图片
后端开发2023-08-16
CentOS 7怎么添加自定义系统服务
后端开发2023-06-10
怎么在Android应用中添加一个添加物品动画
后端开发2023-05-31
怎么在linux系统下添加新硬盘
后端开发2023-06-10
在Linux系统中怎么给iptables规则添加注释
后端开发2023-06-13
怎么添加Dropbox服务到系统右键菜单
后端开发2023-06-14
怎么在Linux中启动时添加服务
后端开发2023-06-05
怎么在Ubuntu系统中添加一个辅助IP地址
后端开发2023-06-16
在Win2003服务器系统中如何添加Web虚拟主机
后端开发2023-06-04
XP系统怎么添加字体
后端开发2023-10-21
win10系统中怎么添加微软五笔
后端开发2023-06-28
win7系统怎么在开始菜单中添加程序图标
后端开发2023-06-28
android 12.0 添加自定义系统服务接口给app调用
后端开发2023-09-12
linux系统怎么添加新用户
后端开发2023-08-25
Linux系统怎么添加新账户
后端开发2023-06-13
咦!没有更多了?去看看其它编程学习网 内容吧