21

不推荐使用 transactionReceipt。但我无法使用,

[[NSBundle mainBundle] appStoreReceiptURL].

如果有一个收据,这应该返回一个 url。但对我来说没有一个,因为这个值是零,据我所知,它不应该是。我在 iOS 7 上运行并且已经完成了一些应用内购买(设备上的沙盒)。

谁能帮忙。

4

2 回答 2

15

这将为您提供作为 mainBundle 的 appStoreReceiptURL 内容的收据:-

[NSData dataWithContentsOfURL:[[NSBundle mainBundle] appStoreReceiptURL]];

一旦你将 NSData 转换为 NSString。

有关更多详细信息,请参见:-

https://developer.apple.com/library/ios/releasenotes/General/ValidateAppStoreReceipt/Chapters/ValidateRemotely.html#//apple_ref/doc/uid/TP40010573-CH104-SW1

于 2014-12-18T10:46:31.850 回答
8

试试下面:

NSData *dataReceipt = [NSData dataWithContentsOfURL:[[NSBundle mainBundle] appStoreReceiptURL]];
NSString *receipt = [dataReceipt base64EncodedStringWithOptions:0];
于 2016-07-25T09:21:30.563 回答