调用振动trigger.io模块

时间:2014-01-30 11:28:56

标签: android trigger.io

我试图为trigger.io模块创建一个振动函数(android / java新手)

我的代码如下,但我一直都是这个

The method getSystemService(String) is undefined for the type API

我没有导入库或其他东西吗?

public class API {
    public static void pulse(final ForgeTask task){
        Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);

        // Output yes if can vibrate, no otherwise
        if (v.hasVibrator()) {
            v.vibrate(400);
        }
    }
}

2 个答案:

答案 0 :(得分:1)

通过调用ForgeApp.getActivity()

,可以在Trigger.io模块中获取上下文

哪会给你:

Vibrator v = (Vibrator)ForgeApp.getActivity().getSystemService(Context.VIBRATOR_SERVICE);

答案 1 :(得分:0)

我假设您要像调用活动那样调用getSystemService()吗?

您需要传递上下文(可以是您的活动)并在上下文中调用它

例如,您可以在构造函数中传递它:

public class API {

    Context mContext;

    public API(Context context) {
        mContext = context;
    }

    public static void pulse(final ForgeTask task){
        Vibrator v = (Vibrator) mContext.getSystemService(Context.VIBRATOR_SERVICE);

        // Output yes if can vibrate, no otherwise
        if (v.hasVibrator()) {
            v.vibrate(400);
        }
    }
}