Я создал расширение службы уведомлений iOS, и раньше оно работало должным образом на всех устройствах, даже на iPhone 6s и 6S +.Но неожиданно, с некоторого времени назад, теперь происходит сбой на iPhone 6S или более новом устройстве во всех версиях iOS, протестированных на iOS 11 и 12 одновременно.Можно сказать, что это сбой на iPhone, в которых доступно 3D Touch.и отладчик сообщает, что проблема в распределении памяти разрешена 12 МБ, и он выделяет более 12 МБ.Но одно и то же приложение отлично работает на iPhone 6S или более старом устройстве во всех версиях iOS, протестированных на iOS 11 и 12. Оба:
NotificationService.h
#import <UserNotifications/UserNotifications.h>
API_AVAILABLE(ios(10.0))
@interface NotificationService : UNNotificationServiceExtension <UNUserNotificationCenterDelegate>
@end
NotificationService.m
#import "NotificationService.h"
@interface NotificationService ()
@property (nonatomic, strong) void (^contentHandler)(UNNotificationContent *contentToDeliver);
@property (nonatomic, strong) UNMutableNotificationContent *bestAttemptContent;
@end
@implementation NotificationService
- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler {
self.contentHandler = contentHandler;
self.bestAttemptContent = [request.content mutableCopy];
NSLog(@"Here I want to modify my payload title but app crashes before \"didReceiveNotificationRequest\" called and allocing more than 12 MB memory on iPhone 6S or Newer Device");
}
- (void)serviceExtensionTimeWillExpire {
// [self.downloadTask cancel];
NSLog(@"serviceExtensionTimeWillExpire");
self.contentHandler(self.bestAttemptContent);
}
Кто-нибудь может дать мне знать, как решить эту проблему?