iOS - 极光单一用户(特定用户)推送的代码

#pragma mark - 给单一用户进行推送的设置

- (void)jPushSingalUserSetWithUser:(NSString *)user_id {

    NSMutableSet *tags = [NSMutableSet set];

    //别名,根据用户的UID去设置别名,那么可以指定的推送给某些用户

    NSString *alias ;

    

    if (user_id != nil) {

        alias =[NSString stringWithFormat:@"%@",user_id];

    }

    

    [self analyseInput:&alias tags:&tags];

    

    [JPUSHService setTags:tags alias:alias callbackSelector:@selector(tagsAliasCallback:tags:alias:) object:self];

    

    

    

}

- (void)tagsAliasCallback:(int)iResCode

                     tags:(NSSet *)tags

                    alias:(NSString *)alias {

    NSString *callbackString =

    [NSString stringWithFormat:@"%d, \ntags: %@, \nalias: %@\n", iResCode,

     [self logSet:tags], alias];

    

    NSLog(@"TagsAlias回调:%@", callbackString);

}

- (NSString *)logSet:(NSSet *)dic {

    if (![dic count]) {

        return nil;

    }

    NSString *tempStr1 =

    [[dic description] stringByReplacingOccurrencesOfString:@"\\u"

                                                 withString:@"\\U"];

    NSString *tempStr2 =

    [tempStr1 stringByReplacingOccurrencesOfString:@"\"" withString:@"\\\""];

    NSString *tempStr3 =

    [[@"\"" stringByAppendingString:tempStr2] stringByAppendingString:@"\""];

    NSData *tempData = [tempStr3 dataUsingEncoding:NSUTF8StringEncoding];

    NSString *str =

    [NSPropertyListSerialization propertyListFromData:tempData

                                     mutabilityOption:NSPropertyListImmutable

                                               format:NULL

                                     errorDescription:NULL];

    return str;

}

- (void)analyseInput:(NSString **)alias tags:(NSSet **)tags {

    // alias analyse

    if (![*alias length]) {

        // ignore alias

        *alias = nil;

    }

    // tags analyse

    if (![*tags count]) {

        *tags = nil;

    } else {

        __block int emptyStringCount = 0;

        [*tags enumerateObjectsUsingBlock:^(NSString *tag, BOOL *stop) {

            if ([tag isEqualToString:@""]) {

                emptyStringCount++;

            } else {

                emptyStringCount = 0;

                *stop = YES;

            }

        }];

        if (emptyStringCount == [*tags count]) {

            *tags = nil;

        }

    }

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值