2016-06-08 115 views
0

我想在交互式localnotification中添加自定義聲音。我在的appdelegateUILocalNotification總是給出默認聲音

func application(application: UIApplication, didRegisterUserNotificationSettings notificationSettings: UIUserNotificationSettings) { 
    scheduleNotification() 
} 
    func scheduleNotification() { 
    //UIApplication.sharedApplication().cancelAllLocalNotifications() 

    // Schedule the notification ******************************************** 
    if UIApplication.sharedApplication().scheduledLocalNotifications!.count == 0 { 

     let notification = UILocalNotification() 
     notification.alertBody = "Hey! Update your counters ;)" 
     // let URLToMyFile = documentsURL.URLByAppendingPathComponent("notes_of_the_optimistic.caf") 

     let ring: String = NSBundle.mainBundle().pathForResource("notes_of_the_optimistic", ofType: "caf")! 
     print(ring) 
     notification.soundName = ring 
     notification.fireDate = NSDate() 
     notification.category = categoryID 
     notification.repeatInterval = NSCalendarUnit.Minute 

     UIApplication.sharedApplication().scheduleLocalNotification(notification) 
    } 
} 

我已經加入notes_of_the_optimistic.caf文件在我的項目,但我nitification總是給默認的聲音編寫代碼。聲音文件的長度爲29秒。任何budy都可以告訴我我錯過了什麼。

+1

你並不需要得到你的自定義聲音的完整路徑,你需要像'notification.soundName =「notes_of_the_optimistic.caf」' – iSashok

+0

它的工作文件格式只有聲音的名字,謝謝 – Avim

+0

@iSashok請加作爲Avinash可以接受的答案。如果你們這樣做,其他用戶也將在未來得到幫助。 –

回答

1

你並不需要得到你的自定義聲音的完整路徑,只需聲名與文件格式like notification.soundName = "notes_of_the_optimistic.caf"

1

這裏的問題是您要將整個路徑發送到您的聲音資產。

更換

let ring: String = NSBundle.mainBundle().pathForResource("notes_of_the_optimistic", ofType: "caf")! 

let ring: String = "notes_of_the_optimistic" 
-1

。咖啡館和任何手動類型轉換文件將無法正常工作。使用mp3和 aiff(蘋果定義格式)。

+0

這是從哪裏引用的? –