IOS 本地推送 IOS10.0以上 static的作用 const的作用

时间:2021-07-21 19:17:32
//需要在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类型, 则表明他是一个函数,不能修改类的成员变量