SDKBOX IAP iOS: Problem

Hi,

I really need @yinjimmy help for this one.

I’ve been working on a cocos2d-x v 2.2.6 app, but since moving to XCode 11.5 I have been having some problems. I’m finding those problems hard to solve because I’m not a coding genius.

If I could use a different version of XCode to build my app, then the problems would be gone. I’m wondering if it’s possible to get libc++ versions made for sdkbox-admob_v2.4.3.0, sdkbox-iap_v2.4.3.0,
sdkbox-sdkboxplay_v2.4.3.0.

When I was using version 2.4.3.0 for Admob, IAP and SDKBoxPlay it worked really well. With no problems at all. Is it possible to make libc++ versions for these?

I would be very grateful if libc++ versions can be made for these. It would save me a lot of pain. If it’s possible I would really appreciate it.

Thank you for your help.

whats the compile error ?

Hi,

It’s not so much a compile error, it’s more a problem of things not working properly anymore. There are a few issues which I think have to do with thread safety.

The first problem I have is with IAP. When I make a purchase from app store, the screen freezes while the purchase process completes but now it never unfreezes. The purchase completes on the Apple app store but my game screen is still frozen, no animation, buttons don’t work etc. This never happened in the past up until XCode 9.4 everything was fine. Then in XCode 11.5 I have this issue. I made another post about this

Another problem I have is that preloading sounds with the SimpleAudioEngine sometimes causes a crash, but not always. It seems that preloading sometimes accesses a bad bit of memory, maybe it hasn’t been allocated properly. This never happened in the past, the SimpleAudioEngine always worked well. That’s why I’m suspicious about whether this is a thread issue.

There is one more problem I’m having but I don’t know if this is to do with threads or not. When I press the home button on my device to leave the app, then I open the app again and it enters the foreground, my splashscreen / launch image comes back. This never happened before I updated to XCode 11.5. It’s annoying because the splashscreen comes back but won’t go away. So I just have a splashscreen visible and not my game. This also causes a crash sometimes. I haven’t got a clue how to solve this problem because I googled for it and found nothing.

So I’m thinking that if my problem is to do with threads can I use this function to help solve the problems

cocos2d::Director::getInstance()->getScheduler()->performFunctionInCocosThread(

How do I use this in the right way? Thanks for your help and your advice.

Sorry, I meant to tag @yinjimmy in the reply above. @yinjimmy can you please read the post above.

Thanks.

It seems the 3 issues come with Xcode 11.5.

My Xcode is still Xcode 10.3. And my suggestion is using the old version of Xcode.

Thanks,

Hi @yinjimmy ,

I’m getting this error when I try to compile with XCode 10.3:

“Undefined symbol: ___isPlatformVersionAtLeast”

How do I solve this?

Thanks for your help

More of the error message:

Undefined symbols for architecture arm64:
“___isPlatformVersionAtLeast”, referenced from:
sdkbox::IAPWrapperEnabled::fetchStorePromotionOrder() in PluginIAP(IAPWrapper-ca5fc6a5b5be09257e44fffbb3d69e191ca3422efd98a9b43e8e7ff9426a711d.o)
sdkbox::IAPWrapperEnabled::updateStorePromotionOrder(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > > > const&) in PluginIAP(IAPWrapper-ca5fc6a5b5be09257e44fffbb3d69e191ca3422efd98a9b43e8e7ff9426a711d.o)
sdkbox::IAPWrapperEnabled::fetchStorePromotionVisibility(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in PluginIAP(IAPWrapper-ca5fc6a5b5be09257e44fffbb3d69e191ca3422efd98a9b43e8e7ff9426a711d.o)
sdkbox::IAPWrapperEnabled::updateStorePromotionVisibility(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, bool) in PluginIAP(IAPWrapper-ca5fc6a5b5be09257e44fffbb3d69e191ca3422efd98a9b43e8e7ff9426a711d.o)
sdkbox::AdMobWrapperEnabled::cache(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in PluginAdMob(AdMobWrapper-7ed480ff1d30e7bdc4166aa3fca9cc2546307bf80e74b2a40c2d534585c986e4.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Hi @yinjimmy

Which version of SDKBox compiles with XCode 10.3?

When I try to compile the current version I get the error message:

“Undefined symbol: ___isPlatformVersionAtLeast”

Is there a version available on GitHub? I don’t think the cpp versions on GitHub still compile for Xcode 10.3, or do they?

I just need versions for IAP, Admob, and SDKBoxPlay. Thanks for your help.

sorry for my typo, I use Xcode 11.3 .