Windows phone 8 Windows Phone 8:应用内购买屏幕未显示
我正在尝试将应用程序内购买功能添加到我用C#中的Unity3D制作的游戏中。据我所知,当用户开始购买时——也就是说,从游戏中单击“购买”按钮,他们应该被带到购买屏幕 在不详细介绍插件工作原理的情况下,这是从手机调用的启动purhase的功能:Windows phone 8 Windows Phone 8:应用内购买屏幕未显示,windows-phone-8,in-app-purchase,Windows Phone 8,In App Purchase,我正在尝试将应用程序内购买功能添加到我用C#中的Unity3D制作的游戏中。据我所知,当用户开始购买时——也就是说,从游戏中单击“购买”按钮,他们应该被带到购买屏幕 在不详细介绍插件工作原理的情况下,这是从手机调用的启动purhase的功能: private static async Task<string>PurchaseUpgrade(string ID) { var listings = await CurrentApp.LoadListingInformationAs
private static async Task<string>PurchaseUpgrade(string ID)
{
var listings = await CurrentApp.LoadListingInformationAsync();
var purchaseItem = listings.ProductListings.FirstOrDefault(x => x.Value.ProductId == ID &&
x.Value.ProductType == ProductType.Durable);
try
{
if (CurrentApp.LicenseInformation.ProductLicenses[purchaseItem.Value.ProductId].IsActive)
{
return false.ToString();
}
else
{
Receipt = await CurrentApp.RequestProductPurchaseAsync(purchaseItem.Value.ProductId, true);
return true.ToString();
}
}
catch (Exception w)
{
return w.ToString();
}
}
它应该“打开”一个购买屏幕吗?确认购买
无论如何,情况并非如此,有人对此有经验吗?本指南将帮助您在本地计算机本地IIS Web服务和WP8 Emulator中测试IAP
我认为您必须在UI线程上运行此功能
Deployment.Current.Dispatcher.BeginInvoke(() => ShowBuyDialog(productId));
调用RequestProductPurchaseAsync方法时会发生什么?您的应用程序是否已发布到应用商店。该代码仅适用于直接从应用商店下载的应用程序,而不适用于调试版本。如果应用程序尚未发布,则应使用进行测试。是一个很好的例子。如果应用程序的ProductId(位于WPManifest.xml中)和ApplicationId(位于开发中心中)不相同,则无法测试应用程序内购买(使用CurrentAppSimulator除外)。让它一样,它应该工作。为迟到的答复感到抱歉。实际上,我正在使用Msdn提供的MockAPI库来测试购买的产品。
Deployment.Current.Dispatcher.BeginInvoke(() => ShowBuyDialog(productId));