Wednesday, October 26, 2022
HomeGame DevelopmentReplace to Billing Library 4(sdkbox) - Third-Occasion

Replace to Billing Library 4(sdkbox) – Third-Occasion


Hello there,

Sure, I do know that SDKBOX is lifeless. Nevertheless, is there any likelihood that you will replace it to assist Google Billing Library v4?

Ps. Google is forcing to make use of it ranging from 1.11.2022.

Finest,
kds


I too have seen this major problem.

As everyone knows, SDKBOX is lifeless.
Most likely no replace is predicted.

Reminder: Beginning on August 2, 2022, all new apps should use Billing Library model 4 or newer.
By November 1, 2022, all updates to current apps should use Billing Library model 4 or newer.

And the issue is just not simple.
There are important API modifications between model 4 and model 5, and the strategies out there in model 4 have been deprecated.
So, in follow, model 5 assist is a should.

Sadly, there isn’t a open supply library out there presently that I can hope to seek out.

  • Capable of management each iOS and Android with a standard interface.
  • Help each cocos2d-x 3.x and 4.x
  • Suitable with Billing Library model 5

From the place did you discover this? You may have completely flawed information.
I do have my very own framework written, beforehand it was on model 4 and not too long ago i upgraded to version-5 and that i dont need to do any apis modifications in any respect.

Beforehand i used to be additionally utilizing sdkbox, however attempt to create your individual wrapper class as soon as and also you dont need to face such points any extra.
I can not share my code, o/w i would assist you to.

In conclusion, I feel the one manner to do that is to create my very own implementation of in-app billing for Android.
I’ve some expertise with native integration for Android, so I’ve began engaged on it.
If it really works, I want to share the code.

As for iOS, I’ve no expertise with Goal-C, so it’s an unknown.



1 Like

Thanks to your replies. Yeah, that is the very best time to spend few days on the wrapper. It will likely be additionally an excellent time to combine different shops (Amazon, Huawei, Samsung and so on.).

@bluewind00 iOS integration ought to be simpler since you don’t have to make use of any “ndk”. I’ll share the code once I handle to do it (I hate Obj-C too :P). The precedence is Android, sdkbox nonetheless works on iOS.

Hiya, I’m going through the identical downside google billing 4 with use sdkbox. Please share supply code to exchange sdkbox for android

I’m nonetheless a piece in progress.
I’ll share it when it’s completed, however I can’t promise a deadline.
In case you are in a rush you possibly can work on it your self and share it.
Additionally, I can not make it totally appropriate with sdkbox::IAP.
I’ll solely implement the options that I take advantage of.

It isn’t good, however I used to be capable of create the performance I wanted.
I want to share it as a pattern code.

Word that it is just for Android and never totally appropriate with sdkbox::IAP.
The callback arguments and namespace are completely different.

I don’t suppose you should use this code as it’s, however you should use it as a reference to implement the performance you want.

If anybody else has applied the acquisition performance, please share.

I’m solely conversant in Android at this level.
For iOS, you possibly can proceed to make use of sdkbox::IAP, so you possibly can determine the platform and use
I’m considering of utilizing my very own code for android and sdkbox::IAP for iOS.



4 Likes

Thanks to your share.
did you take a look at in googleplay? and its work?

In fact, I really made a take a look at buy on Google Play.
It really works effective.



1 Like

Hiya, it ‘s works for android. Please replace for IOS. i would really like change sdkbox is it not handy now

I’m not conversant in iOS.
Can somebody please share the code for the iOS buy course of.

I used sdkbox for ios, and used your mission for Android.
Works effectively.



1 Like

https://github.com/newnon/avalon/blob/grasp/avalon/platform/ios/fee/fee.mm



1 Like

Hiya, i examined profitable on take a look at gadget. However after launch to manufacturing on google play retailer. Sport crash

v4dUdD0okk04lr2Qt0FyTw==/split_config.arm64_v8a.apk!libMyGame.so (_JNIEnv::CallStaticObjectMethod(_jclass*, _jmethodID*, …)+108)
v4dUdD0okk04lr2Qt0FyTw==/split_config.arm64_v8a.apk!libMyGame.so (mingos::IAP::setListener(mingos::IAPEventListener*)+76)

Please test proj.android/app/proguard-rules.professional.
The next description is required.

-keep class iap.** { *; }
-dontwarn iap.**

If an error happens within the launch construct even when these are described, I can not consider the trigger.

Hiya, It’s mounted bug thank to your assist.

Hello @bluewind00
After i improve observe your instance then i get crash price very excessive!
Anybody get this downside?


pid: 0, tid: 0 >>> com.myapp.android <<<

backtrace:
Unknown
#01 laptop 0x000000000070dab9 /knowledge/app/~~koGRJuiDmh7LiS3Lzk2FzA==/com.myapp.android-TILglnNWY2pMK75YXUy_0A==/split_config.armeabi_v7a.apk!libMyAppGame.so (cocos2d::Scheduler::replace(float)+592)
#02 laptop 0x00000000006fd297 /knowledge/app/~~koGRJuiDmh7LiS3Lzk2FzA==/com.myapp.android-TILglnNWY2pMK75YXUy_0A==/split_config.armeabi_v7a.apk!libMyAppGame.so (cocos2d::Director::drawScene()+178)
#03 laptop 0x00000000006fede1 /knowledge/app/~~koGRJuiDmh7LiS3Lzk2FzA==/com.myapp.android-TILglnNWY2pMK75YXUy_0A==/split_config.armeabi_v7a.apk!libMyAppGame.so (cocos2d::Director::mainLoop()+76)
#04 laptop 0x00000000000357bf /knowledge/app/~~koGRJuiDmh7LiS3Lzk2FzA==/com.myapp.android-TILglnNWY2pMK75YXUy_0A==/oat/arm/base.odex (art_jni_trampoline+94)
#05 laptop 0x00000000000d39d5 /apex/com.android.artwork/lib/libart.so (art_quick_invoke_stub_internal+68)
#06 laptop 0x00000000004ead9d /apex/com.android.artwork/lib/libart.so (art_quick_invoke_static_stub+276)
#07 laptop 0x000000000012bd3f /apex/com.android.artwork/lib/libart.so (artwork::ArtMethod::Invoke(artwork::Thread*, unsigned int*, unsigned int, artwork::JValue*, char const*)+166)
#08 laptop 0x000000000023f1ef /apex/com.android.artwork/lib/libart.so (artwork::interpreter::ArtInterpreterToCompiledCodeBridge(artwork::Thread*, artwork::ArtMethod*, artwork::ShadowFrame*, unsigned brief, artwork::JValue*)+254)
#09 laptop 0x0000000000236eaf /apex/com.android.artwork/lib/libart.so (bool artwork::interpreter::DoCall<false, false>(artwork::ArtMethod*, artwork::Thread*, artwork::ShadowFrame&, artwork::Instruction const*, unsigned brief, artwork::JValue*)+738)
#10 laptop 0x00000000004dec2f /apex/com.android.artwork/lib/libart.so (MterpInvokeStatic+490)
#11 laptop 0x00000000000ce594 /apex/com.android.artwork/lib/libart.so (mterp_op_invoke_static+20)
#12 laptop 0x0000000000488f58 /knowledge/app/~~koGRJuiDmh7LiS3Lzk2FzA==/com.myapp.android-TILglnNWY2pMK75YXUy_0A==/oat/arm/base.vdex (org.cocos2dx.lib.Cocos2dxRenderer.onDrawFrame+20)
#13 laptop 0x000000000022fea9 /apex/com.android.artwork/lib/libart.so (artwork::interpreter::Execute(artwork::Thread*, artwork::CodeItemDataAccessor const&, artwork::ShadowFrame&, artwork::JValue, bool, bool) (.llvm.18134065572441359314)+248)
#14 laptop 0x0000000000236619 /apex/com.android.artwork/lib/libart.so (artwork::interpreter::EnterInterpreterFromEntryPoint(artwork::Thread*, artwork::CodeItemDataAccessor const&, artwork::ShadowFrame*)+120)
#15 laptop 0x00000000004cdc63 /apex/com.android.artwork/lib/libart.so (artQuickToInterpreterBridge+698)
#16 laptop 0x00000000000d8561 /apex/com.android.artwork/lib/libart.so (art_quick_to_interpreter_bridge+32)
#17 laptop 0x0000000000544cb1 /system/framework/arm/boot-framework.oat (android.opengl.GLSurfaceView$GLThread.guardedRun+3472)
#18 laptop 0x00000000005453a9 /system/framework/arm/boot-framework.oat (android.opengl.GLSurfaceView$GLThread.run+184)
#19 laptop 0x00000000000d39d5 /apex/com.android.artwork/lib/libart.so (art_quick_invoke_stub_internal+68)
#20 laptop 0x00000000004eac6b /apex/com.android.artwork/lib/libart.so (art_quick_invoke_stub+282)
#21 laptop 0x000000000012bd2d /apex/com.android.artwork/lib/libart.so (artwork::ArtMethod::Invoke(artwork::Thread*, unsigned int*, unsigned int, artwork::JValue*, char const*)+148)
#22 laptop 0x00000000003f84e7 /apex/com.android.artwork/lib/libart.so (artwork::JValue artwork::InvokeVirtualOrInterfaceWithJValuesartwork::ArtMethod*(artwork::ScopedObjectAccessAlreadyRunnable const&, _jobject*, artwork::ArtMethod*, jvalue const*)+374)
#23 laptop 0x00000000003f85f7 /apex/com.android.artwork/lib/libart.so (artwork::JValue artwork::InvokeVirtualOrInterfaceWithJValues<_jmethodID*>(artwork::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue const*)+42)
#24 laptop 0x00000000004396f5 /apex/com.android.artwork/lib/libart.so (artwork::thread::CreateCallback(void*)+1056)
#25 laptop 0x0000000000080b13 /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+40)
#26 laptop 0x0000000000039d23 /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+30)

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -
Google search engine

Most Popular

Recent Comments