getSystemService是Android很重要的一个API,它是Activity的一个方法,根据传入的NAME来取得对应的Object,然后转换成相应的服务对象.下面介绍系统相应的服务: 传入的Name 返回的对象 说明 WINDOW_SERVICE  WindowManager 管理打开的窗口程序 LAYOUT_INFLATER_SERVICE LayoutInflater  取得xml里定义的view ACTIVITY_SERVICE ActivityManager  管理应用程序的…
同事在进行code review的时候问到我context中的getSystemService方法在哪实现的,他看到了一个ClipBoardManager来进行剪切板存储数据的工具方法中用到了context.getSystemService(),而此处我使用的是Application级别的Context进行调用的,可IDE跳转时发现当前类中的getSystemService()方法居然是抽象的,Context类就是一个抽象类,没有具体的实现,可在进行调用的时候却一切正常,同事好奇该方法具体实现在…
首先讲一讲这四个函数的区别,后面还有我对context的一些理解区别如下所示: 原文链接http://stackoverflow.com/questions/6854265/getapplicationcontext-getbasecontext-getapplication-getparent 翻译+我的总结如下 1. getApplicationContext() : 这个函数返回的这个Application的上下文,所以是与app挂钩的,所以在整个生命周期里面都是不变的,这个好理解,但是使…
昨花了点时间,参考github issues 总算实现了基于xposed的系统服务注入,本文目的是为了“解决应用之间hook后数据共享,任意app ServiceManager.getService就可以直接调用aidl实现了进程通信”(比如aidl service实现socket,http server等,或者从某app获取数据传递给另外个app等场景,能做什么大家自己想吧,当然也可以实现非xposed版本的,需要通过直接smali方式.因为需快速实现,我就基于xposed的方案凑活用着用吧)…
前言 上一篇文章我们学习了Context关联类和Application Context的创建过程,这一篇我们接着来学习Activity和Service的Context创建过程.需要注意的是,本篇的知识点会和深入理解四大组件系列的部分文章的知识点相重合. 1.Activity的Context创建过程 当我们在Activity中调用startActivity方法时,其实调用的是Context的startActivity方法,如果想要在Activity中使用Context提供的方法,务必要先创建Con…
这个问题是StackOverFlow上面一个热门的问题What is Context in Android? 整理这篇文章的目的是Context确实是一个非常抽象的东西.我们在项目中随手都会用到它,但是非常多人根本不理解它究竟是干什么的,这篇文章还会加入Context in Andorid – INSIGHT的翻译,绝对让读者理解Context的意义. 老规矩,作者提出的问题: 在Android中,Context究竟是个什么鬼东西,它究竟是干嘛使得,我读了非常多篇文档,然而并不能清除的理解它的含…
代码就这么一段: new AlertDialog.Builder(getApplicationContext(),R.style.MyAlertDialogStyle) .setTitle("温柔") .setMessage("不知道 不明了 不想要\n" + "为什么 我的心") .setPositiveButton("确定",null) .setNegativeButton("取消",null) .sh…
android操作sdcard中的多媒体文件(二)——音乐列表的更新 原文地址 在上一篇随笔中,我介绍了如何在程序中查询sdcard内的多媒体文件,并且显示到播放列表中,但是,如果在sdcard内删除.增加一些多媒体文件,如何让播放列表也更新呢,这里我分享一下自己在项目中的一些解决方法,希望对大家有所帮助. 首先,我简单介绍一下android是如何扫描sdcard内的多媒体信息的,详细请阅读stay的博文:http://www.cnblogs.com/stay/articles/1957571.…
android操作sdcard中的多媒体文件(一)——音乐列表的制作 原文地址 最近做了一个android音乐播放器,个人感觉最难的就是“后台播放”以及有关“播放列表”的部分,但是总算是找到了实现的方式.不同的人实现的方式可能不一样,这里我就分享一下自己对“播放列表”这个模块的一些实现方法,“后台播放”会在下一篇博文中进行介绍,希望大家也能分享一下自己的一些思路. android使用ContentProvider来支持不同应用程序的数据共享,为了方便其他应用程序对sdcard中的数据进行操作,s…
Android中的Context(一) 在Android开发中,Context可以说是我们接触地非常多的一个概念了,也译作"上下文",但是这个上下文到底是什么却并不好理解. 通俗的理解Context是什么: 广义上的程序开发来说,每一段程序都可能有很多外部依赖(比如说外部变量),一旦程序有了这些外部依赖,在程序脱离了这些外部依赖的时候,它是没法独立运行的,为了使得程序可以运行,你需要提供这些外部依赖,而这些依赖的集合,就是上下文.或者说,Context可以理解为提供信息或功能的容器或者…