如何从事务队列中删除非常旧的,已停止使用的应用内购买

我公司最近将iOS应用程序的开发外包给第三方开发人员。 该应用程序包括许多应用程序内购买,开发人员向我们发送了各种版本,其中许多是pre-alpha并包含错误。 结果,我的手机(iPhone 4S)似乎有很多已停止的应用程序内购买尝试,导致它每天多次出现密码请求。

已删除购买的测试帐户。 该应用已从我的手机中删除。

一些谷歌搜索并查看stackoverflow似乎表明,有一些购买卡在队列中,每当我使用另一个应用程序内购买的应用程序时,一直试图完成。 但是我不知道如何清除这个队列并删除这些烦人的弹出窗口。

是否有一个万无一失的方法,或我可以使用的短代码提取,这将做到这一点? 我可以访问Xcode和Xamarin Studio,并且具有中等的技术知识,但我不是iOS开发方面的专家。

提前致谢。

AFAIK,无法接收和处理发送到其他应用程序的事务。

您确定删除了那个应用程序吗? 您确定,您使用的应用程序可能与其他名称一样,使用与旧应用程序相同的bundleID吗?

编辑:根据Nande的建议,我正在为实际答案添加代码,这样人们就可以看到它而无需检查我的链接。

// take current payment queue SKPaymentQueue* currentQueue = [SKPaymentQueue defaultQueue]; // finish ALL transactions in queue [currentQueue.transactions enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { [currentQueue finishTransaction:(SKPaymentTransaction *)obj]; }];