I'm using Sdkbox Vungle v1.2.0.1 with Cocos2d-x v3.2. I successfully integrated Vungle and ran it on iOS. I use method sdkbox::PluginVungle::isCacheAvailable()
to check if Vungle video is available or not. But it cannot run on android. The log says INF: Failed to find method id of isCacheAvailable
. I think this issue happens because it cannot read the Vungle SDK library on Android.
I've done everything according to Vungle integration document and my Android.mk is like this:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/extensions)
$(call import-add-path,$(LOCAL_PATH))
LOCAL_MODULE := cocos2dcpp_shared
LOCAL_MODULE_FILENAME := libcocos2dcpp
FILE_LIST := $(wildcard $(LOCAL_PATH)/../../Classes/*.cpp)
LOCAL_SRC_FILES := cpp/main.cpp \
cpp/ProjectUtilsAndroid.cpp
LOCAL_SRC_FILES += $(FILE_LIST:$(LOCAL_PATH)/%=%)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
$(LOCAL_PATH)/../../cocos2d/extensions \
$(LOCAL_PATH)/../../cocos2d/external/rapidjson \
$(LOCAL_PATH)/../../cocos2d/cocos/editor-support/spine \
$(LOCAL_PATH)/../../cocos2d/cocos/ui \
$(LOCAL_PATH)/../../cocos2d/cocos/network \
LOCAL_CFLAGS += -Wno-psabi -D CLASSIC
LOCAL_CPPFLAGS += -std=c++11
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static
LOCAL_WHOLE_STATIC_LIBRARIES += spine_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_ui_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_network_static
LOCAL_STATIC_LIBRARIES += android_native_app_glue
LOCAL_LDLIBS += -landroid
LOCAL_LDLIBS += -llog
LOCAL_STATIC_LIBRARIES += PluginVungle
LOCAL_STATIC_LIBRARIES += sdkbox
include $(BUILD_SHARED_LIBRARY)
$(call import-module,cocos/ui)
$(call import-module,cocos/network)
$(call import-module,extensions)
$(call import-module,editor-support/cocosbuilder)
$(call import-module,editor-support/spine)
$(call import-module,sdkbox)
$(call import-module,pluginvungle)
$(call import-module,.)
Could you please help me figure out exactly which part am I missing?
EDIT:
The onVungleCacheAvailable()
is triggered but whenever I called sdkbox::PluginVungle::isCacheAvailable()
, it always return false.
It is a bug in sdkbox, and it was fixed in the 1.2.5 version. You can download the 1.2.5 version here