【发布时间】:2014-07-01 09:56:09
【问题描述】:
我已使用this previous thread 中建议的策略在非活动类中创建自定义振动器。
import android.content.Context;
import android.os.Vibrator;
public class IntensityVibrator {
private static IntensityVibrator iv;
private Vibrator vib= null;
private Context context;
private Vibrator getVibrator(){
if(vib == null){
vib = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
}
return vib;
}
public static IntensityVibrator getManager(<an_activity> context) {
if(iv == null){
iv = new IntensityVibrator();
}
iv.setContext(context);
return iv;
}
private void setContext(Context context){
this.context = context;
}
public void regularVibrate(long millis){
vib.vibrate(millis);
}
}
我在其他类中这样使用它:
vib = (IntensityVibrator) IntensityVibrator.getManager(<an_activity>);
我在其中创建 vib 对象的类也是一个非活动类。因此我通过 an_activity 上下文传递上下文。
应用程序在调用最后一个方法时崩溃。调试显示代码工作正常,直到调用 vib.vibrate(millis)。你能猜出这里可能是什么问题吗?
【问题讨论】:
标签: android customization vibration