VS2012+win32,下运行正常android也能打包,添加新类后打包APK报错

我在运行及android下打包正常的项目基础上新建一个类lzqmenu,是和HellWordScene一样的,只是在AppDelegate.cpp中把auto scene = HelloWorld::createScene();改成auto scene=lzqmenu::createScene();在proj.android\jni下的 Android.mk文件中的LOCAL_SRC_FILES := hellocpp/main.cpp
…/…/Classes/AppDelegate.cpp
…/…/proj.win32/lzqmenu.cpp
…/…/Classes/HelloWorldScene.cpp

也试过把lzqmenu.h,lzqmenu.cpp复制到Classes下,把 …/…/proj.win32/lzqmenu.cpp \改成 …/…/Classes/lzqmenu.cpp \后报错:jni/…/…/Classes/AppDelegate.cpp:46:13: error: use of undeclared identifier ‘lzqmenu’

AppDelegate.cpp有写#include"lzqmenu.h"吗?

有写,不然WIN32也通不过撒

头文件android编译过程没找到,。mk文件还需要配置

把类的cpp和h拷到classes目录,在VS中重新引用下。先保证VS能正常编译过。

修改Android.mk文件,

…/…/Classes/AppDelegate.cpp
…/…/Classes/lzqmenu.cpp
…/…/Classes/HelloWorldScene.cpp

运行Cocos compile -p android。再试试。

谢谢大家,我是在VS编译通过后,再拷贝类的cpp和h拷到classes目录,在AppDelegate.cpp里,把#include "lzqmenu.h"放在最上面,希望对有同问题的朋友有所帮助

:14: Android.mk 一次修改万年使用的。:875:

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)

LOCAL_MODULE := cocos2dcpp_shared

LOCAL_MODULE_FILENAME := libcocos2dcpp

#traverse all the directory and subdirectory
define walk
(wildcard (1)) (foreach e, (wildcard (1)/*), (call walk, $(e)))
endef

#traverse Classes Directory
ALLFILES = (call walk, (LOCAL_PATH)/…/…/Classes)

FILE_LIST := hellocpp/main.cpp
FILE_LIST += (filter %.cpp, (ALLFILES))
FILE_LIST += (filter %.c, (ALLFILES))

FILE_INCLUDES := (shell find (LOCAL_PATH)/…/…/Classes -type d)

#source file will be compiled
LOCAL_SRC_FILES := (FILE_LIST:(LOCAL_PATH)/=)

LOCAL_C_INCLUDES := (LOCAL_PATH)/../../../external/Box2D/ \ (FILE_INCLUDES)
(LOCAL_PATH)/../../cocos2d/extensions \ (LOCAL_PATH)/…/…/cocos2d/cocos/ui
$(LOCAL_PATH)/Classes
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static

LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static

LOCAL_WHOLE_STATIC_LIBRARIES += cocosbuilder_static

LOCAL_WHOLE_STATIC_LIBRARIES += spine_static

LOCAL_WHOLE_STATIC_LIBRARIES += cocostudio_static

LOCAL_WHOLE_STATIC_LIBRARIES += cocos_network_static #网络

LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static #扩展库

include $(BUILD_SHARED_LIBRARY)

(call import-module,.) (call import-module,audio/android)

python ${ProjDirPath}/build_native.py -b release

$(call import-module,Box2D)

$(call import-module,editor-support/cocosbuilder)

$(call import-module,editor-support/spine)

$(call import-module,editor-support/cocostudio)

$(call import-module,network)

$(call import-module,extensions)

顶一个!这个很赞,这下省心了!

win下搜索文件夹的命令是什么?
(shell find (LOCAL_PATH)/…/…/Classes -type d)会报参数错误。