SDK_UnityMoney/Assets/Plugins/iOS/ThinkingSDK/Source/AppLaunch/AppPush/TDAPPPushParams.m

71 lines
2.2 KiB
Objective-C

//
// TDAPPPushParams.m
// ThinkingSDK
//
// Created by Charles on 6.5.23.
//
#import "TDAPPPushParams.h"
id __td_get_userNotificationCenter(void) {
Class cls = NSClassFromString(@"UNUserNotificationCenter");
SEL sel = NSSelectorFromString(@"currentNotificationCenter");
if ([cls respondsToSelector:sel]) {
id (*getUserNotificationCenterIMP)(id, SEL) = (NSString * (*)(id, SEL))[cls methodForSelector:sel];
return getUserNotificationCenterIMP(cls, sel);
}
return nil;
}
id __td_get_userNotificationCenter_delegate(void) {
Class cls = NSClassFromString(@"UNUserNotificationCenter");
SEL sel = NSSelectorFromString(@"currentNotificationCenter");
SEL delegateSel = NSSelectorFromString(@"delegate");
if ([cls respondsToSelector:sel]) {
id (*getUserNotificationCenterIMP)(id, SEL) = (id (*)(id, SEL))[cls methodForSelector:sel];
id center = getUserNotificationCenterIMP(cls, sel);
if (center) {
id (*getUserNotificationCenterDelegateIMP)(id, SEL) = (id (*)(id, SEL))[center methodForSelector:delegateSel];
id delegate = getUserNotificationCenterDelegateIMP(center, delegateSel);
return delegate;
}
}
return nil;
}
NSDictionary * __td_get_userNotificationCenterResponse(id response) {
@try {
if ([response isKindOfClass:[NSClassFromString(@"UNNotificationResponse") class]]) {
return [response valueForKeyPath:@"notification.request.content.userInfo"];
}
} @catch (NSException *exception) {
}
return nil;
}
NSString * __td_get_userNotificationCenterRequestContentTitle(id response) {
@try {
if ([response isKindOfClass:[NSClassFromString(@"UNNotificationResponse") class]]) {
return [response valueForKeyPath:@"notification.request.content.title"];
}
} @catch (NSException *exception) {
}
return nil;
}
NSString * __td_get_userNotificationCenterRequestContentBody(id response) {
@try {
if ([response isKindOfClass:[NSClassFromString(@"UNNotificationResponse") class]]) {
return [response valueForKeyPath:@"notification.request.content.body"];
}
} @catch (NSException *exception) {
}
return nil;
}