最近在接渠道sdk,因为之前没有做过lua项目sdk的接入,所以碰到lua中想调用安卓原生的代码的时候麻了爪,在网上大概看了一下好像通过java和c++交互然后c++再进行和lua的交互这样虽然麻烦了点不过还是可以实现的。java与c++的交互这里不做解释可以自己去百度一下jni的用法,今天只分享一下自己在lua中调用c++的过程。
首先要先写好自己的c++代码,放到项目的Class下边,然后到项目根目录下的frameworks\cocos2d-x\tools\tolua下随便找一个ini文件修改相应的配置,大概像下边这样
[SdkManager] ------------------- 此处为registe到lua的时候需要用
prefix = SdkManager ----------------- 和上边哪个写一样就好
prefix = SdkManager ----------------- 和上边哪个写一样就好
target_namespace = zx ------------------ 命名空间 在lua中调用的时候要通过这个调用
android_headers = -I%(androidndkdir)s/platforms/android-14/arch-arm/usr/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/libs/armeabi-v7a/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.7/include -I%(androidndkdir)s/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi-v7a/include -I%(androidn