Mac In app purchase - Receipt同时包含1个以上的消耗品

时间:2014-12-08 10:56:19

标签: ios macos in-app-purchase

我正在编写一个关于Mac应用程序购买的示例。在购买第1项后,我第一次收到此JSON(按照此说明Online receipt validation for in app purchases for MAC):

{

environment = Sandbox;

receipt =     {

    "adam_id" = 0;

    "app_item_id" = 0;

    "application_version" = "1.0";

    "bundle_id" = "com.mac.OSXReceipt";

    "download_id" = 0;

    "in_app" =         (
            {

            "original_purchase_date" = "2014-11-20 23:43:28 Etc/GMT";

            "original_purchase_date_ms" = 1416527008000;

            "original_purchase_date_pst" = "2014-11-20 15:43:28 America/Los_Angeles";

            "original_transaction_id" = 1000000132520356;

            "product_id" = "com.mac.OSXReceipt.1";

            "purchase_date" = "2014-11-20 23:43:28 Etc/GMT";

            "purchase_date_ms" = 1416527008000;

            "purchase_date_pst" = "2014-11-20 15:43:28 America/Los_Angeles";

            quantity = 1;

            "transaction_id" = 1000000132520356;

        }

    );

    "original_application_version" = "1.0";

    "original_purchase_date" = "2013-08-01 07:00:00 Etc/GMT";

    "original_purchase_date_ms" = 1375340400000;

    "original_purchase_date_pst" = "2013-08-01 00:00:00 America/Los_Angeles";

    "receipt_type" = ProductionSandbox;

    "request_date" = "2014-11-20 23:43:30 Etc/GMT";

    "request_date_ms" = 1416527010147;

    "request_date_pst" = "2014-11-20 15:43:30 America/Los_Angeles";

    "version_external_identifier" = 0;

};

status = 0;

当我购买商品2时,我收到了这个JSON:

{

environment = Sandbox;

receipt =     {

    "adam_id" = 0;

    "app_item_id" = 0;

    "application_version" = "1.0";

    "bundle_id" = "com.mac.OSXReceipt";

    "download_id" = 0;

    "in_app" =         (
            {

            "original_purchase_date" = "2014-11-20 23:43:28 Etc/GMT";

            "original_purchase_date_ms" = 1416527008000;

            "original_purchase_date_pst" = "2014-11-20 15:43:28 America/Los_Angeles";

            "original_transaction_id" = 1000000132520356;

            "product_id" = "com.mac.OSXReceipt.1";

            "purchase_date" = "2014-11-20 23:43:28 Etc/GMT";

            "purchase_date_ms" = 1416527008000;

            "purchase_date_pst" = "2014-11-20 15:43:28 America/Los_Angeles";

            quantity = 1;

            "transaction_id" = 1000000132520356;

        },
         {

            "original_purchase_date" = "2014-11-20 23:44:25 Etc/GMT";

            "original_purchase_date_ms" = 1416527065000;

            "original_purchase_date_pst" = "2014-11-20 15:44:25 America/Los_Angeles";

            "original_transaction_id" = 1000000132520389;

            "product_id" = "com.mac.OSXReceipt.2";

            "purchase_date" = "2014-11-20 23:44:25 Etc/GMT";

            "purchase_date_ms" = 1416527065000;

            "purchase_date_pst" = "2014-11-20 15:44:25 America/Los_Angeles";

            quantity = 1;

            "transaction_id" = 1000000132520389;

        }

    );

    "original_application_version" = "1.0";

    "original_purchase_date" = "2013-08-01 07:00:00 Etc/GMT";

    "original_purchase_date_ms" = 1375340400000;

    "original_purchase_date_pst" = "2013-08-01 00:00:00 America/Los_Angeles";

    "receipt_type" = ProductionSandbox;

    "request_date" = "2014-11-20 23:43:30 Etc/GMT";

    "request_date_ms" = 1416527010147;

    "request_date_pst" = "2014-11-20 15:43:30 America/Los_Angeles";

    "version_external_identifier" = 0;

};

status = 0;

如果我继续购买其他商品,它也将被添加到此列表中。我检查了所有项目都是消耗品,我也在我的项目中调用了完成交易。所以我的问题是为什么收据中同时包含超过1个消耗品以及如何完成(删除)此列表中的旧项目。感谢。

1 个答案:

答案 0 :(得分:0)

我遇到了这个寻找下一个问题的答案,但可以找到这个问题的答案here

基本上这是因为iOS7的引入不会返回单个收据,但会返回该用户在该应用程序中的所有收据。我认为这必须支持订阅。

相关问题