Ios 如何从最新收据信息列表中获取最新收据?
我有三种类型的订阅,分别为1个月、6个月和1年。在沙盒urlIos 如何从最新收据信息列表中获取最新收据?,ios,objective-c,xcode,Ios,Objective C,Xcode,我有三种类型的订阅,分别为1个月、6个月和1年。在沙盒urlhttps://sandbox.itunes.apple.com/verifyReceipt我收到了一张关于242的长长的收据清单,而且随着时间的推移,收据数量不断增加 我想通过所有订阅的最新到期日。我怎么能说这是特定订阅的最新收据,并且超过了订阅我的web服务的到期日期 { environment = Sandbox; "latest_receipt" = "MILFMwYJKoZIhvcNAQcCoILFJD
https://sandbox.itunes.apple.com/verifyReceipt
我收到了一张关于242的长长的收据清单,而且随着时间的推移,收据数量不断增加
我想通过所有订阅的最新到期日。我怎么能说这是特定订阅的最新收据,并且超过了订阅我的web服务的到期日期
{
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;
},
);
您可以使用kVC来实现这一点,类似的东西可能会起作用
NSDictionary *dictLatestReceiptsInfo = response[@"latest_receipt_info"];
long expirationDateMs = [dictLatestReceiptsInfo valueForKeyPath:@"@max.expires_date_ms"];
请粘贴代码您是如何尝试解决此问题的。不,仍然没有。json数据随时间增加,无法识别哪一个是特定订阅的最新收据。最近的一个将在“transaction_id”属性上具有最高值。就拿那个东西?这样行吗?是的,但有可能得到特定订阅的收据。在ios6中,TransactionReceive将仅为特定订阅提供服务。但现在appStoreReceiptURL随时间提供大量数据。现在1小时前是142,现在是780,我建议使用
valueForKeyPath:
而不是valueForKey:
如果有错误:是的,这实际上是我想首先建议的,谢谢你指出