jjzjj

getSystemService

全部标签

android - Context.getSystemService 返回的哪个服务永远不会为空?

Context.getSystemService的文档州Returns:Theserviceornullifthenamedoesnotexist.接受的名称列表列为ACTIVITY_SERVICEALARM_SERVICEAUDIO_SERVICEBATTERY_SERVICECARRIER_CONFIG_SERVICECONNECTIVITY_SERVICEDOWNLOAD_SERVICEINPUT_METHOD_SERVICEJOB_SCHEDULER_SERVICEKEYGUARD_SERVICELAYOUT_INFLATER_SERVICELOCATION_SERVICEME

java - 错误 :Attempt to invoke virtual method 'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference

publicclassAlarmTaskimplementsRunnable{//ThedateselectedforthealarmprivatefinalCalendardate;//TheandroidsystemalarmmanagerprivatefinalAlarmManageram;//YourcontexttoretrievethealarmmanagerfromprivatefinalContextcontext;publicAlarmTask(Contextcontext,Calendardate){this.context=context;this.am=(Ala

android - 是否应该缓存 getSystemService(...) 结果?

getSystemService的文档建议不要在各种不同的上下文之间共享服务对象。对于单个上下文,是通过将服务对象分配给onCreate()中的实例字段来缓存服务对象,还是应该在使用时获取?惯用用法是什么? 最佳答案 由于持有系统服务对象的持续成本非常低,我建议在数据成员中持有它。是在onCreate()中获取一个还是在需要时对其进行延迟初始化取决于您。请注意,使用系统服务对象可能会产生巨大的成本。持有一个LocationManager实例很便宜;使用GPS(例如,通过requestLocationUpdates())并不便宜。

android - 如何避免 Android getSystemService(Context.SENSOR_SERVICE) 挂起模拟器?

每当我在Android模拟器中调用此方法时:SensorManagersensorManager=(SensorManager)getSystemService(Context.SENSOR_SERVICE);模拟器挂起。在搜索这个问题时,我发现很多引用文献都在2009年修复了这个问题,但我目前使用的是当前可用的最新SDK/工具(2011年12月)。API级别8/v2.2。我真的必须实现代码来检查我是否在模拟器中运行并避免所有基于传感器的代码吗? 最佳答案 我在模拟器中遇到了与API7类似的情况:上述代码导致模拟器立即退出程序,没有

android - 状态改变时如何关闭MediaRecorder播放的声音

我的Android应用程序在SurfaceHolder上使用MediaRecorder来显示相机正在捕获的内容的实时预览。每次用户按下应用程序上的REC按钮时,应用程序就会开始录制。每次MediaRecorder的状态切换到“开始”或从“开始”切换时,Android都会自动(?)发出哔声。这种蜂鸣声因手机而异,这让我认为这种蜂鸣声本身与MediaRecorder的状态变化有关。如果手机音量设置为静音,则不会播放提示音。我用谷歌搜索并做了一些研究,但找不到关闭此提示音的方法。可能吗?如果是,怎么办?该应用已在以下平台上测试:NexusOne2.3.4、DesireHD2.3.3

android - getLayoutInflater() 和 .getSystemService(Context.LAYOUT_INFLATER_SERVICE) 之间有什么区别吗

简单的“不”回答会让我平静下来。如果有什么不同,那是什么? 最佳答案 没有只要调用getLayoutInflater()的Activity或Window与调用getSystemService()的Context相同,就没有区别。证明您可以将getLayoutInflater()返回的LayoutInflater追溯到LayoutInflater.from()您可以从源代码中看到这只是getSystemService()的快捷方式:publicstaticLayoutInflaterfrom(Contextcontext){Layou

android - getLayoutInflater() 和 .getSystemService(Context.LAYOUT_INFLATER_SERVICE) 之间有什么区别吗

简单的“不”回答会让我平静下来。如果有什么不同,那是什么? 最佳答案 没有只要调用getLayoutInflater()的Activity或Window与调用getSystemService()的Context相同,就没有区别。证明您可以将getLayoutInflater()返回的LayoutInflater追溯到LayoutInflater.from()您可以从源代码中看到这只是getSystemService()的快捷方式:publicstaticLayoutInflaterfrom(Contextcontext){Layou

android - (AudioManager)getSystemService(Context.AUDIO_SERVICE) 导致内存泄漏

我遇到了由AudioManager引起的内存泄漏。所以我在我的代码中注释掉了这一行,看看它是否能解决我的问题:publicclassFireRoomActivityextendsActivity{AudioManageram;protectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);am=(AudioManager)getSystemService(Context.AUDIO_SERVICE);}}它确实解决了问题,我不再有内存泄漏。是因为Context.AUDIO_SERVIC

android - MEDIA_PROJECTION_SERVICE 在调用 getSystemService() 时无效

我正在尝试开发一个需要捕获屏幕内容的应用程序。我的目标是Lollipop,以避免对root的要求。当尝试通过调用getSystemService()获取MediaProjectionManager的实例时,我在AndroidStudio中收到以下错误报告:Mustbeoneof:Context.POWER_SERVICE,Context.WINDOW_SERVICE,Context.LAYOUT_INFLATER_SERVICE,Context.ACCOUNT_SERVICE,Context.ACTIVITY_SERVICE,Context.ALARM_SERVICE,Context.

android - getLayoutInflator 和 (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE) 有什么区别

我对这两种说法感到困惑。它们有什么区别,我什么时候可以使用它们?LayoutInflaterinflater=(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);Viewv=inflater.inflate(R.layout.activity_custom_lists1,parent);和Viewv=getLayoutInflater().inflater.inflate(R.layout.activity_custom_lists1,parent); 最佳答案