java - “没有列出 SKU,无法加载它们” - solovyev.android:checkout
问题描述
我有一个应用程序内购买的应用程序,但是当我尝试获取项目列表时,我收到错误:
原因:org.solovyev.android.checkout.Check$AssertionException:没有列出 SKU,无法加载它们
InAppPurchase.java:
import android.app.Application;
import org.solovyev.android.checkout.Billing;
public class InAppPurchase extends Application {
private static InAppPurchase sInstance;
String key = "xxx";
public void onCreate() {
super.onCreate();
}
private final Billing mBilling = new Billing(this, new Billing.DefaultConfiguration() {
@Override public String getPublicKey() {
return key;
}
});
public InAppPurchase() {
sInstance = this;
}
public static InAppPurchase get() {
return sInstance;
}
public Billing getBilling() {
return mBilling;
}
}
设置.java:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
...
mCheckout = Checkout.forActivity(this, InAppPurchase.get().getBilling());
mCheckout.start();
mCheckout.createPurchaseFlow(new PurchaseListener());
Inventory mInventory = mCheckout.makeInventory();
mInventory.load(
Inventory.Request.create().loadAllPurchases().loadSkus(ProductTypes.IN_APP),
new InventoryCallback());
...
}
private class InventoryCallback implements Inventory.Callback {
@Override public void onLoaded(@Nonnull Inventory.Products products) {
final Inventory.Product product = products.get(ProductTypes.IN_APP);
if (!product.supported) {
Toast.makeText(Settings.this, "error supported", Toast.LENGTH_LONG).show();
return;
}
List<Purchase> list = product.getPurchases();
if (product.getSku("dark_theme") != null) {
String price = product.getSku("dark_theme").price;
Toast.makeText(Settings.this, price, Toast.LENGTH_LONG).show();
}
}
}
和错误
未列出 SKU,无法加载
正在排队显示
Inventory.Request.create().loadAllPurchases().loadSkus(ProductTypes.IN_APP)
应用在 Alpha-section n Google Dev Console 中发布。
请帮我修复它。
解决方案
尝试提供一个 Sku id,你要检索
mInventory.load(Inventory.Request.create().loadAllPurchases().loadSkus(ProductTypes.IN_APP),"<your Google Play product Id>",
new InventoryCallback());
推荐阅读
- perl - 使包功能和面向对象
- java - 从目录创建辅助工件
- php - 语法错误,意外的“endforeach”(T_ENDFOREACH),期待文件结束(在我的滑块视图中 - 轮播)
- unity3d - 加载不同场景时构建的 Unity 游戏崩溃
- c++ - 如何在 Linux 中使用 C++ 获取有关主板的信息?
- c++ - c++ 函数在 f() + g() 中调用顺序
- python - 获取具有多边形结构的列表的最小值
- javascript - 如何在浏览器的警告框中显示大文本并防止文本修剪?
- python - 为什么我已经安装了 Kivy,却不断收到 ModuleNotFoundError?
- spring - Spring Security OAuth 和 Cucumber 访问被拒绝