我想在UserNotification(本地通知)中显示一个gif动画,但是我只能在用户通知中显示一个图像,动画不能显示。我这样做是为了目标-c
我的代码//调度通知
NSString *UNExtensionID=@"animatedContentExtension";
NSError *error;
UNMutableNotificationContent *content = [[UNMutableNotificationContent alloc] init];
content.title = [NSString localizedUserNotificationStringForKey:@"Test Notification:" arguments:nil];
content.body = [NSString localizedUserNotificationStringForKey:@"Hello there!It is a multimedia notification with animation!"
arguments:nil];
content.sound = [UNNotificationSound defaultSound];
UNNotificationAttachment *attachment;
NSURL *url = [[NSBundle mainBundle] URLForResource:@"bike" withExtension:@"png"];
attachment=[UNNotificationAttachment attachmentWithIdentifier:@"imageID"
URL: url
options:nil
error:&error];
content.attachments=@[attachment];
content.categoryIdentifier=UNExtensionID;
content.badge = @([[UIApplication sharedApplication] applicationIconBadgeNumber] + 1);
UNTimeIntervalNotificationTrigger *trigger = [UNTimeIntervalNotificationTrigger
triggerWithTimeInterval:20.0f repeats:NO];
UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:@"FiveSecond"
content:content trigger:trigger];
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
if (!error) {
NSLog(@"add NotificationRequest succeeded!");
}
}];// (void)didReceiveNotificationRequest:(UNNotificationRequest *中的// AppDelegate请求withContentHandler:(void (^)(UNNotificationContent *contentToDeliver))contentHandler{
UNNotificationAttachment *attachment;
NSError *error;
UNMutableNotificationContent *content = [[UNMutableNotificationContent alloc] init];
NSURL *url = [[NSBundle mainBundle] URLForResource:@"bike" withExtension:@"png"];
attachment=[UNNotificationAttachment attachmentWithIdentifier:@"imageID"
URL:url
options:nil
error:&error];
content=request.content.mutableCopy;
content.attachments= @[attachment];
`enter code here`contentHandler(content);}
发布于 2016-10-07 13:28:24
您必须将.gif文件添加到Notification Service Extension文件中。您可以从其中创建一个UNNotificationAttachment对象,并传入completionHandler of func didReceiveNotificationRequest(request: UNNotificationRequest, withContentHandler contentHandler: (UNNotificationContent) -> Void)方法的UNNotificationServiceExtension子类。
https://stackoverflow.com/questions/39827825
复制相似问题