[ad_1]
Hi @chuoihottieu, are you positive you haven’t modified anything in your replace? From your logs it’s onerous to say what’s going on.
@bluewind00 Thanks for sharing, it’s a excellent “base” for the longer term enhancements. Please make it public once more
Thanks.
I make it public the repository once more.
Again, this can be a pattern and isn’t assured to work.
2 Likes
hello @kds @bluewind00
i exchange sdkbox::IAP with mingos::IAP observe the directions, it’s work perfert on machine assist native arm64-v8a, however crash on armeabi-v7a with out purpose.
for instance Samsung Galaxy A13 5G: ABI assist: armeabi-v7a, armeabi.
Anyways thanks you guys atleast i upgraded to billing v4 earlier than 1.11.2022!
chuoihottieu
Just exchange
PROP_APP_ABI=arm64-v8a
with
PROP_APP_ABI=armeabi-v7a:arm64-v8a
in ‘proj.androidgradle.properties’
bluewind00, thanks very a lot lots (you’re our hero); I’ve up to date your code a bit, to get amount of bought merchandise; it really works even on Android 4.4.2. (debug and launch)
…Now I’ll attempt to insert it into my undertaking (appears not really easy).
These are recordsdata that may be copied straight into your undertaking.
C++:
Classes/frequent/JsonParser.cpp
Classes/frequent/JsonParser.h
Classes/dropbox/json11/json11.cpp
Classes/dropbox/json11/json11.hpp
Classes/iap/MingosIAP.h
Classes/platform/android/Java_iap_PurchaseEventListener.cpp
Classes/platform/android/MingosIAP.cpp
Java:
proj.android/app/src/iap/Product.java
proj.android/app/src/iap/PurchaseEventListener.java
proj.android/app/src/iap/PurchaseSupervisor.java
Next is a set of recordsdata that will battle together with your undertaking’s code.
Please incorporate the required elements of your undertaking.
proj.android/app/src/org/cocos2dx/cpp/AppExercise.java
proj.android/construct.gradle
proj.android/app/construct.gradle
proj.android/app/proguard-rules.professional
2 Likes
After two days of crashes and black screens, eventually appears I used you code. It was onerous (for me), as a result of:
- I used separate object (in my c++ code):
sdkbox::IAP::setListener(m_IAP_obj); // m_IAP_obj class extends : sdkbox::IAPListener
And you utilize the principle class for the listener (object) :
class SampleScene : public cocos2d::Scene, public mingos::IAPEventListener { // your code
class HelloWorld : public cocos2d::Layer // my previous code
- Also there are tiny distinction in:
proj.androidappsrcorgcocos2dxcppAppExercise.java
:
public class AppExercise extends Cocos2dxActivity { // your code
public class AppExercise extends com.sdkbox.plugin.SDKBoxActivity { // my code
…
mPurchaseSupervisor = new PurchaseSupervisor(this); // is it potential to vary this file to make use of as listener not AppExercise class (object), however one thing else?
Thank you on your nice job! Thanks to you, perhaps our Cocos video games will probably be alive for some extra time.
1 Like
This is an important level, however as a way to create your personal buy course of, you need to depart the sdkbox.
This means making use of the next code to AppExercise.
public class AppExercise extends Cocos2dxActivity {
If you apply my code as it’s beneath, you’ll not obtain the notification after the acquisition request with my code.
This is as a result of SDKBoxActivity will obtain the results of the method from the shop.
public class AppExercise extends com.sdkbox.plugin.SDKBoxActivity
In different phrases, leaving the code above just isn’t an possibility for us.
mPurchaseSupervisor = new PurchaseSupervisor(this); // is it potential to vary this file to make use of as listener not AppExercise class (object), however one thing else?
Are you saying you need to reduce adjustments to AppExercise?
Then you are able to do that by making PurcahaseManager a singleton.
If the intent of this query is to maintain the next code as defined earlier, it is unnecessary.
public class AppExercise extends com.sdkbox.plugin.SDKBoxActivity
I’ve modified PurcahseManager to singleton in my newest code.
1 Like
[ad_2]