自定义声音远程推送通知iOS无法正常工作

我正在尝试更改远程消息的声音

我已将文件添加到我的项目中,见图1

结构应用

我还在AppDelegate中添加了所有内容。 在didFinishLaunchingWithOptions中,我添加了:

if (UIDevice.currentDevice().systemVersion as NSString).floatValue >= 8.0 { UIApplication.sharedApplication().registerUserNotificationSettings(UIUserNotificationSettings(forTypes: .Sound | .Alert | .Badge, categories: nil)) UIApplication.sharedApplication().registerForRemoteNotifications() } else { UIApplication.sharedApplication().registerForRemoteNotificationTypes(.Badge | .Sound | .Alert) } //Clear badge UIApplication.sharedApplication().applicationIconBadgeNumber = 0 UIApplication.sharedApplication().cancelAllLocalNotifications() 

我实施的其他方法是:

 func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) { let deviceTokenString = deviceToken.hexString println(deviceTokenString) let task = service.writeForNotifications(token: deviceTokenString, completionHandler: { }) task.resume() } func application(application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: NSError) { println("Failed to get token: \(error)") } 

我从服务中收到的Json是:

 {"aps":{"alert":"The push message!", "sound":"ice.caf"}} 

我不确定我是否已经忘记改变通知的声音了? 当我收到通知时,它始终播放默认声音。

您确定该文件已添加到捆绑包中吗? 您可以通过查看Build Phases中的Copy Bundle Resources来检查这一点。

请参阅此图片以获得澄清:

在此处输入图像描述

在通知下检查您的应用程序手机的设置。 用户可以在此处启用或禁用应用程序的通知,包括徽章,声音和警报的各个设置。

在处理通知之前,请确保声音已打开。