苹果内购商品信息获取

这篇博客详细介绍了如何在iOS应用中获取内购商品信息。通过`SKProductsRequest`初始化并设置产品标识符数组,请求商品详情信息。在接收到响应后,遍历商品列表,格式化价格,并将商品价格与ID存储为字典,进一步保存到用户默认设置中,以便后续使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

- (void)viewDidLoad

{

[super viewDidLoad];

    NSArray * productArray = [[NSArray alloc] initWithObjects:@"com.xxx.xxx",@"com.xxx.xxx",@"com.xxx.xxx",@"com.xxx.xxx",@"com.xxx.xxx",@"com.xxx.xxx, nil];

    [self validateProductIdentifiers:productArray];//根据商品id获取商品详情信息,数组参数

}

// 自定义方法

- (void)validateProductIdentifiers:(NSArray *)productIdentifiers

{

    SKProductsRequest *productsRequest = [[SKProductsRequest alloc]

                                          initWithProductIdentifiers:[NSSet setWithArray:productIdentifiers]];

    productsRequest.delegate = self;

    [productsRequest start];

}

//收到产品返回信息

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response{

    NSArray *product = response.products;//获取到的商品信息列表

    if([product count] == 0){

        return;

    }

    SKProduct *p = nil;

    NSMutableArray * productInfoArray = [NSMutableArray array];

    for (SKProduct *pro in product) {

        NSNumberFormatter*numberFormatter = [[NSNumberFormatter alloc] init];

        [numberFormatter setFormatterBehavior:NSNumberFormatterBehavior10_4];

        [numberFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];

        [numberFormatter setLocale:pro.priceLocale];

        NSString*formattedPrice = [numberFormatter stringFromNumber:pro.price];//例如 ¥12.00,如果是美元地区的话,单位会直接切换成美元,并且金额会根据汇率自动换算

          NSDictionary * dicInfo = [[NSDictionary alloc] initWithObjectsAndKeys:formattedPrice,@"finalPrice",[pro productIdentifier],@"productIdentifier", nil];//把获取到的商品的价格和对应的商品id存储起来,用来展示充值界面

        [productInfoArray addObject:dicInfo];

    }

    NSUserDefaults * productInfoDefaults = [NSUserDefaults standardUserDefaults];

    [productInfoDefaults setObject:productInfoArray forKey:@"productInfoDefaultsKey"];

    [productInfoDefaults synchronize];

    NSLog(@"%@",productInfoArray);

}   

 

ios开发技术,提交审核讨论群 加qq群:695614778 一起讨论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

义中

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值