振動を伴う小さなアプリケーションで作業していて、vibrate()
関数が呼び出されると、アプリケーションがクラッシュします。スタックトレースは、 "Vibrator:Failed to vibrate"というテキストでvibrator.vibrate()行に戻ります。バイブレータ。また、すべてのAndroidクラスにリンクするDeadObjectExceptions
とRuntimeExceptions
のカップルがあります。これは一部の電話機でのみ発生し、他の電話機では完全に機能します。hasVibrator()がtrueを返すにもかかわらず、Vibratorを使用するとアプリケーションがクラッシュする
hasVibrator()
返信true
バイブレーターオブジェクトはnullではなく、電話にはバイブレーターが付いているため、何が間違っているかわかりません。おそらく、私はバイブレータオブジェクトが作成されたあと、あまりにも早く振動しようとしていますか、またはonCreate()
メソッドであまりにも早くバイブレータオブジェクトを作成していますか?ここで
は私がvibrate()
メソッドを使用していたコードの一部です:
//vibrate only if exists
if (vibrating)
{
long[] pattern = {0, power, target - power};
try
{
vibrator.vibrate(pattern, 0);
}
catch (Exception e)
{
vibrating = false;
}
}
に振動する権限を追加しますか?ありがとうございました。 –
@NewtronLabs私は失敗した携帯電話の1つにアクセスできませんが、明日はできる限りそれを追加します。 – AtlasShrugging