我在Android上使用AIDE,我无法让它振动。
相关代码如下:
import android.os.*;
Vibrator.vibrate((long)1000);
它说(在.vibrate线上)“这里没有这样的参考。”当我检查应用程序内部的定义时,那里就有Vibrator.vibrate。
这里有什么问题?它必须是简单的,但解决方案不在网络上或其他任何地方。
答案 0 :(得分:4)
这里有什么问题?
vibrate()
不是静态方法。您无法在vibrate()
课程上致电Vibrator
。您需要在vibrate()
类的实例上调用Vibrator
。引用the documentation:
要获取系统振动器的实例,请使用VIBRATOR_SERVICE作为参数调用getSystemService(String)。
您还需要在清单中请求VIBRATE
权限,并在具有振动电机的设备上运行代码。
答案 1 :(得分:1)
您必须从系统中获取该类的实际实例,您不能像这样调用该方法。 鉴于你在一个活动中:
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(1000);
另外,请确保您在AndroidManifest中设置了相应的权限:
<uses-permission android:name="android.permission.VIBRATE" />