【问题标题】:Xamarin Forms In App Billing plugin does not workXamarin Forms In App Billing 插件不起作用
【发布时间】:2020-05-08 14:09:30
【问题描述】:

我在我的 Xamarin Forms 项目中安装了应用内计费插件:Plugin

首先我想在 iOS 上使用它,但插件不起作用。它显示以下错误:Plugin.InAppBilling.Abstractions.InAppBillingPurchaseException: Cannot connect to iTunes Store at Plugin.InAppBilling.InAppBillingImplementation.PurchaseAsync (System.String productId, Plugin.InAppBilling.Abstractions.ItemType itemType, System.String payload, Plugin.InAppBilling.Abstractions.IInAppBillingVerifyPurchase verifyPurchase) ..

我认为我的 productId 或有效载荷有误,我应该在里面放什么? 这是我的代码:

          try
            {
                var productId = "mySKU";

                var connected = await CrossInAppBilling.Current.ConnectAsync();

                if (!connected)
                {
                    //Couldn't connect to billing, could be offline, alert user
                    return;
                }

                //try to purchase item
                var purchase = await CrossInAppBilling.Current.PurchaseAsync(productId, ItemType.Subscription, "payload");
                if (purchase == null)
                {
                    //Not purchased, alert the user
                }
                else
                {
                    //Purchased, save this information
                    var id = purchase.Id;
                    var token = purchase.PurchaseToken;
                    var state = purchase.State;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                //Something bad has occurred, alert user
            }
            finally
            {
                //Disconnect, it is okay if we never connected
                await CrossInAppBilling.Current.DisconnectAsync();
            }

我希望有人可以帮助我。提前致谢。

【问题讨论】:

  • 查看问题here,看看有没有帮助。
  • 我看到我根本没有存入信用卡。我认为这是我的问题,我会这样做。无论如何,谢谢。
  • 好的,一旦你解决了,你可以在答案中分享你的解决方案,这将帮助更多有同样问题的人:)。
  • 我激活了它,但它不起作用。如果我在 Entitlements.plist 文件中激活“应用内购买”,它会提供。之后,当我关闭文件并再次打开它时。 “应用内购买”不再激活。我认为这是我的问题。自动提供后,它会在 App Store Connect 中创建一个证书。我在ID处选择了它。单击保存后,它会变回我创建的另一个证书。我应该使用哪一个? InAppBilling 插件的“有效负载”是什么。
  • 我修好了,我现在就贴出来..

标签: xamarin.forms xamarin.android xamarin.ios in-app-purchase in-app-billing


【解决方案1】:

我修好了。对于所有有同样问题的人:我的问题是,我创建了一个 bundle id。然后我在 Visual Studio 中激活了自动签名,它自动创建了另一个包 ID。我选择了它,我必须给它一个名字。点击保存后,它又变回了另一个ID。问题是 id 具有相同的名称。所以我在 Visual Studio 中重命名了 bundle id,它就像一个魅力。

【讨论】:

  • 您可以添加屏幕截图或逐步修复它吗?这对我们的社区来说会很棒。
  • 我刚刚完全重新创建了 App Store 条目。您可以关注this 教程(但无需上传应用程序)。然后它对我来说很好。
【解决方案2】:

您必须在使用该 nuget 之前设置 ios 设置:

https://help.apple.com/xcode/mac/current/#/dev88ff319e7

【讨论】:

  • 我激活了与正确团队的自动管理签名,并在 Visual Studio 中调整了捆绑 ID。它仍然显示错误..
  • 我看到我根本没有存入信用卡。我认为这是我的问题,我会这样做。还是谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-12
  • 1970-01-01
  • 1970-01-01
  • 2012-12-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多