【发布时间】:2014-02-20 03:04:35
【问题描述】:
我使用 Eclipse 在一个单独的项目上创建了一个活动。当我将它导入我的 cocos2d-x android 项目并使用python build_native.py(基本上是使用 NDK 构建应用程序)和ant debug 构建项目时,我收到一条错误消息:
error: package R does not exist
指向线:
setContentView(R.layout.some_activity);
^
我已经在我的 cocos2d-x 项目中添加了res/layout/some_activity.xml 以及清单条目:
<application
<!-- <application> tag info --> >
<activity
<!-- cocos2d-x native activity --> >
</activity>
<!-- the activity I imported -->
<activity
android:name="com.mycompany.myapp.SomeActivity"
android:label=""
android:theme="@android:style/Theme.Dialog"
android:excludeFromRecents="true"
android:noHistory="true"
/>
</application>
我还在src 文件夹中复制了所需的*.java 文件(在完全相同的文件夹结构中)。
我还尝试手动清理(通过删除bin、gen、obj 和assets 文件夹)并通过ant clean。我没有使用 Eclipse 构建,仅从命令行构建。
编辑:我还尝试在SomeActivity.java 上添加import com.mycompany.myapp.R; 和import com.mycompany.R;,但仍然没有解决。
如何解决此错误?我还缺少其他步骤吗?
【问题讨论】:
-
您的 xml 文件中可能存在一些错误。如果是这样,则无法生成 R.java
-
你能告诉我 XML 中的一些错误吗?我很确定语法是正确的。源项目和cocos2d-x项目的唯一区别是,在源项目中,main activity和
SomeActivity在同一个包中,而在cocos2d-x项目中,它们在不同的包中。 -
Eclipse 可以帮你自动检测语法错误
-
我在 Eclipse 中进行了活动(在一个单独的项目中),当我完成它时,我将它导入到我的 cocos2d-x 项目中(我不使用 Eclipse),所以我我确定我的 XML 语法正确。
标签: android android-ndk cocos2d-x