我正在尝试将此代码放在AppDelegate.m下以测试本地通知:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
NSDate *alertTime = [[NSDate date]dateByAddingTimeInterval:5];
UIApplication* thisApp = [UIApplication sharedApplication];
UILocalNotification* notify = [[UILocalNotification alloc] init];
if (notify){
notify.fireDate = alertTime;
notify.timeZone = [NSTimeZone defaultTimeZone];
notify.repeatInterval = 0;
notify.alertBody = @"This is notification";
[thisApp scheduleLocalNotification:notify];
}
}
但我听不到任何其他应用程序的声音。我们应该提供自己的声音吗?我们不能使用Apple原生声音进行通知吗?
以及如何设置通知的“标题文字”?因为我看到的只是notify.alertBody = @"This is notification";
,它在标题上没有产生任何内容,但是“通知”作为标题。
答案 0 :(得分:3)
声音
您需要通过指定自己的声音文件名或默认值来指定声音。 From the documentation:
对于此属性,请指定应用程序主包中的声音资源的文件名(包括扩展名)或UILocalNotificationDefaultSoundName以请求默认系统声音。当系统显示本地通知的警报或标记应用程序图标时,它会播放此声音。默认值为nil(无声音)。不支持持续时间超过30秒的声音。如果您指定的声音播放时间超过30秒,则会播放默认声音。
<强>标题强>
您无法修改通知的标题。它始终是您的应用名称,以便用户确切知道通知的来源。