Optimize ios native methods

- setTags
- setAlias
- setTagsWithAlias
This commit is contained in:
hevin 2017-05-26 20:46:21 +08:00
parent 2a05ea1784
commit 2287ef10dd

View File

@ -99,24 +99,45 @@
-(void)setTagsWithAlias:(CDVInvokedUrlCommand*)command{ -(void)setTagsWithAlias:(CDVInvokedUrlCommand*)command{
NSString *alias = [command argumentAtIndex:0]; NSString *alias = [command argumentAtIndex:0];
NSArray *tags = [command argumentAtIndex:1]; NSArray *tags = [command argumentAtIndex:1];
[JPUSHService setTags:[NSSet setWithArray:tags] [JPUSHService setTags:[NSSet setWithArray:tags]
alias:alias alias:alias
callbackSelector:@selector(tagsWithAliasCallback:tags:alias:) fetchCompletionHandle:^(int iResCode, NSSet *iTags, NSString *iAlias) {
object:self]; CDVPluginResult *result;
if (iResCode == 0) {
result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:nil];
} else {
result = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:nil];
}
}];
} }
-(void)setTags:(CDVInvokedUrlCommand*)command{ -(void)setTags:(CDVInvokedUrlCommand*)command{
NSArray *tags = command.arguments; NSArray *tags = command.arguments;
[JPUSHService setTags:[NSSet setWithArray:tags] [JPUSHService setTags:[NSSet setWithArray:tags]
callbackSelector:@selector(tagsWithAliasCallback:tags:alias:) alias:nil
object:self]; fetchCompletionHandle:^(int iResCode, NSSet *iTags, NSString *iAlias) {
CDVPluginResult *result;
if (iResCode == 0) {
result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:nil];
} else {
result = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:nil];
}
}];
} }
-(void)setAlias:(CDVInvokedUrlCommand*)command{ -(void)setAlias:(CDVInvokedUrlCommand*)command{
NSString *alias = [command argumentAtIndex:0]; NSString *alias = [command argumentAtIndex:0];
[JPUSHService setAlias:alias [JPUSHService setTags:nil
callbackSelector:@selector(tagsWithAliasCallback:tags:alias:) alias:alias
object:self]; fetchCompletionHandle:^(int iResCode, NSSet *iTags, NSString *iAlias) {
CDVPluginResult *result;
if (iResCode == 0) {
result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:nil];
} else {
result = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR messageAsString:nil];
}
}];
} }
-(void)getRegistrationID:(CDVInvokedUrlCommand*)command{ -(void)getRegistrationID:(CDVInvokedUrlCommand*)command{
@ -259,9 +280,15 @@
} }
UNNotificationCategory *category; UNNotificationCategory *category;
if (dimiss) { if (dimiss) {
category = [UNNotificationCategory categoryWithIdentifier:categoryId actions:actions intentIdentifiers:@[] options:UNNotificationCategoryOptionCustomDismissAction]; category = [UNNotificationCategory categoryWithIdentifier:categoryId
actions:actions
intentIdentifiers:@[]
options:UNNotificationCategoryOptionCustomDismissAction];
} else { } else {
category = [UNNotificationCategory categoryWithIdentifier:categoryId actions:actions intentIdentifiers:@[] options:UNNotificationCategoryOptionNone]; category = [UNNotificationCategory categoryWithIdentifier:categoryId
actions:actions
intentIdentifiers:@[]
options:UNNotificationCategoryOptionNone];
} }
[[UNUserNotificationCenter currentNotificationCenter] setNotificationCategories:[NSSet setWithObject:category]]; [[UNUserNotificationCenter currentNotificationCenter] setNotificationCategories:[NSSet setWithObject:category]];
} }
@ -318,16 +345,17 @@
#pragma mark #pragma mark
-(void)tagsWithAliasCallback:(int)resultCode tags:(NSSet *)tags alias:(NSString *)alias { -(void)tagsWithAliasCallback:(int)resultCode tags:(NSSet *)tags alias:(NSString *)alias {
NSDictionary *dict = @{@"resultCode":[NSNumber numberWithInt:resultCode], if (resultCode == 0) { // Success
@"tags" :tags == nil ? [NSNull null] : [tags allObjects],
@"alias" :alias == nil ? [NSNull null] : alias } else {
};
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_SetTagsWithAlias jsString:[dict toJsonString]]; }
} }
- (void)networkDidReceiveMessage:(NSNotification *)notification { - (void)networkDidReceiveMessage:(NSNotification *)notification {
if (notification && notification.userInfo) { if (notification && notification.userInfo) {
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_ReceiveMessage jsString:[notification.userInfo toJsonString]]; [JPushPlugin fireDocumentEvent:JPushDocumentEvent_ReceiveMessage
jsString:[notification.userInfo toJsonString]];
} }
} }