如何在Android库模块中使用Vibrator

时间:2018-06-11 13:15:29

标签: java android

我的目标是使用一些基本的振动方法创建一个简单的库,这样我就可以在其他一些框架中拥有更多样化的本机选项集。我的问题是我无法在库中使用getActivity()getSystemService(Context.VIBRATOR_SERVER)

这是我到目前为止的图书馆课程:

import android.os.Vibrator;
public class Vibration {

private Vibrator _vibrator;

     public static void Vibrate(long milliseconds ){
         Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
         //getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
         v.vibrate(VibrationEffect.createOneShot(
            milliseconds,VibrationEffect.DEFAULT_AMPLITUDE));
     }
}

我收到Cannot resolve symbol 'Context'getSystemService

也是如此

有人想知道从库中调用这些方法吗?

1 个答案:

答案 0 :(得分:2)

你需要在Vibrate()方法中传递上下文对象,如下所示:

public static void Vibrate(long milliseconds, Context context) {
    Vibrator v = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
    v.vibrate(VibrationEffect.createOneShot(
            milliseconds, VibrationEffect.DEFAULT_AMPLITUDE));
}

并且对于上下文,您需要导入import android.content.Context;