Gdx-Pay iOS商店,找不到产品信息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gdx-Pay iOS商店,找不到产品信息相关的知识,希望对你有一定的参考价值。
我使用Google App Store实现了针对android的gdx-pay工作。我这样做了:https://bitbucket.org/just4phil/gdxpayexample/src/。
我现在正试图让它在ios上运行,但找不到任何关于如何做到这一点的文档。在上面链接的项目中,没有“ios app store”或对ios项目所做的任何更改。有没有人有一个链接到使用ios的示例?
我尝试了一些东西并且做到了这一点:
IOSResolver:
public class IOSResolver extends PlatformResolver {
public IOSResolver(MyGdxGame myGame) {
super(myGame);
PurchaseManagerConfig config = myGame.purchaseManagerConfig;
initializeIAP(null, myGame.purchaseObserver, config);
installIAP();
}
IOSLauncher:
@Override
protected IOSApplication createApplication() {
IOSApplicationConfiguration config = new IOSApplicationConfiguration();
config.orientationLandscape = false;
config.orientationPortrait = true;
config.useCompass = false;
config.useAccelerometer = false;
game = new MyGdxGame(new IOSPlatform());
return new IOSApplication(game, config);
}
@Override
public boolean didFinishLaunching(UIApplication application, UIApplicationLaunchOptions launchOptions) {
boolean finished = super.didFinishLaunching(application, launchOptions);
game.setPlatformResolver(new IOSResolver(game));
return finished;
}
核心:
// ---- IAP: define products ---------------------
purchaseManagerConfig = new PurchaseManagerConfig();
purchaseManagerConfig.addOffer(new Offer().setType(OfferType.ENTITLEMENT).setIdentifier(ios_productId));
这给了我错误:
[GdxPay/AppleIOS] Requesting product info for test.product.id
2017-02-20 16:58:58.089803 IOSLauncher[5611:2144625] [info] gdx-pay: calls purchasemanager.purchase()
[GdxPay/AppleIOS] Error purchasing product (wrong product info count returned: 0)!
com.badlogic.gdx.utils.GdxRuntimeException: java.lang.RuntimeException: Error purchasing product (wrong product info count returned: 0)!
at com.scene2d.space_camp.MyGdxGame$1.handlePurchaseError(MyGdxGame.java)
at com.badlogic.gdx.pay.ios.apple.PurchaseManageriOSApple$AppleProductsDelegatePurchase.didReceiveResponse(PurchaseManageriOSApple.java)
at com.badlogic.gdx.pay.ios.apple.PurchaseManageriOSApple$AppleProductsDelegatePurchase.$cb$productsRequest$didReceiveResponse$(PurchaseManageriOSApple.java)
at org.robovm.apple.uikit.UIApplication.main(UIApplication.java)
at org.robovm.apple.uikit.UIApplication.main(UIApplication.java)
at com.scene2d.tut.IOSLauncher.main(IOSLauncher.java)
Caused by: java.lang.RuntimeException: Error purchasing product (wrong product info count returned: 0)!
... 5 more
我在iTunes Connect上注册了应用程序并设置了产品。但是我没有发布二进制文件,我是否需要测试IAP?它在iTunes Connect中显示此消息:
您的首次应用内购买必须使用新的应用版本提交。从应用程序的应用内购买部分中选择它,然后单击提交。
上传二进制文件并提交第一次应用内购买后,可以使用下表提交其他应用内购买。
没有上传实际的应用程序,没有办法测试?
答案
我有同样的问题,并看到相同的错误消息。
我认为让IAP工作的两个关键是:
- 使用真实设备进行测试,而不是模拟设备。
- 使用沙盒帐户登录,而不是真实帐户。
在itunesconnect上创建您的沙盒帐户。构建您的应用程序并使用xcode将其安装到您的ipad / iphone上。在您的设备上,进入设置并注销。这个很重要。运行您的应用并进行购买。系统将提示您登录。使用您的沙箱帐户。
我做到了这一点并且有效。
以上是关于Gdx-Pay iOS商店,找不到产品信息的主要内容,如果未能解决你的问题,请参考以下文章