[Solved] Sdkbox IAP integration cocos2d js

iam trying to add sdkbox into my project. can u help me to add sdkbox to my project. i need to add google play in app and advertisment to my project. please helpp mee to solvee this issuee

You can find the installer and plugins here

We support Google Play IAP and for ads there is AdColony, Chartboost, Vungle.

1 Like

after installing and adding plugin using sdk, when take build an error occur. how to solve this bug.thanks in advance.

hiiii now iam facing this error when try build apk. help me to fix ittt.

console log

Android NDK: WARNING:E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/cocos/./Android.mk:cocos2dx_static: LOCAL_LDLIBS is always ignored for static libraries
Android NDK: WARNING:E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/cocos/platform/android/Android.mk:cocos2dxandroid_static: LOCAL_LDLIBS is always ignored for static libraries
make.exe: Entering directory E:/Users/user/Documents/Cocos/sdkbox/frameworks/runtime-src/proj.android' [armeabi] Compile++ thumb: cocos2djs_shared <= main.cpp In file included from jni/hellojavascript/main.cpp:1: jni/../../Classes\AppDelegate.h:24:31: error: only virtual member functions can be marked 'override' void initGLContextAttrs() override; ^~~~~~~~ 1 error generated. make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/hellojavascript/main.o] Error 1 make.exe: Leaving directory E:/Users/user/Documents/Cocos/sdkbox/frameworks/runtime-src/proj.android’
Running command: compile
Building mode: debug
building native
NDK build mode: release
running: ‘E:\Users\user\android-ndk-r9d\ndk-build -C E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android -j1 NDK_MODULE_PATH=E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android…/…/js-bindings;E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x;E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/cocos;E:\Users\user\Documents\Cocos\sdkbox\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/external’

Ndk build failed!

what version of Cocos2d-x, what version of SDKBOX, what version of Android?

1 Like

cococs2d js v3.0
sdkbox-chartboost_v1.1.6.5
android ndk r9d

noww iammm getting this error when trys to make apk build

Android NDK: WARNING:E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/cocos/./Android.mk:cocos2dx_static: LOCAL_LDLIBS is always ignored for static libraries
Android NDK: WARNING:E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/cocos/platform/android/Android.mk:cocos2dxandroid_static: LOCAL_LDLIBS is always ignored for static libraries
make.exe: Entering directory E:/Users/user/Documents/Cocos/CocosJSGameiap/frameworks/runtime-src/proj.android' [armeabi] Compile++ thumb: cocos2djs_shared <= coded_stream.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= common.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= extension_set.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= generated_message_util.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= message_lite.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= once.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= atomicops_internals_x86_gcc.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= repeated_field.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= wire_format_lite.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= zero_copy_stream.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= zero_copy_stream_impl_lite.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= stringprintf.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= Landscape_png.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= PlayDisable_png.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= PlayEnable_png.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= Portrait_png.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= Shine_png.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= Runtime.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= Protos.pb.cc warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= VisibleRect.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= AppDelegate.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= ConfigParser.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= Runtime_android.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= main.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= PluginIAPJS.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] 1 warning generated. [armeabi] Compile++ thumb: cocos2djs_shared <= PluginIAPJsHelper.cpp warning: unknown warning option '-Wno-psabi' [-Wunknown-warning-option] jni/../../Classes/PluginIAPJsHelper.cpp:41:5: error: no matching function for call to 'JS_SetProperty' JS_SetProperty(cx, jsobj, "name", &name); ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2957:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::Handle<JS::Value>' for 4th argument JS_SetProperty(JSContext *cx, JSObject *obj, const char *name, JS::Handle<JS::Value> v); ^ jni/../../Classes/PluginIAPJsHelper.cpp:43:5: error: no matching function for call to 'JS_SetProperty' JS_SetProperty(cx, jsobj, "id", &id); ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2957:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::Handle<JS::Value>' for 4th argument JS_SetProperty(JSContext *cx, JSObject *obj, const char *name, JS::Handle<JS::Value> v); ^ jni/../../Classes/PluginIAPJsHelper.cpp:45:5: error: no matching function for call to 'JS_SetProperty' JS_SetProperty(cx, jsobj, "title", &title); ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2957:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::Handle<JS::Value>' for 4th argument JS_SetProperty(JSContext *cx, JSObject *obj, const char *name, JS::Handle<JS::Value> v); ^ jni/../../Classes/PluginIAPJsHelper.cpp:47:5: error: no matching function for call to 'JS_SetProperty' JS_SetProperty(cx, jsobj, "description", &description); ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2957:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::Handle<JS::Value>' for 4th argument JS_SetProperty(JSContext *cx, JSObject *obj, const char *name, JS::Handle<JS::Value> v); ^ jni/../../Classes/PluginIAPJsHelper.cpp:49:5: error: no matching function for call to 'JS_SetProperty' JS_SetProperty(cx, jsobj, "price", &price); ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2957:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::Handle<JS::Value>' for 4th argument JS_SetProperty(JSContext *cx, JSObject *obj, const char *name, JS::Handle<JS::Value> v); ^ jni/../../Classes/PluginIAPJsHelper.cpp:78:14: error: no matching function for call to 'JS_SetElement' if (!JS_SetElement(cx, jsretArr, i, &arrElement)) { ^~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:3057:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::MutableHandle<JS::Value>' for 4th argument JS_SetElement(JSContext *cx, JSObject *obj, uint32_t index, JS::MutableHandle<JS::Value> vp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:119:9: error: unknown type name 'JSBool'; did you mean 'cpBool'? JSBool hasAction; ^~~~~~ cpBool E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/./../external/chipmunk/include/chipmunk/chipmunk_types.h:150:14: note: 'cpBool' declared here typedef int cpBool; ^ jni/../../Classes/PluginIAPJsHelper.cpp:129:13: error: no matching function for call to 'JS_HasProperty' if (JS_HasProperty(cx, obj, func_name, &hasAction) && hasAction) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2757:1: note: candidate function not viable: no known conversion from 'cpBool *' (aka 'int *') to 'bool *' for 4th argument JS_HasProperty(JSContext *cx, JSObject *obj, const char *name, bool *foundp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:130:17: error: no matching function for call to 'JS_GetProperty' if(!JS_GetProperty(cx, obj, func_name, &func_handle)) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2947:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::MutableHandle<JS::Value>' for 4th argument JS_GetProperty(JSContext *cx, JSObject *obj, const char *name, JS::MutableHandle<JS::Value> vp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:162:9: error: unknown type name 'JSBool'; did you mean 'cpBool'? JSBool hasAction; ^~~~~~ cpBool E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/./../external/chipmunk/include/chipmunk/chipmunk_types.h:150:14: note: 'cpBool' declared here typedef int cpBool; ^ jni/../../Classes/PluginIAPJsHelper.cpp:172:13: error: no matching function for call to 'JS_HasProperty' if (JS_HasProperty(cx, obj, func_name, &hasAction) && hasAction) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2757:1: note: candidate function not viable: no known conversion from 'cpBool *' (aka 'int *') to 'bool *' for 4th argument JS_HasProperty(JSContext *cx, JSObject *obj, const char *name, bool *foundp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:173:17: error: no matching function for call to 'JS_GetProperty' if(!JS_GetProperty(cx, obj, func_name, &func_handle)) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2947:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::MutableHandle<JS::Value>' for 4th argument JS_GetProperty(JSContext *cx, JSObject *obj, const char *name, JS::MutableHandle<JS::Value> vp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:205:9: error: unknown type name 'JSBool'; did you mean 'cpBool'? JSBool hasAction; ^~~~~~ cpBool E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/./../external/chipmunk/include/chipmunk/chipmunk_types.h:150:14: note: 'cpBool' declared here typedef int cpBool; ^ jni/../../Classes/PluginIAPJsHelper.cpp:214:13: error: no matching function for call to 'JS_HasProperty' if (JS_HasProperty(cx, obj, func_name, &hasAction) && hasAction) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2757:1: note: candidate function not viable: no known conversion from 'cpBool *' (aka 'int *') to 'bool *' for 4th argument JS_HasProperty(JSContext *cx, JSObject *obj, const char *name, bool *foundp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:215:17: error: no matching function for call to 'JS_GetProperty' if(!JS_GetProperty(cx, obj, func_name, &func_handle)) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2947:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::MutableHandle<JS::Value>' for 4th argument JS_GetProperty(JSContext *cx, JSObject *obj, const char *name, JS::MutableHandle<JS::Value> vp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:247:9: error: unknown type name 'JSBool'; did you mean 'cpBool'? JSBool hasAction; ^~~~~~ cpBool E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/./../external/chipmunk/include/chipmunk/chipmunk_types.h:150:14: note: 'cpBool' declared here typedef int cpBool; ^ jni/../../Classes/PluginIAPJsHelper.cpp:256:13: error: no matching function for call to 'JS_HasProperty' if (JS_HasProperty(cx, obj, func_name, &hasAction) && hasAction) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2757:1: note: candidate function not viable: no known conversion from 'cpBool *' (aka 'int *') to 'bool *' for 4th argument JS_HasProperty(JSContext *cx, JSObject *obj, const char *name, bool *foundp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:257:17: error: no matching function for call to 'JS_GetProperty' if(!JS_GetProperty(cx, obj, func_name, &func_handle)) { ^~~~~~~~~~~~~~ E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/external/spidermonkey/prebuilt/android/../../include/android\jsapi.h:2947:1: note: candidate function not viable: no known conversion from 'jsval *' (aka 'JS::Value *') to 'JS::MutableHandle<JS::Value>' for 4th argument JS_GetProperty(JSContext *cx, JSObject *obj, const char *name, JS::MutableHandle<JS::Value> vp); ^ jni/../../Classes/PluginIAPJsHelper.cpp:289:9: error: unknown type name 'JSBool'; did you mean 'cpBool'? JSBool hasAction; ^~~~~~ cpBool E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/./../external/chipmunk/include/chipmunk/chipmunk_types.h:150:14: note: 'cpBool' declared here typedef int cpBool; ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 1 warning and 20 errors generated. make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/__/__/Classes/PluginIAPJsHelper.o] Error 1 make.exe: Leaving directory E:/Users/user/Documents/Cocos/CocosJSGameiap/frameworks/runtime-src/proj.android’
Running command: compile
Building mode: debug
building native
NDK build mode: release
running: ‘E:\Users\user\android-ndk-r9d\ndk-build -C E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android -j1 NDK_MODULE_PATH=E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android…/…/js-bindings;E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x;E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/cocos;E:\Users\user\Documents\Cocos\CocosJSGameiap\frameworks\runtime-src\proj.android…/…/js-bindings/cocos2d-x/external’

Ndk build failed!

Can you show me your Android.mk, Application.mk and ApplicationManifest.xml

Also the subject is SDKBOX IAP, however you are using Chartboost? Chartboost does not do IAP.

iam just trying to implement sdkbox into my game. so i choose chartboost. if i success on this, it will be easy to implement iap.

android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := cocos2djs_shared

LOCAL_MODULE_FILENAME := libcocos2djs

LOCAL_SRC_FILES := hellojavascript/main.cpp \
		   ../../Classes/PluginChartboostJS.cpp \
			../../Classes/SDKBoxJSHelper.cpp \
                   ../../Classes/AppDelegate.cpp

$(call import-add-path,$(LOCAL_PATH))

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

LOCAL_STATIC_LIBRARIES := cocos_jsb_static
LOCAL_STATIC_LIBRARIES += PluginChartboost
LOCAL_STATIC_LIBRARIES += sdkbox

LOCAL_EXPORT_CFLAGS := -DCOCOS2D_DEBUG=2 -DCOCOS2D_JAVASCRIPT

include $(BUILD_SHARED_LIBRARY)


$(call import-add-path,$(LOCAL_PATH))

$(call import-module, bindings)
$(call import-module, ./sdkbox)
$(call import-module, ./pluginchartboost)

Application.mk

APP_STL := gnustl_static

# Uncomment this line to compile to armeabi-v7a, your application will run faster but support less devices
#APP_ABI := armeabi-v7a

APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char
APP_LDFLAGS := -latomic

ifeq ($(NDK_DEBUG),1)
  APP_CPPFLAGS += -DCOCOS2D_DEBUG=1
  APP_OPTIM := debug
else
  APP_CPPFLAGS += -DNDEBUG
  APP_OPTIM := release
endif

ApplicationManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.chukong.csc.js360"
      android:versionCode="1"
      android:versionName="1.0"
      android:installLocation="auto">

  <uses-sdk android:minSdkVersion="19"/>
  <uses-feature android:glEsVersion="0x00020000" />

  <application android:label="@string/app_name"
               android:icon="@drawable/icon">

    <!-- Tell NativeActivity the name of our .so -->
    <meta-data android:name="android.app.lib_name" android:value="cocos2djs" />

    <activity android:name="org.cocos2dx.javascript.AppActivity"
              android:label="@string/app_name"
              android:screenOrientation="landscape"
              android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
              android:configChanges="orientation">

      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>

  </application>

  <supports-screens android:anyDensity="true"
                    android:smallScreens="true"
                    android:normalScreens="true"
                    android:largeScreens="true"
                    android:xlargeScreens="true"/>

  <uses-permission android:name="android.permission.INTERNET" />
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

</manifest>

thnakkksss forrr ur helppppp… today i integrated latest facebook plugin into my gameee… :slight_smile: :slight_smile: :slight_smile:

Dear slackmoehrle,
i am trying to import sdkbox into my game but something going wrong when building my project …
i am using cocos2d-js V3.6
NDK r9d

i am getting this error while building the project

Running command: compile
Building mode: debug
Android platform not specified, searching a default one...
running: '"C:\Users\AAA\AppData\Local\Android\sdk\tools\android" update project -t android-15 -p D:\CocosJSGame\frameworks\runtime-src\proj.android'

Updated project.properties
Updated local.properties
Updated file D:\CocosJSGame\frameworks\runtime-src\proj.android\proguard-project.txt
It seems that there are sub-projects. If you want to update them
please use the --subprojects parameter.
Android platform not specified, searching a default one...
running: '"C:\Users\AAA\AppData\Local\Android\sdk\tools\android" update lib-project -p D:\CocosJSGame\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/plat
form/android/java -t android-21'

Updated project.properties
Updated local.properties
Updated file D:\CocosJSGame\frameworks\runtime-src\proj.android\..\..\js-bindings\cocos2d-x\cocos\platform\android\java\proguard-project.txt
Android platform not specified, searching a default one...
running: '"C:\Users\AAA\AppData\Local\Android\sdk\tools\android" update lib-project -p D:\CocosJSGame\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/cocos/plat
form/android/java/libs/facebook_lib/ -t android-21'

Updated project.properties
Updated local.properties
Updated file D:\CocosJSGame\frameworks\runtime-src\proj.android\..\..\js-bindings\cocos2d-x\cocos\platform\android\java\libs\facebook_lib\proguard-project.txt
Android platform not specified, searching a default one...
running: '"C:\Users\AAA\AppData\Local\Android\sdk\tools\android" update lib-project -p C:/Users/AAA/AppData/Local/Android/sdk/extras/google/google_play_services/libproject/go
ogle-play-services_lib/ -t android-10'

Updated project.properties
Updated local.properties
Updated file C:\Users\AAA\AppData\Local\Android\sdk\extras\google\google_play_services\libproject\google-play-services_lib\proguard-project.txt
building native
NDK build mode: debug
NDK_TOOLCHAIN_VERSION: 4.9
running: '"D:\Sources\Development\cocos-vars\android-ndk-r9d\ndk-build" -C D:\CocosJSGame\frameworks\runtime-src\proj.android -j4 NDK_MODULE_PATH=D:\CocosJSGame\frameworks\runti
me-src\proj.android\../../js-bindings;D:\CocosJSGame\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x;D:\CocosJSGame\frameworks\runtime-src\proj.android\../../js-b
indings/cocos2d-x/cocos;D:\CocosJSGame\frameworks\runtime-src\proj.android\../../js-bindings/cocos2d-x/external NDK_TOOLCHAIN_VERSION=4.9 NDK_DEBUG=1'

Android NDK: WARNING: Unsupported source file extensions in jni/Android.mk for module cocos2djs_shared
Android NDK:   ../../Classes/PluginFacebookJS.hpp ../../Classes/PluginFacebookJSHelper.h ../../Classes/SDKBoxJSHelper.h
make.exe: Entering directory `D:/CocosJSGame/frameworks/runtime-src/proj.android'
[armeabi] Compile++ thumb: cocos2djs_shared <= coded_stream.cc
[armeabi] Compile++ thumb: cocos2djs_shared <= common.cc
[armeabi] Compile++ thumb: cocos2djs_shared <= extension_set.cc
In file included from jni/../../Classes/protobuf-lite/google/protobuf/io/coded_stream_inl.h:39:0,
                 from jni/../../Classes/protobuf-lite/google/protobuf/io/coded_stream.cc:41:
jni/../../Classes/protobuf-lite/google/protobuf/io/coded_stream.h:112:18: fatal error: string: No such file or directory
 #include <string>
                  ^
compilation terminated.
make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/__/__/Classes/protobuf-lite/google/protobuf/io/coded_stream.o] Error 1
make.exe: *** Waiting for unfinished jobs....
In file included from jni/../../Classes/protobuf-lite/google/protobuf/stubs/common.cc:33:0:
jni/../../Classes/protobuf-lite/google/protobuf/stubs/common.h:41:18: fatal error: string: No such file or directory
 #include <string>
                  ^
compilation terminated.
make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/__/__/Classes/protobuf-lite/google/protobuf/stubs/common.o] Error 1
[armeabi] Compile++ thumb: cocos2djs_shared <= generated_message_util.cc
In file included from jni/../../Classes/protobuf-lite/google/protobuf/stubs/hash.h:39:0,
                 from jni/../../Classes/protobuf-lite/google/protobuf/extension_set.cc:35:
jni/../../Classes/protobuf-lite/google/protobuf/stubs/common.h:41:18: fatal error: string: No such file or directory
 #include <string>
                  ^
compilation terminated.
make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/__/__/Classes/protobuf-lite/google/protobuf/extension_set.o] Error 1
In file included from jni/../../Classes/protobuf-lite/google/protobuf/generated_message_util.cc:35:0:
jni/../../Classes/protobuf-lite/google/protobuf/generated_message_util.h:41:18: fatal error: string: No such file or directory
 #include <string>
                  ^
compilation terminated.
make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/__/__/Classes/protobuf-lite/google/protobuf/generated_message_util.o] Error 1
make.exe: Leaving directory `D:/CocosJSGame/frameworks/runtime-src/proj.android'
Ndk build failed!

manifeast.xml

<?xml version='1.0' encoding='UTF-8'?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.cocos2dx.CocosJSGame" android:installLocation="auto" android:versionCode="1" android:versionName="1.0">

    <uses-sdk android:minSdkVersion="15" />
    <uses-feature android:glEsVersion="0x00020000" />

    <application hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">

        
        <meta-data android:name="android.app.lib_name" android:value="cocos2djs" />

        <activity android:configChanges="orientation" android:label="@string/app_name" android:name="org.cocos2dx.javascript.AppActivity" android:screenOrientation="landscape" android:theme="@android:style/Theme.NoTitleBar.Fullscreen">

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
		<activity android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:label="@string/app_name" android:name="com.facebook.FacebookActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" />
			<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id" />
			<provider android:authorities="com.facebook.app.FacebookContentProvider_replace_with_your_app_id_" android:exported="true" android:name="com.facebook.FacebookContentProvider" />
	</application>

    <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:xlargeScreens="true" />
					  
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />  
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />  
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
    
  	<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
 	<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BILLING" /></manifest>

android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := cocos2djs_shared

LOCAL_MODULE_FILENAME := libcocos2djs

LOCAL_SRC_FILES := ../../Classes/protobuf-lite/google/protobuf/io/coded_stream.cc ../../Classes/protobuf-lite/google/protobuf/stubs/common.cc ../../Classes/protobuf-lite/google/protobuf/extension_set.cc ../../Classes/protobuf-lite/google/protobuf/generated_message_util.cc ../../Classes/protobuf-lite/google/protobuf/message_lite.cc ../../Classes/protobuf-lite/google/protobuf/stubs/once.cc ../../Classes/protobuf-lite/google/protobuf/stubs/atomicops_internals_x86_gcc.cc ../../Classes/protobuf-lite/google/protobuf/repeated_field.cc ../../Classes/protobuf-lite/google/protobuf/wire_format_lite.cc ../../Classes/protobuf-lite/google/protobuf/io/zero_copy_stream.cc ../../Classes/protobuf-lite/google/protobuf/io/zero_copy_stream_impl_lite.cc ../../Classes/protobuf-lite/google/protobuf/stubs/stringprintf.cc ../../Classes/runtime/ConnectWaitLayer.cpp ../../Classes/runtime/ConsoleCommand.cpp ../../Classes/runtime/FileServer.cpp ../../Classes/runtime/Landscape_png.cpp ../../Classes/runtime/PlayDisable_png.cpp ../../Classes/runtime/PlayEnable_png.cpp ../../Classes/runtime/Portrait_png.cpp ../../Classes/runtime/Protos.pb.cc ../../Classes/runtime/Runtime.cpp ../../Classes/runtime/Shine_png.cpp ../../Classes/VisibleRect.cpp ../../Classes/AppDelegate.cpp ../../Classes/ConfigParser.cpp hellojavascript/Runtime_android.cpp hellojavascript/main.cpp ../../Classes/PluginFacebookJS.cpp ../../Classes/PluginFacebookJS.hpp ../../Classes/PluginFacebookJSHelper.cpp ../../Classes/PluginFacebookJSHelper.h ../../Classes/SDKBoxJSHelper.cpp ../../Classes/SDKBoxJSHelper.h ../../Classes/PluginIAPJS.cpp ../../Classes/PluginIAPJSHelper.cpp

LOCAL_LDLIBS := -landroid -llog
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes/protobuf-lite $(LOCAL_PATH)/../../Classes/runtime $(LOCAL_PATH)/../../Classes
LOCAL_WHOLE_STATIC_LIBRARIES := PluginFacebook sdkbox PluginIAP android_native_app_glue


LOCAL_STATIC_LIBRARIES := cocos_jsb_static

LOCAL_EXPORT_CFLAGS := -DCOCOS2D_DEBUG=2 -DCOCOS2D_JAVASCRIPT

include $(BUILD_SHARED_LIBRARY)
$(call import-add-path, $(LOCAL_PATH))


$(call import-module,bindings)
$(call import-module, ./sdkbox)
$(call import-module, ./pluginfacebook)
$(call import-module, ./pluginiap)

application.mk

PP_STL := gnustl_static

# Uncomment this line to compile to armeabi-v7a, your application will run faster but support less devices
#APP_ABI

APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -DCC_ENABLE_BULLET_INTEGRATION=1 -std=c++11 -fsigned-char
APP_LDFLAGS := -latomic

USE_ARM_MODE := 1


APP_CPPFLAGS += -DCOCOS2D_DEBUG=1
APP_OPTIM := debug

APP_CPPFLAGS += -DNDEBUG
APP_OPTIM := release

APP_PLATFORM := android-15

i hope helping om this issue please
thanks

What version of the SDKBOX IAP plugin are you using?

@slackmoehrle i am using
installed packages:
v1.4.0.9 facebook
v1.4.0.9 iap

and what command are you using to compile? The log seems to cut that off at the beginning.

Edit, did you also notice this:

 fatal error: string: No such file or directory
 #include <string>

and

PP_STL := gnustl_static

Which should be:

APP_STL := gnustl_static

IAM USING : cocos run -p android

AppDelegate.ccp

#include "AppDelegate.h"

#include "SimpleAudioEngine.h"
#include "jsb_cocos2dx_auto.hpp"
#include "jsb_cocos2dx_ui_auto.hpp"
#include "jsb_cocos2dx_studio_auto.hpp"
#include "jsb_cocos2dx_builder_auto.hpp"
#include "jsb_cocos2dx_spine_auto.hpp"
#include "jsb_cocos2dx_extension_auto.hpp"
#include "jsb_cocos2dx_3d_auto.hpp"
#include "jsb_cocos2dx_3d_extension_auto.hpp"
#include "3d/jsb_cocos2dx_3d_manual.h"
#include "ui/jsb_cocos2dx_ui_manual.h"
#include "cocostudio/jsb_cocos2dx_studio_manual.h"
#include "cocosbuilder/js_bindings_ccbreader.h"
#include "spine/jsb_cocos2dx_spine_manual.h"
#include "extension/jsb_cocos2dx_extension_manual.h"
#include "localstorage/js_bindings_system_registration.h"
#include "chipmunk/js_bindings_chipmunk_registration.h"
#include "jsb_opengl_registration.h"
#include "network/XMLHTTPRequest.h"
#include "network/jsb_websocket.h"
#include "network/jsb_socketio.h"
#include "jsb_cocos2dx_physics3d_auto.hpp"
#include "physics3d/jsb_cocos2dx_physics3d_manual.h"
#include "jsb_cocos2dx_navmesh_auto.hpp"
#include "navmesh/jsb_cocos2dx_navmesh_manual.h"

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
#include "jsb_cocos2dx_experimental_video_auto.hpp"
#include "experimental/jsb_cocos2dx_experimental_video_manual.h"
#include "jsb_cocos2dx_experimental_webView_auto.hpp"
#include "experimental/jsb_cocos2dx_experimental_webView_manual.h"
#endif

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
#include "platform/android/CCJavascriptJavaBridge.h"
#elif (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_MAC)
#include "platform/ios/JavaScriptObjCBridge.h"
#endif

#include "PluginFacebookJS.hpp"
#include "PluginFacebookJSHelper.h"
#include "PluginFacebookJS.hpp"
#include "PluginFacebookJSHelper.h"

USING_NS_CC;
using namespace CocosDenshion;

AppDelegate::AppDelegate()
{
}

AppDelegate::~AppDelegate()
{
    ScriptEngineManager::destroyInstance();
}

void AppDelegate::initGLContextAttrs()
{
    GLContextAttrs glContextAttrs = {8, 8, 8, 8, 24, 8};
    
    GLView::setGLContextAttrs(glContextAttrs);
}

bool AppDelegate::applicationDidFinishLaunching()
{
    // initialize director
    auto director = Director::getInstance();
    auto glview = director->getOpenGLView();
    if(!glview) {
#if(CC_TARGET_PLATFORM == CC_PLATFORM_WP8) || (CC_TARGET_PLATFORM == CC_PLATFORM_WINRT)
        glview = cocos2d::GLViewImpl::create("js");
#else
        glview = cocos2d::GLViewImpl::createWithRect("js", Rect(0,0,900,640));
#endif
        director->setOpenGLView(glview);
}

    // set FPS. the default value is 1.0/60 if you don't call this
    director->setAnimationInterval(1.0 / 60);
    
    ScriptingCore* sc = ScriptingCore::getInstance();
    sc->addRegisterCallback(register_all_cocos2dx);
    sc->addRegisterCallback(register_cocos2dx_js_core);
    sc->addRegisterCallback(jsb_register_system);

    // extension can be commented out to reduce the package
    sc->addRegisterCallback(register_all_cocos2dx_extension);
    sc->addRegisterCallback(register_all_cocos2dx_extension_manual);

    // chipmunk can be commented out to reduce the package
    sc->addRegisterCallback(jsb_register_chipmunk);
    // opengl can be commented out to reduce the package
    sc->addRegisterCallback(JSB_register_opengl);
    
    // builder can be commented out to reduce the package
    sc->addRegisterCallback(register_all_cocos2dx_builder);
    sc->addRegisterCallback(register_CCBuilderReader);
    
    // ui can be commented out to reduce the package, attension studio need ui module
    sc->addRegisterCallback(register_all_cocos2dx_ui);
    sc->addRegisterCallback(register_all_cocos2dx_ui_manual);

    // studio can be commented out to reduce the package, 
    sc->addRegisterCallback(register_all_cocos2dx_studio);
    sc->addRegisterCallback(register_all_cocos2dx_studio_manual);
    
    // spine can be commented out to reduce the package
    sc->addRegisterCallback(register_all_cocos2dx_spine);
    sc->addRegisterCallback(register_all_cocos2dx_spine_manual);
    
    // XmlHttpRequest can be commented out to reduce the package
    sc->addRegisterCallback(MinXmlHttpRequest::_js_register);
    // websocket can be commented out to reduce the package
    sc->addRegisterCallback(register_jsb_websocket);
    // sokcet io can be commented out to reduce the package
    sc->addRegisterCallback(register_jsb_socketio);

    // 3d can be commented out to reduce the package
    sc->addRegisterCallback(register_all_cocos2dx_3d);
    sc->addRegisterCallback(register_all_cocos2dx_3d_manual);
    
    // 3d extension can be commented out to reduce the package
    sc->addRegisterCallback(register_all_cocos2dx_3d_extension);
    
    sc->addRegisterCallback(register_all_PluginFacebookJS);
    sc->addRegisterCallback(register_all_PluginFacebookJS_helper);
    
#if CC_USE_3D_PHYSICS && CC_ENABLE_BULLET_INTEGRATION
    // Physics 3d can be commented out to reduce the package
    sc->addRegisterCallback(register_all_cocos2dx_physics3d);
    sc->addRegisterCallback(register_all_cocos2dx_physics3d_manual);
#endif

#if CC_USE_NAVMESH
    sc->addRegisterCallback(register_all_cocos2dx_navmesh);
    sc->addRegisterCallback(register_all_cocos2dx_navmesh_manual);
#endif

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID || CC_TARGET_PLATFORM == CC_PLATFORM_IOS)
    sc->addRegisterCallback(register_all_cocos2dx_experimental_video);
    sc->addRegisterCallback(register_all_cocos2dx_experimental_video_manual);
    sc->addRegisterCallback(register_all_cocos2dx_experimental_webView);
    sc->addRegisterCallback(register_all_cocos2dx_experimental_webView_manual);
#endif

#if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
    sc->addRegisterCallback(JavascriptJavaBridge::_js_register);
#elif (CC_TARGET_PLATFORM == CC_PLATFORM_IOS || CC_TARGET_PLATFORM == CC_PLATFORM_MAC)
    sc->addRegisterCallback(JavaScriptObjCBridge::_js_register);
#endif

    sc->addRegisterCallback(register_all_PluginFacebookJS);
    sc->addRegisterCallback(register_all_PluginFacebookJS_helper);
    sc->start();    
    sc->runScript("script/jsb_boot.js");
    ScriptEngineProtocol *engine = ScriptingCore::getInstance();
    ScriptEngineManager::getInstance()->setScriptEngine(engine);
    ScriptingCore::getInstance()->runScript("main.js");

    return true;
}

// This function will be called when the app is inactive. When comes a phone call,it's be invoked too
void AppDelegate::applicationDidEnterBackground()
{
    auto director = Director::getInstance();
    director->stopAnimation();
    director->getEventDispatcher()->dispatchCustomEvent("game_on_hide");
    SimpleAudioEngine::getInstance()->pauseBackgroundMusic();
    SimpleAudioEngine::getInstance()->pauseAllEffects();    
}

// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground()
{
    auto director = Director::getInstance();
    director->startAnimation();
    director->getEventDispatcher()->dispatchCustomEvent("game_on_show");
    SimpleAudioEngine::getInstance()->resumeBackgroundMusic();
    SimpleAudioEngine::getInstance()->resumeAllEffects();
}

this is the console error :

Android NDK: WARNING: Unsupported source file extensions in jni/Android.mk for module cocos2djs_shared
Android NDK:   ../../Classes/PluginFacebookJS.hpp ../../Classes/PluginFacebookJSHelper.h ../../Classes/SDKBoxJSHelper.h
make.exe: Entering directory `D:/project/CocosJSGame/frameworks/runtime-src/proj.android'
[armeabi] Compile++ thumb: cocos2djs_shared <= AppDelegate.cpp
[armeabi] StaticLibrary  : libcocos2d.a
[armeabi] Compile++ thumb: cocostudio_static <= WidgetReader.cpp
jni/../../Classes/AppDelegate.cpp:24:43: fatal error: jsb_cocos2dx_physics3d_auto.hpp: No such file or directory
 #include "jsb_cocos2dx_physics3d_auto.hpp"
                                           ^
compilation terminated.
make.exe: *** [obj/local/armeabi/objs/cocos2djs_shared/__/__/Classes/AppDelegate.o] Error 1
make.exe: *** Waiting for unfinished jobs....
make.exe: Leaving directory `D:/project/CocosJSGame/frameworks/runtime-src/proj.android'
Ndk build failed!

I pointed about a change here Did you make that change?

This is hard to read, can you re-format this?

@slackmoehrle check it again , i tried to format it

Is this SDKBOX IAP related?