//需要在AppDelegate里面启动APP的函数 加上
UIUserNotificationType types = UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert; UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:types categories:nil]; [[UIApplication sharedApplication] registerUserNotificationSettings:settings]; [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
UNUserNotificationCenter* userNofit=[UNUserNotificationCenter currentNotificationCenter]; UNMutableNotificationContent* content = [[UNMutableNotificationContent alloc] init]; content.body =@"body"; content.sound=[UNNotificationSound defaultSound];//声音 // 在 alertTime 后推送本地推送 延迟5秒 UNTimeIntervalNotificationTrigger* trigger = [UNTimeIntervalNotificationTrigger triggerWithTimeInterval:5 repeats:NO]; UNNotificationRequest* request = [UNNotificationRequest requestWithIdentifier:@"L_UN" content:content trigger:trigger]; [userNofit addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) { //错误信息处理 }];
static的作用:
1.在函数体内定义的static他的作用域为该函数体,该变量在内存中只被分配一次,因此,其值在下次调用时仍维持上次的值不变
2.在模块内的static全局变量可以被模块内所用函数访问,但是不能被模块外的其他函数访问
3.在模块内的staic全局变量可以被这一模块内的其他函数调用,这个函数的使用范围被限制在这个模块内;
4.在类中的static成员变量属于整个类所拥有,对类的所有对象只有一份拷贝,也就是说只要是该类的对象,那么该对象的中被static修饰的实例变量都指向同一块地址
const 关键字作用:
1.被const关键字修饰的实例变量,在初始化之后,其值就不能改变了,
2.队指针来说,可以指定指针本身为const,也可以指定指针所指的数据为const,或者二者同时指定为const;
3.对于类的成员函数,若指定其为const类型, 则表明他是一个函数,不能修改类的成员变量