Cocos2dx Android:从文件(资产/ *)获取数据失败

时间:2012-09-14 03:33:10

标签: android eclipse android-image cocos2d-x

您需要在Cocos2dx Android项目中添加图像(在Eclipse中)?

他们当前位于'Resources'文件夹中,就像提到的on Ray Wenderlich's blog一样,但是当我在模拟器中运行它时出现错误:“从(assets / myFileName)获取数据失败” 。我还将这些图像添加到Eclipse中的assets文件夹中,它没有任何区别。

它在iOS方面运行良好。

有什么建议吗?

6 个答案:

答案 0 :(得分:3)

我相信你需要在运行Eclipse之前在你的android文件夹中运行./build_native.sh。

答案 1 :(得分:1)

因此实际问题不在于构建或复制过程。

我有一个我制作的类,如果它是iphone,ipad等,它会将正确的前缀应用于CCSprite。我对CCMenuItemImage源代码进行了一些更改以合并此文件,但iOS和Android Cocos2dx文件是独立的,所以Android项目没有使用新代码,并没有添加正确的前缀,所以它没有找到图像。

谢谢大家的答案!

答案 2 :(得分:0)

您无需添加到assets文件夹,当您运行./build_native.sh时,它将自动添加到assets文件夹。检查它是否成功构建没有任何错误,然后导入到eclipse。

答案 3 :(得分:0)

这是我面临的同样问题。实际上我通过这样做解决了这个问题:

  1. 从cygwin运行./build_native.sh。此步骤将移动android项目所需的资产。别忘了chmod 777 -R首先到你的cocos项目,我有一个错误,因为build_native.sh没有移动资产的权限。
  2. 在eclipse中,按照tutorial再次构建它。在该链接中,它显示了如何在eclipse中构建cpp源代码+ cocos2d。
  3. 以Android应用程序运行,然后生成.apk。

答案 4 :(得分:0)

尝试使用

const char *path = CCFileUtils::sharedFileUtils()->fullPathFromRelativePath("testimage.png");

在给cocos2d-x你的文件名之前。

答案 5 :(得分:0)

我正在使用Cocos2d-JS版本。

如果你在project.json中导入了一个空的JS文件,你将在Android上遇到这个错误。

在这种情况下,解决方案是不要导入任何空的JS文件。