Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 在其他Mac上的沙箱中测试Mac Appstore的IAP_Macos_In App Purchase_Mac App Store - Fatal编程技术网

Macos 在其他Mac上的沙箱中测试Mac Appstore的IAP

Macos 在其他Mac上的沙箱中测试Mac Appstore的IAP,macos,in-app-purchase,mac-app-store,Macos,In App Purchase,Mac App Store,我正在将IAP添加到Mac App Store上分发的Mac应用程序中。在我的Mac内部/外部XCode上,它似乎在本地运行良好,但由于某些原因,它在其他具有不同行为的Mac计算机上不起作用(SIGKILL或不下载App Store收据) 以下是我用来确保App Store收据存在或正确下载的代码: void EnsureAppstoreReceipt() { // TODO: Note: In OS X, if the appStoreReceiptURL method is not av

我正在将IAP添加到Mac App Store上分发的Mac应用程序中。在我的Mac内部/外部XCode上,它似乎在本地运行良好,但由于某些原因,它在其他具有不同行为的Mac计算机上不起作用(SIGKILL或不下载App Store收据)

以下是我用来确保App Store收据存在或正确下载的代码:

void EnsureAppstoreReceipt()
{
  // TODO: Note: In OS X, if the appStoreReceiptURL method is not available (on older systems), you can fall back to a hardcoded path.
  // The receipt’s path would be /Contents/_MASReceipt/receipt inside the app bundle.
  NSURL *receiptURL = [[NSBundle mainBundle] appStoreReceiptURL];
  NSData *receipt = [NSData dataWithContentsOfURL:receiptURL];
  if(!receipt)
  {
    // Validation fails
    qDebug() << "No AppStore receipt found. Exiting with 173 to force OSX to generate one in " << QString::fromNSString(receiptURL.absoluteString);
    exit(173);
  }
}
void-storereceipt()
{
//TODO:注意:在OSX中,如果appStoreReceiptURL方法不可用(在较旧的系统上),则可以退回到硬编码路径。
//收据的路径应该是应用程序包中的/Contents/\u MASReceipt/receipt。
NSURL*receiptURL=[[NSBundle mainBundle]appStoreReceiptURL];
NSData*receipt=[NSData DATA WITH CONTENTS OFURL:receiptURL];
如果(!收据)
{
//验证失败

qDebug()我终于找到了一种方法,这是基于一些教程,比如。我必须创建一个新的配置文件,以部署到其他Mac电脑上,对于这个配置文件,我必须添加每台Mac电脑,我想在上面测试我的应用程序,并启用“添加设备”

然后我必须刷新
首选项中
XCode
中的签名身份列表
=>
帐户
,并访问新的配置文件。然后我
存档
分发
我的构建并导出为我使用给定配置文件签名的
应用程序
,然后是应用程序pr在其他Mac电脑上使用沙盒启动AppStore