C# 在Windows phone 8中调用IAP函数时,跨线程访问无效
我正在使用适用于Windows Phone 8.0的Cordova插件集成应用内购买 我在名为PurchaseProduct的插件中添加了一个函数,该函数将在JS Cordova项目中调用C# 在Windows phone 8中调用IAP函数时,跨线程访问无效,c#,cordova,windows-phone-8,C#,Cordova,Windows Phone 8,我正在使用适用于Windows Phone 8.0的Cordova插件集成应用内购买 我在名为PurchaseProduct的插件中添加了一个函数,该函数将在JS Cordova项目中调用 namespace WPCordovaClassLib.Cordova.Commands { ............... public async void PurchaseProduct(string options) { string productId = JSON.JsonHelper.D
namespace WPCordovaClassLib.Cordova.Commands
{
...............
public async void PurchaseProduct(string options)
{
string productId = JSON.JsonHelper.Deserialize<string[]>(options)[0];
......
try
{
await CurrentApp.RequestProductPurchaseAsync(productId, false);
........
}
............
名称空间WPCordovaClassLib.Cordova.Commands
{
...............
公共异步void PurchaseProduct(字符串选项)
{
字符串productId=JSON.JsonHelper.Deserialize(选项)[0];
......
尝试
{
等待CurrentApp.RequestProductPurchaseAsync(productId,false);
........
}
............
打线下电话效果很好。
listing=wait Store.CurrentApp.LoadListingInformationAsync();
但是当我打电话的时候
等待CurrentApp.RequestProductPurchaseAsync(productId,false);
异常发生如下
无效的跨线程访问
我不知道现在发生了什么
有人能帮我吗?对不起。
我已经解决了这个荒谬的问题
使用aysnc关键字
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
functionA();
});
.....
public async void functionA(string options)
{
.....
await CurrentApp.RequestProductPurchaseAsync(productId, false);
.....
}