cocos2d-x 3.0的坑有哪些

问题一:setup.py 之后, ANT文件夹为什么创建不成功?

ANT文件夹要指定到bin以下,NDK和SDK则指定要根文件夹就可以


问题二:cocos run -p android 之后,执行应用的时候,报错:so文件无法载入?

在安卓project文件夹以下的jni里面有个Application.mk,在这个文件中面加入一行 APP_ABI := armeabi armeabi-v7a x86。注意。这样在编译so文件的时候,会有些久


问题三:执行的时候,为什么程序闪退?

这个问题的解决办法比較多,须要先确定安卓project使用的sdk(用eclipse直接能够看到),不要太旧了,如今通常是4.2.2就能够了


问题四:执行在模拟器genymotion上的时候,为什么程序闪退?

据说genymotion仅仅是模拟的是x86芯片的安卓手机,所以在问题二那个里面必须确定加了x86


问题五:用eclipse编译java代码的时候,会发现继承的Cocos2dxActivity.java的onCreate()里面获取metadata为空,为什么?

这个不要紧,它并没有真正去载入so文件。真正载入so文件是在Cocos2dxHelper.java里面的init()方法


问题六:编译so文件的时候报build android project reports error: android/asset_manager.h: No such file or directory。怎么解决?

打开安卓工程文件夹下的project.properties,将 target=android-8改为target=android-9


问题七:编译so文件的时候,改动了安卓project文件夹下的jni里面的Application.mk文件,为什么编译没有起作用?

要又一次关闭命令行,然后又一次打开,再编译,至少mac以下,windows下。还未验证,须要这样做才行


问题八:把别人编译好安卓版本号的project复制到自己的电脑,编译为什么会失败?

这个的原因有2个:

第一:须要删除安卓project文件夹以下的obj文件夹。由于这个里面有编译好的xxx.o文件,这个是别人编译生成了。你自己编译。须要又一次生成(假设安卓project的绝对路径有改动,也须要做这个操作,否则安卓编译只是)

第二:改动安卓project文件夹下local.properties里面sdk.dir的值,为你本地安卓sdk的文件夹


问题九:cocos run的时候,报错:

/cocos2d-x/external/freetype2/prebuilt/android/Android.mk:cocos_freetype2_static: LOCAL_SRC_FILES points to a missing file,(当中freetype2也可能是lua等)是什么原因?

事实上这个问题,并非cocos2dx的坑,而是版本号管理工具svn的坑。它的设置里面忽略了.a文件,导致其它人提交的cocos2dxproject里面/cocos2d-x/external 以下的全部.a文件缺失了。所以,你自己又一次new一个cocos2dxproject,把/cocos2d-x/external 以下的.a文件复制到相应的文件夹然后编译就ok了

原文地址:https://www.cnblogs.com/yangykaifa/p/6985139.html