Cocos2d-x 在 Android Studio 上 - 未列出新的 CPP 文件

Cocos2d-x on Android Studio - New CPP files are not listed

Android Studio 2.3.3

Cocos2d-x 3.15.1

第一次接触Cocos2d-x Game Engine,遇到了很多问题。我第一次尝试 Android Studio 的最新 NDK 但是当我尝试编译我的 NDK 版本时有一个错误项目:cocos compile -p android --android-studio 所以我将 NDK 版本更改为 13b.

当我更改为 NDK 13b 时,编译顺利完成并且 android studio 成功构建了我的项目,但是当我尝试创建 new CPP FILE or JAVA FILE or anything inside the 类 folder, Android Studio 除了第一个,它不显示任何东西CPP FILES,然后我又把NDK改成了14b,我也遇到了同样的问题。

我的光盘上存在 CPP 文件,但 Android Studio 无法检测到我创建的文件。

我找到了解决方案,解决方案是每次在 类 文件夹中添加文件时使用通配符消除和修改 Android.mk

像这样:

...
LOCAL_MODULE_FILENAME := libMyGame

LOCAL_SRC_FILES_JNI_PREFIXED := \
    $(wildcard $(LOCAL_PATH)/../../../Classes/*.cpp) \
    $(wildcard $(LOCAL_PATH)/../../../Classes/**/*.cpp) \
    $(wildcard $(LOCAL_PATH)/../../../Classes/**/**/*.cpp)  

LOCAL_SRC_FILES := hellocpp/main.cpp \
                   $(LOCAL_SRC_FILES_JNI_PREFIXED)
...

如果添加新的cpp文件,需要更新Android.mk

此外,请 运行 Android Studio 菜单的“Build > Refresh Linked C++ Projects”。

如果找到另一种添加所有文件的解决方案,无需修改 Android.mk 每次在 类 文件夹中添加文件。

    LOCAL_SRC_FILES := hellocpp/main.cpp

    FILE_LIST := $(wildcard $(LOCAL_PATH)/../../../Classes/*.cpp)
    LOCAL_SRC_FILES += $(FILE_LIST:$(LOCAL_PATH)/%=%)

    LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../Classes

要从另一个文件夹添加其他 cpp 文件,您可以使用 (LOCAL_SRC_FILES +=) 只需根据您的文件夹更改目录名称。

    FILE_LIST := $(wildcard $(LOCAL_PATH)/../../../DirectoryName/*.cpp)
    LOCAL_SRC_FILES += $(FILE_LIST:$(LOCAL_PATH)/%=%)