- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在向 google Android Publisher api 提出请求检查提供的应用内购买的 purchaseToken 是否正确。第一个问题是产品 ID 被忽略,我可以输入任何内容作为参数。只需要包名和purchaseToken是正确的。其次,为什么 ProductPurchase 中的 productId 和 purchaseToken 为空。我想检查提供的 purchaseToken 是否与 productId 匹配。当 productId 可以是任何东西并且没有返回响应时,我如何检查这对于特定的应用内购买 productId 是否有效?
private static Task<ProductPurchase> GetInAppPurchase(string packageName, string productId, string purchaseToken)
{
GoogleCredential credential;
using (Stream stream = new FileStream(@"api.json", FileMode.Open, FileAccess.Read, FileShare.Read))
{
credential = GoogleCredential.FromStream(stream);
}
string[] scopes = {
AndroidPublisherService.Scope.Androidpublisher
};
credential = credential.CreateScoped(scopes);
BaseClientService.Initializer initializer = new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "My Application"
};
AndroidPublisherService service = new AndroidPublisherService(initializer);
return service.Purchases.Products.Get(packageName, productId, purchaseToken).ExecuteAsync();
}
private static void TestGooglePlayPurchaseApi()
{
string packageName = "validPackageName";
string productId = "validOrInvalidProductName";
string purchaseToken = "validPurchaseToken";
ProductPurchase purchase = GetInAppPurchase(packageName, productId, purchaseToken).Result;
Console.WriteLine("Kind: " + purchase.Kind);
Console.WriteLine("Quantity: " + purchase.Quantity);
Console.WriteLine("AcknowledgementState: " + purchase.AcknowledgementState!);
Console.WriteLine("ConsumptionState: " + purchase.ConsumptionState!);
Console.WriteLine("DeveloperPayload: " + purchase.DeveloperPayload);
Console.WriteLine("ETag: " + purchase.ETag);
Console.WriteLine("OrderId: " + purchase.OrderId);
Console.WriteLine("ProductId: " + purchase.ProductId);
Console.WriteLine("PurchaseState: " + purchase.PurchaseState!);
Console.WriteLine("PurchaseToken: " + purchase.PurchaseToken);
Console.WriteLine("PurchaseType: " + purchase.PurchaseType!);
Console.WriteLine("RegionCode: " + purchase.RegionCode);
Console.WriteLine("PurchaseTimeMillis: " + purchase.PurchaseTimeMillis);
Console.WriteLine("ObfuscatedExternalAccountId: " + purchase.ObfuscatedExternalAccountId);
Console.WriteLine("ObfuscatedExternalProfileId: " + purchase.ObfuscatedExternalProfileId);
}
这就是我正在接受的:
Kind: androidpublisher#productPurchase
Quantity:
AcknowledgementState: 1
ConsumptionState: 1
DeveloperPayload: {"developerPayload":"","is_free_trial":false,"has_introductory_price_trial":false,"is_updated":false,"accountId":""}
ETag:
OrderId: YYY.XXXX-XXXX-XXXX-XXXXX
ProductId:
PurchaseState: 0
PurchaseToken:
PurchaseType: 0
RegionCode: PL
PurchaseTimeMillis: 1601915754698
ObfuscatedExternalAccountId:
ObfuscatedExternalProfileId:
为什么 ProductId 为空?
最佳答案
如果您的数据库中只有一项,它将为空。很奇怪,但事实就是如此。
添加同一类别的第二个项目,您将开始获得正确的响应值。
关于c# - purchase.products.get 忽略 productId 值并在 ProductPurchase 中返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64217553/
我正在尝试查找哪些产品的附加成分最多(糖浆、浓缩咖啡等)。我该怎么做?我可以找到个人销售情况,但如何在咖啡饮料中添加浓缩咖啡? Select p.ProductName, TotalADDON = S
以下是我的看法。 @model List @using System.Linq @foreach (var item in Model) {
我有一个动态产品 xml 文件,我需要从外部源加载该文件并将其保存在数据库表中。现在我想让包含当前产品的 xml 文件与表中的内容保持同步。所以我想确保我在 xml 和 db 表中使用 ID 更新产品
正则表达式必须满足这些愿望。 大写字母 A。然后是 3 个或更多可选字符。 正则表达式必须以大写 X 或 Y 或 Z 结尾。 必须填写: A3546sdfsdf6546sdf654Z A123qze4
我在测试真实产品时遇到错误。当我单击购买按钮时,出现错误“此版本的应用程序未配置为市场计费”。 我用这个例子https://github.com/robotmedia/AndroidBillingLi
我目前为应用内结算中可能的状态更新(从购买状态到取消状态等)设计我的实现策略,这确实令人头疼,并且存在困惑: 我获取 getPurchases()在应用程序中。这给了我 INAPP_PURCHASE_
我有一个实体,该实体使用 FK ProductId 建立关系,然后我使用复合键 ProductId 和 VehicleId 在同一实体上建立另一个关系。这是行不通的。我明白了 One or more
我有一个获取 ProductName 的网络服务,我需要从 AutoExtender 下拉的产品链接到每个产品的单独页面。现在 URL 被 ProductName 填充,而不是 ID: Default
我对这一切都很陌生。我为在线商店设置了包含以下表格的数据库:Customer、Product、Order、Order_Details 和 Sales。我遇到的问题是 Order_details 表。例
我有一段旧代码使用 WQL 的查询从 Win32_WindowsProductActivation 类中获取。 SELECT * FROM Win32_WindowsProductActivation
我通过蓝牙连接到设备。我使用 BluetoothDevice.class 获取 mac 地址和名称。但我必须知道 VendorID、ProductID。在 iPhone 上是可能的。Android 有
在尝试设置 mojoPortal 时在 Web 平台安装程序中设置自定义提要后,程序崩溃并出现错误 ProductId NETFramework4 not found: 当尝试再次启动该程序时,同样的
这就是我到目前为止所做的!! 创建数据库MyWebDB; 创建表用户 ( UserID Int Primary Key, EmailAddress Varchar(50) Not Null,
11113 43
scalaVersion := "2.10.1" "org.specs2" %% "specs2" % "1.13" % "test" 我的 spec2 测试: p
scalaVersion := "2.10.1" "org.specs2" %% "specs2" % "1.13" % "test" 我的 spec2 测试: p
我想在 WIX 中制作一个安装包,它将升级我产品的先前版本。为此,我使用 MajorUpgrade。 问题是 - 我想在我的应用程序的整个生命周期内保留 ProductId,而不进行任何更改。但是 M
我的观点如下: Features Items
我在解析本地存储中的对象数组的函数时遇到异常错误。 尝试:从本地存储中获取对象并将它们的 productID 和 selectedQty 属性值解析为 int。 当我记录它们的 typeof 值时,即
我有 2 个表,一个用于产品销售,另一个用于供应商的产品订单。 销售表包含:(产品 ID、销售日期、客户 ID 等) 订单表包含(产品 ID、订单日期、供应商 ID 等)。 销售表中的每个产品都被销售
我是一名优秀的程序员,十分优秀!