我正在尝试在我的Android应用中使用振动,但它显示错误The method getSystemservices(String) undefined for the type
。
以下是我使用的代码
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(300);
我怎么能解决这些错误请帮帮我。 感谢
答案 0 :(得分:1)
尝试:
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
// Vibrate for 500 milliseconds
v.vibrate(500);
不要忘记在AndroidManifest.xml文件中包含权限:
<uses-permission android:name="android.permission.VIBRATE"/>
答案 1 :(得分:1)
在您的清单文件中添加此权限:
<uses-permission android:name="android.permission.VIBRATE" />
答案 2 :(得分:1)
您正在调用的类可能不是Activity
或其他具有自己上下文的类。因此,如果你在函数中调用它,你应该做这样的事情:
public void someFunction(Context context){
// .. code
Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
// .. more code
}
或在课堂上
public class MyClass {
private Context mContext;
public MyClass(Context context){
mContext = context;
}
public void someFunction(){
// code
Vibrator vibrator = (Vibrator) mContext.getSystemService(Context.VIBRATOR_SERVICE);
// .. code
}
}
并且正如提到的其他答案一样,不要忘记为清单文件添加权限:
<uses-permission android:name="android.permission.VIBRATE"/>
希望这有帮助! :)
答案 3 :(得分:0)
公共类MyClass {
private void Context mContext;
public MyClass(Context context){
mContext = context;
}
public void someFunction(){
// code
Vibrator v = (Vibrator) mContext.getSystemService(Context.VIBRATOR_SERVICE);
// .. code
}
}