0

私は近接センサーの検出に取り組んでいるそのアプリで1つのアプリを開発しています。そして、近接が検出されると、電話を振動させます。正常に実行されましたが、そのアプリを 2 回目に開き、近接電話が振動していない状態を検出すると、1 回目と 2 回目の両方が実行されます。私は今混乱しています。これを行うのを手伝ってください。

以下のコードが使用されています。

if([[delegate.vibrationdefault stringForKey:@"Vibration"] isEqualToString:@"on"])
{
    NSLog(@"Proximity detect with vibration on") ;
    [recorder stop];
    //AudioServicesPlayalSound (kSystemSoundID_Vibrate) ;
    AudioServicesPlayAlertSound (kSystemSoundID_Vibrate) ;
    [recorder record];
}
4

1 に答える 1

1

これがうまくいくかどうかはよくわかりませんが、おそらく次のようにすることができます:

if([[delegate.vibrationdefault stringForKey:@"Vibration"] isEqualToString:@"on"])
{
    NSLog(@"Proximity detect with vibration on") ;
    [recorder stop];
    //AudioServicesPlayalSound (kSystemSoundID_Vibrate) ;
    AudioServicesPlayAlertSound (kSystemSoundID_Vibrate) ;
    sleep(1);
    AudioServicesPlayAlertSound (kSystemSoundID_Vibrate) ;
    sleep(1);
    AudioServicesPlayAlertSound (kSystemSoundID_Vibrate) ;
    [recorder record];
}

アンダーを使用しsleep(timeInSeconds);て遅延させることができます。0.5 秒を使用できるかどうかはわかりませんが、試してみてください。

于 2013-10-28T10:19:35.997 に答える