cocos2dx项目接入爱贝第三方支付sdk遇到的问题及解决方案

1.今天接入cocos2dx项目爱贝sdk,再点击计费点,游戏崩溃终止,我一直以为是自己的支付接口接的不对,一直修改,但是毫无进展,

我联系了一下爱贝客服,爱贝客服那边帮我想了个办法,pay_proxy_res工程不在作为引用,而是把pay_proxy_res工程的libs和res下的所有

内容copy到我的项目中,我试着照做,但还是不可以,但是这时候我发现了问题,大家都知道cocos2dx在移植过程中会产生.so文件的,但是

我一查看pay_proxy_res里面的.so文件,在我的项目中是没有的,那么问题就在这里,找到问题以后,我天真的以为把那边的.so文件copy过来

就好,但是事与愿违,游戏生成apk的时候,那几个.so文件又消失了,那么答案还是肯定的,游戏还是会崩溃的。

2.重点来了,下面我就讲一下我的解决方案:(我还是用引入pay_proxy_res的方法)

a.在项目的jni文件下建立一个文件夹,随便什么名字都可以(下面会用到),我用的名字是prebuilt,

b.把pay_proxy_res工程下libs/armeabi文件夹下的4个.so文件copy到你项目的prebuilt下面

c.在Android.mk添加

include $(CLEAR_VARS)
LOCAL_MODULE := entryex
LOCAL_SRC_FILES := prebuilt/libentryex.so
include $(PREBUILT_SHARED_LIBRARY)


include $(CLEAR_VARS)
LOCAL_MODULE := fastpay
LOCAL_SRC_FILES := prebuilt/libfastpay.so
include $(PREBUILT_SHARED_LIBRARY)


include $(CLEAR_VARS)
LOCAL_MODULE := litedes
LOCAL_SRC_FILES := prebuilt/liblitedes.so
include $(PREBUILT_SHARED_LIBRARY)


include $(CLEAR_VARS)
LOCAL_MODULE := usedes
LOCAL_SRC_FILES := prebuilt/libusedes.so
include $(PREBUILT_SHARED_LIBRARY)

d.在你的启动类里面添加

static {

System.loadLibrary("entryex");
System.loadLibrary("fastpay");
System.loadLibrary("litedes");
System.loadLibrary("usedes");
}

e.运行一下,发现还是有问题对吗,好的,那是因为引用的工程里面还存在着那4个.so文件,与你项目中的重复,发生冲突,知道了

原因,那就好办了,把那个引入工程里的4个.so文件删掉就好了,再次运行,你会感觉这feel倍儿爽

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...