1
我最近为我的应用程序实现了收据验证功能,但是我很难解析收据。我能够做这个解析IAP收据的JSON
verifyStatus = json!["status"]
从这些分别
let verifyItem2 = json!.objectForKey("receipt")
let verifyItem3 = verifyItem2!.objectForKey("in_app")
然而
,然后“收据”和'in_app的价值观得到了它的地位,当我做同样的“PRODUCT_ID ”。我不断收到错误。可能是因为'in_app'键在它之前有一组额外的括号。一些建议,将不胜感激。
例收据:
environment = Sandbox;
receipt = {
"adam_id" = 0;
"app_item_id" = 0;
"application_version" = 1;
"bundle_id" = "xxxxxxxx";
"download_id" = 0;
"in_app" = (
{
"is_trial_period" = false;
"original_purchase_date" = "2016-02-16 05:47:31 Etc/GMT";
"original_purchase_date_ms" = 1455601651000;
"original_purchase_date_pst" = "2016-02-15 21:47:31 America/Los_Angeles";
"original_transaction_id" = 1000000194125405;
"product_id" = "xxxxxxxx";
"purchase_date" = "2016-02-16 05:47:31 Etc/GMT";
"purchase_date_ms" = 1455601651000;
"purchase_date_pst" = "2016-02-15 21:47:31 America/Los_Angeles";
quantity = 1;
"transaction_id" = 1000000194122312;
}
);
"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_creation_date" = "2016-02-19 20:49:30 Etc/GMT";
"receipt_creation_date_ms" = 1455914970000;
"receipt_creation_date_pst" = "2016-02-19 12:49:30 America/Los_Angeles";
"receipt_type" = ProductionSandbox;
"request_date" = "2016-02-19 20:49:34 Etc/GMT";
"request_date_ms" = 1455914974827;
"request_date_pst" = "2016-02-19 12:49:34 America/Los_Angeles";
"version_external_identifier" = 0;
};
status = 0;
})
谢谢!不过,我不得不再去'1'级别去获取productID。 '让verifyItem4 = inApp as! NSDictionary'和'let verifyItem5 = verifyItem4.objectForKey(“product_id”)' –