如何在应用程序购买订阅ios中显示节省百分比?

如何在应用程序购买订阅ios中显示节省百分比?,ios,objective-c,Ios,Objective C,所以我有每周、每月和每年的订阅计划,我想做的是基于每周的价格,我想保存每月和每年的百分比 - (NSString *)weeklyPrice:(SKProduct *)product { CGFloat factor = 0.23; //week factor 30/7 (30days divide by 7 days) if([product.productIdentifier isEqualToString:AR_WEEKLY_SUBSCRIPTION_PRODUCT_ID]

所以我有每周、每月和每年的订阅计划,我想做的是基于每周的价格,我想保存每月和每年的百分比

- (NSString *)weeklyPrice:(SKProduct *)product {
    CGFloat factor = 0.23; //week factor 30/7 (30days divide by 7 days)
    if([product.productIdentifier isEqualToString:AR_WEEKLY_SUBSCRIPTION_PRODUCT_ID] ||) {
        factor = 0.23;
        _weeklyPrice = product.price;
    }
    else if([product.productIdentifier isEqualToString:AR_MONTLY_3DAY_SUBSCRIPTION_PRODUCT_ID]) {
        factor = 1.0;
    }
    else if([product.productIdentifier isEqualToString:AR_YEARLY_3DAY_SUBSCRIPTION_PRODUCT_ID] ) {
        factor = 12.0;
    }
    NSLog(@"divide by %@",[NSDecimalNumber decimalNumberWithMantissa:factor exponent:0 isNegative:NO]); // here value getting 0 hence giving exception
    NSDecimalNumber *weeklyPrice = [product.price decimalNumberByDividingBy:[NSDecimalNumber decimalNumberWithMantissa:factor exponent:0 isNegative:NO]];

    NSNumberFormatter *numberFormatter = [NSNumberFormatter new];
    [numberFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
    [numberFormatter setLocale:product.priceLocale];

    return [NSString stringWithFormat:@"%@/week", [numberFormatter stringFromNumber:weeklyPrice]];
}
使用下面的代码块获取节省百分比

 (NSString *)savingPercent:(SKProduct *)product {
    CGFloat factor = 0.23;
    //NSDecimalNumber *saving = nil;
    if([product.productIdentifier isEqualToString:AR_WEEKLY_SUBSCRIPTION_PRODUCT_ID] ) {
        return @"";
    }
    else if([product.productIdentifier isEqualToString:AR_MONTLY_3DAY_SUBSCRIPTION_PRODUCT_ID]) {
        factor = 1.0;
    }
    else if([product.productIdentifier isEqualToString:AR_YEARLY_3DAY_SUBSCRIPTION_PRODUCT_ID] ) {
        factor = 12.0;
    }

    CGFloat saving = 100.0-((product.price.floatValue/factor/_weeklyPrice.floatValue)*100);

    return [NSString stringWithFormat:@"SAVE %.0f%%", saving];
}

任何建议都会有帮助

不清楚你在问什么;您可以在App Store connect中设置价格。你是在问如何动态计算用户在每周和每月/年度价格之间的差异上的折扣百分比吗?@Paulw11我已经编辑了我的问题,我想根据每周价格为月份和年度保存百分比