2012-04-03 155 views
1

我開發了一個應用程序的iPhone使用monotouch,並有應用程序內購買,我用這個代碼https://github.com/Clancey/ClanceyLib/blob/master/ClanceysLib/AppStore/InAppPurchaseManager.cs。一切正常。我可以購買,我可以得到答案。應用程序內購買ios故障

但有時我得到錯誤,然後應用程序崩潰。例如,我試圖通過關閉並重新打開應用程序購買10次。我得到這個錯誤2次。因此,App Store拒絕我的應用程序。

的錯誤是:「有一個SIGSEGV而執行本機代碼這通常表示在單運行時或應用程序使用本機庫的一個致命的錯誤。」

請幫我一下,我可以解決它。

BTW即時調用應用程序內購買如下:

InAppPurchaseManager obj_inapp=new InAppPurchaseManager(); 
if (obj_inapp.canMakeProUpgrade()) 
{ 
inapp.PurchaseProUpgrade(); 
} 

,如果你需要我可以將日誌發送,MonoTouch的和Xcode的是最新版本...

這是示例應用程序:http://85.195.84.6/guessme/inapppurchaseproblem.zip

問候......

問候......

+1

發佈你的堆棧跟蹤,用手很難說出問題。要嘗試的一件事是將InAppPurchaseManager存儲在類的成員變量中。我可以看到GC可以在上面的代碼示例中收集它。 – jonathanpeppers 2012-04-03 11:46:15

+0

這是崩潰日誌:http://85.195.84.6/guessme/ipad.rar 這是示例應用程序:http://85.195.84.6/guessme/inapppurchaseproblem.zip 問候...... – Jose 2012-04-03 19:00:34

+0

你找到了解?我有同樣的問題,我很好奇如何解決它。 – StackFlower 2013-04-29 13:13:50

回答

2

您是否嘗試在您的控制器類中聲明private InAppPurchaseManager inapp;作爲成員變量?

作爲一個局部變量的GC可以收集它和Objective-C將不再能夠回來打電話給C#和崩潰會導致。