2013-10-28 61 views
0

我開發了一個應用程序,我正在接近傳感器檢測。當接近檢測使振動手機。它運行成功,但當第二次打開該應用程序,並檢測接近電話不振動條件執行第一次和第二次。我現在很困惑,請幫助我做到這一點。iphone多次檢測接近傳感器時震動,但只有一次

下面的代碼我已被使用。

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

所以這意味着你必須振動一次,但它振動兩次?這是你的問題嗎? –

+0

不,我想振動很多次.. – Jitendra

回答

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秒,但你可以嘗試。

+0

這不是我的要求我想whwn用戶第二次啓動應用程序這種情況下執行..但我的手機不振動。 – Jitendra