Я пытаюсь использовать gdx-pay для добавления IAP в свое приложение. Это отлично работает на Android, но мое приложение падает при попытке покупки теста. Я успешно настроил Песочницу на iTunes Connect, кажется, менеджер по закупкам, по крайней мере, успешно подключается. Тем не менее, я не получаю трассировку стека при сбое приложения, поэтому я не знаю, как начать отладку. Я добавил журналы в максимально возможное количество мест, ограниченных некоторыми файлами только для чтения. Это как поток идет, когда я пытаюсь купить IAP:Сбой при Gdx-оплате при попытке покупки на iOS
[GdxPay/AppleIOS] Products successfully received!
[GdxPay/AppleIOS] Purchase observer successfully installed!
2017-02-06 18:27:01.475036 Snowfall[478:80137] [info] PAYMENTINFO: Handling Install
[GdxPay/AppleIOS] There are 0 unfinished transactions. Try to finish...
[GdxPay/AppleIOS] Products successfully received!
[GdxPay/AppleIOS] Purchase observer successfully installed!
2017-02-06 18:27:01.719032 Snowfall[478:80137] [info] PAYMENTINFO: Handling Install
[GdxPay/AppleIOS] There are 0 unfinished transactions. Try to finish...
2017-02-06 18:28:02.054620 Snowfall[478:80137] [App] if we're in the real pre-commit handler we can't actually add any new fences due to CA restriction
2017-02-06 18:28:02.054790 Snowfall[478:80137] [App] if we're in the real pre-commit handler we can't actually add any new fences due to CA restriction
[GdxPay/AppleIOS] Purchasing product char2 ...
Process finished with exit code -1
не слишком уверен, почему «заканчивает процесс», приложение закрывается, и нет трассировки стека. Я использую IntelliJ для Mac OS. Простой стартовый вопрос: как включить лучшую трассировку стека на IntelliJ? И немного сложнее, что здесь происходит?
LibGDX версия 1.9.5
roboVM версия 2.3.0
GDX плати версия 0.10.3
Вот соответствующий код IOS. Весь другой код gdx-pay - это в основном копия-вставка из Github и отлично работает с Android.
Launch:
public class Snowfall extends IOSApplication.Delegate {
JumpV6 game;
@Override
protected IOSApplication createApplication() {
IOSApplicationConfiguration config = new IOSApplicationConfiguration();
config.orientationLandscape = true;
config.orientationPortrait = false;
game = new JumpV6();
game.setAppStore(APPSTORE_APPLE);
return new IOSApplication(game, config);
}
@Override
public boolean didFinishLaunching(UIApplication application, UIApplicationLaunchOptions launchOptions) {
super.didFinishLaunching(application, launchOptions);
game.setPlatformResolver(new IOSResolver(game));
return true;
}
public static void main(String[] argv) {
NSAutoreleasePool pool = new NSAutoreleasePool();
UIApplication.main(argv, null, Snowfall.class);
pool.close();
}}
Резольвер:
public class IOSResolver extends PlatformResolver {
String appleKey = "......"; //omitted
public IOSResolver(JumpV6 myGame) {
super();
PurchaseManagerConfig config = myGame.purchaseManagerConfig;
config.addStoreParam(PurchaseManagerConfig.STORE_NAME_IOS_APPLE,appleKey);
initializeIAP(null, myGame.purchaseObserver, config);
installIAP();
}}
Спасибо
У меня есть эта точная проблема. Можете ли вы уточнить, что означают 'initializeIAP()' и 'installIAP()' в вашем случае? В новых GdxPay sdks у меня есть только возможность вызвать 'PurchaseSystem.install (observer, config)'. – WeirdElfB0y