我的目标是使用一些基本的振动方法创建一个简单的库,以便在其他一些框架中可以有一组更多样化和更原生的选项。我的问题是我无法在库中使用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也是如此

任何人都有从库中调用这些方法的想法吗?

最佳答案

您需要在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;

关于java - 如何在Android库模块中使用振动器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50798617/

10-12 14:46