В приложении Покупка Цель C Статус от appStoreReceiptURL - PullRequest
0 голосов
/ 15 января 2020

Я новичок в Objective c Я нашел

NSURL* url = [[NSBundle mainBundle] appStoreReceiptURL];
NSLog(@"receiptUrl %@",[url path]);

для проверки в статусе покупки приложения для проверки или что-то вроде этого.

как я могу получить это: как NSString (INITIAL_BUY,CANCEL)

.INITIAL_BUY Первоначальная покупка подписки. Подписка .CANCEL была отменена службой поддержки Apple. .RENEWAL Обновление Automati c успешно завершено для просроченной подписки. .INTERACTIVE_RENEWAL Клиент обновил подписку в интерактивном режиме после истечения срока ее действия либо с помощью интерфейса вашего приложения, либо в App Store в настройках учетной записи. .DID_CHANGE_RENEWAL_PREFERENCE Клиент изменил план, который вступает в силу при следующем продлении подписки.

1 Ответ

0 голосов
/ 16 января 2020

У вас есть url, это просто место получения чека, поэтому сначала вам нужно прочитать файл чека:

- (NSData *)loadReceipt
{
    LogMethodCall

    NSURL *url = NSBundle.mainBundle.appStoreReceiptURL;
    if (!url) return nil;

    NSError *error;
    NSData *data = [NSData dataWithContentsOfURL:url options:0 error:&error];
    if (data) return data;

    NSLog(@"Error loading receipt data: %@", error.localizedDescription);
    return nil;
}

Теперь у вас есть данные чека, которые вы можете преобразовать в NSDictionary и просмотреть его содержимое:

NSError *error;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:[self loadReceipt]options:0 error:&error];
if (!error) {
   NSLog(@"%@", json);
} else {
   NSLog(@"%@", error);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...