none
在调用RequestProductPurchaseAsync 进行支付时,点击返回会崩溃 RRS feed

  • 问题

  • 我在开发一个D3D游戏应用,当我在添加内支付时遇到一些问题:

    这是我的代码:

    void PayTest::purchaseAppTest()
    {
    	try
    	{
    		Platform::String^ pProductIdString("pay_id0");
    
    		auto operation = Store::CurrentApp::RequestProductPurchaseAsync( pProductIdString, true); 
    		auto requestPurchaseTask = Concurrency::create_task(operation);
    
    		requestPurchaseTask.then([pProductIdString] (...) 
    		{ 		
    			//do something
    		}).then([this] 
    		{
    			//do something
    		});
    
    	}catch(Platform::Exception^ e)
    	{
    		
    	}
    }


    1.是在主线程调用的支付代码
    2.第一次支付是正常的,并能收到正确返回,再次支付则会崩溃
    3.在支付界面点击取消会立即崩溃

    点击返回按钮的崩溃调用堆栈如下:

    Msvcr110.dll!Concurrency::details::_ReportUnobservedException() Line 2455	C++
     	PayTest.exe!Concurrency::details::_ExceptionHolder::~_ExceptionHolder() Line 884	C++
     	PayTest.exe!Concurrency::details::_Task_impl_base::~_Task_impl_base() Line 1294	C++
     	PayTest.exe!Concurrency::details::_Task_impl<Platform::String ^>::~_Task_impl<Platform::String ^>() Line 1972	C++
     	PayTest.exe!Concurrency::details::_Task_impl<Platform::String ^>::`scalar deleting destructor'(unsigned int)	C++
     	PayTest.exe!<lambda_c7a9e552b9c6d97321344c83d1769008>::operator()(Windows::Foundation::IAsyncOperation<Platform::String ^> ^ _Operation, Windows::Foundation::AsyncStatus _Status) Line 1863	C++
     	PayTest.exe!?__abi_Windows_Foundation_?$AsyncOperationCompletedHandler@P$AAVString@Platform@@___abi_IDelegate____abi_Invoke@?Q__abi_IDelegate@?$AsyncOperationCompletedHandler@P$AAVString@Platform@@@Foundation@Windows@@234@U$AAAJP$AAU?$IAsyncOperation@P$AAVString@Platform@@@34@W4AsyncStatus@34@@Z(Windows::Foundation::IAsyncOperation<Platform::String ^> ^ __param0, Windows::Foundation::AsyncStatus __param1)	C++
     	Windows.ApplicationModel.Store.dll!6a3c8c02()	Unknown
     	Windows.ApplicationModel.Store.dll!6a3cf12e()	Unknown

    似乎是因为create_task引起的.

    这里还有另一个帖子和我描述的问题一样,但都没有找到好的方法去解决:

    http://social.msdn.microsoft.com/Forums/wpapps/en-us/6efb19e6-579d-4bb4-9e7b-d7e394f1ae45/crash-when-inovde-currentapprequestproductpurchaseasync?forum=wpdevelop

    所有都做完了,就差这个了!谁能帮我一把?万分感谢!

    2013年12月17日 10:28

全部回复

  • 求帮忙~C++资料太少了~连个使用文档和例句都没有~
    2013年12月17日 11:34
  • <embed height="0" id="xunlei_com_thunder_helper_plugin_d462f475-c18e-46be-bd10-327458d045bd" type="application/thunder_download_plugin" width="0" />请问楼主 问题解决了没有, 我也是这里遇到问题, 一点击取消就会crash, 如果解决了,麻烦告知一下,万分感谢
    2014年1月21日 7:52