首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sensorManager对象的未定义getSystemService()函数

sensorManager对象的未定义getSystemService()函数
EN

Stack Overflow用户
提问于 2012-01-04 16:30:18
回答 2查看 7.7K关注 0票数 1

我的源码是:

代码语言:javascript
复制
import android.content.Context;
import android.hardware.SensorManager;

public class ShakeEvent implements SensorEventListener  {
     private static SensorManager sensorManager;
     ...
     ...
     public static boolean isSupported (){
          sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

我收到错误消息,指出getSystemService函数定义不足。我试着用这样的方式来写这行:

代码语言:javascript
复制
sensorManager = (SensorManager) getContext().getSystemService(Context.SENSOR_SERVICE);

但随后我收到错误消息,指出ShakeEvent对象的getContext()函数未定义。我该怎么写呢?谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-04 16:42:33

您的类似乎没有引用任何Context对象。getSystemService()是一种Context方法,因此在创建SensorEventListener时需要对上下文对象(如Activity)的引用。然后你就可以调用context.getSystemService()了。

代码语言:javascript
复制
import android.content.Context;
import android.hardware.SensorManager;

public class ShakeEvent implements SensorEventListener  {
     private static SensorManager sensorManager;
     private final Context context;

     public ShakeEvent(Context context) {
         this.context = context;
     }

     ...
     ...
     public static boolean isSupported (){
          sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
票数 4
EN

Stack Overflow用户

发布于 2012-01-04 16:42:43

您需要将上下文对象传递给此类并调用getSystemService(..)在它上面

代码语言:javascript
复制
public class ShakeEvent implements SensorEventListener  {
    private static SensorManager sensorManager;
    private Context mCtx;
    ...
    public ShakeEvent(Context ctx) {
        this.mCtx = ctx;
    }
    public static boolean isSupported (){
         sensorManager = (SensorManager) mCtx.getSystemService(Context.SENSOR_SERVICE)
         ...
    }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8723980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档