在systemserver中,audioservice是这么加的:
if (!"0".equals(SystemProperties.get("system_init.startaudioservice"))) {
try {
Slog.i(TAG, "Audio Service");
ServiceManager.addService(Context.AUDIO_SERVICE, new AudioService(context));
} catch (Throwable e) {
reportWtf("starting Audio Service", e);
}
}在调节音量的时候会get AUDIO_SERVICE 这个service
对应的代码是:
final AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);这里就很不明白,我查了下代码,这里并没有AudioManager和Context.AUDIO_SERVICE的联系啊为什么这个getSystemService返回的却是 AudioManager 呢???why? 谁可以指点下么? 非常不解啊
if (!"0".equals(SystemProperties.get("system_init.startaudioservice"))) {
try {
Slog.i(TAG, "Audio Service");
ServiceManager.addService(Context.AUDIO_SERVICE, new AudioService(context));
} catch (Throwable e) {
reportWtf("starting Audio Service", e);
}
}在调节音量的时候会get AUDIO_SERVICE 这个service
对应的代码是:
final AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);这里就很不明白,我查了下代码,这里并没有AudioManager和Context.AUDIO_SERVICE的联系啊为什么这个getSystemService返回的却是 AudioManager 呢???why? 谁可以指点下么? 非常不解啊
解决方案 »
- 跪求~~~大神啊!安卓(android)手机下载的测距软件如smart tools工具中的测距(distance)工具如何测距???
- TabWidget切换导致edittext上的文本不显示了
- 求教大虾,手机android2.2下的flash应用开发,为何文本框无法输入中文?
- Ophone上如何建立自定义分辨率的模拟器
- 求救:如何获取图片的分辨率
- 想通过反射动态生成一个列表,结果失败了,求高手
- android 自定义统计图
- android手机USB连接电脑发送短信
- android app安装时最后一步提示后台运行 怎样才能:默认勾选
- React Native的PermissionsAndroid组件如何避免连续提示的情况?
- 如何获取OS4.1版本中的SD卡权限保护值
- 小菜请教个问题,eoeandroid上没解决
AudioManager provides access to volume and ringer mode control.Use Context.getSystemService(Context.AUDIO_SERVICE) to get an instance of this class.这是获得它的控制类啊,就跟ServiceManager.addService添加服务一样,也是再控制类中
对用户来说,只能通过AudioManager去操作音频对象 。 至于为什么返回的是 :final AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
你可以去看看ContextImpl.java类 。它返回的就是AudioManager类。