如何从latest_receipt_info列表中获取最新收据?

时间:2014-03-29 07:12:59

标签: ios objective-c xcode

我有三种类型的订阅,包括1个月,6个月和1年。在沙盒网址https://sandbox.itunes.apple.com/verifyReceipt上,我收到了很长的 242 收据列表及其随时间的增加。

我想传递所有订阅的最新到期日期。我怎么能说这是特定订阅的最新收据,并通过我的网络服务的订阅到期日

    {
    environment = Sandbox;
    "latest_receipt" = "MILFMwYJKoZIhvcNAQcCoILFJDCCxSACAQExCzAJBgUrDgMCGgUAMIK05AYJKoZIhvcNAQcBoIK01QSCtNExgrTNMAoCAQgCAQEEAhYAMAoCARICAQEEAhYAMAoCARMCAQEEAgwAMAoCARQCAQEEAgwAMAsCAQECAQEEAwIBADA””;
    "latest_receipt_info" =     (
{
     "expires_date" = "2014-03-12 10:18:05 Etc/GMT";
                "expires_date_ms" = 1394619485000;
                "expires_date_pst" = "2014-03-12 03:18:05 America/Los_Angeles";
                "is_trial_period" = false;
                "original_purchase_date" = "2014-03-12 10:15:06 Etc/GMT";
                "original_purchase_date_ms" = 1394619306000;
                "original_purchase_date_pst" = "2014-03-12 03:15:06 America/Los_Angeles";
                "original_transaction_id" = 1000000093384828;
                "product_id" = “myapp.1";
                "purchase_date" = "2014-03-25 12:21:23 Etc/GMT";
                "purchase_date_ms" = 1395750083000;
                "purchase_date_pst" = "2014-03-25 05:21:23 America/Los_Angeles";
                quantity = 1;
                "transaction_id" = 1000000104232856;
                "web_order_line_item_id" = 1000000027948608;
}
  {
            "expires_date" = "2013-11-14 10:23:43 Etc/GMT";
            "expires_date_ms" = 1384424623000;
            "expires_date_pst" = "2013-11-14 02:23:43 America/Los_Angeles";
            "original_purchase_date" = "2013-11-14 10:20:44 Etc/GMT";
            "original_purchase_date_ms" = 1384424444000;
            "original_purchase_date_pst" = "2013-11-14 02:20:44 America/Los_Angeles";
            "original_transaction_id" = 1000000093384828;
            "product_id" = "myapp.2";
            "purchase_date" = "2014-03-29 05:37:36 Etc/GMT";
            "purchase_date_ms" = 1396071456569;
            "purchase_date_pst" = "2014-03-28 22:37:36 America/Los_Angeles";
            quantity = 1;
            "transaction_id" = 1000000093384828;
            "web_order_line_item_id" = 1000000027562376;
        },
  );

1 个答案:

答案 0 :(得分:3)

你可以使用kVC,这样的东西可能会起作用

NSDictionary *dictLatestReceiptsInfo = response[@"latest_receipt_info"];
long expirationDateMs = [dictLatestReceiptsInfo valueForKeyPath:@"@max.expires_date_ms"];