“语义错误:使用不同类型重新定义 '__ccContentScaleFactor'"在 Cocos2D v2 中

quot;Semantic error: Redefinition of #39;__ccContentScaleFactor#39; with a different typequot; in Cocos2D v2(“语义错误:使用不同类型重新定义 __ccContentScaleFactor在 Cocos2D v2 中)

本文介绍了“语义错误:使用不同类型重新定义 '__ccContentScaleFactor'"在 Cocos2D v2 中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我开发了一个新游戏,它在我的真实 ios 设备甚至模拟器上运行得非常好,但是当我决定将它提交到 AppStore 时,它​​在这一行出现错误.

i have developed a new game and it is running perfectly fine on my real ios devices and even on simulators but when i decided to submit it to AppStore it is giving error on this line.

extern CGFloat  __ccContentScaleFactor;

错误是

cocos2d/Platforms/iOS/CCDirectorIOS.h:102:16: Redefinition of '__ccContentScaleFactor' with a different type: 'CGFloat' (aka 'double') vs 'float'

谁能帮我解决这个问题,我只是将 xcode 更新到 5.1.谢谢

can anyone please help me with this issue i just update xcode to 5.1. thanks

推荐答案

重要更新:

<小时>

Cocos2D v2.2 已修复 64 位发布.

我强烈建议每个 cocos2d v2.x 开发者升级到这个版本,而不是应用下面的快速修复.cocos2d v2.0 和 v2.1 中潜伏着许多 64 位兼容性问题,它们可能会在奇怪的错误、视觉故障或更多编译错误中抬起头来——具体取决于应用程序.

Important Update:


Cocos2D v2.2 with 64-Bit fixes has been released.

I strongly suggest every cocos2d v2.x developer to upgrade to this version rather than applying the quick fix below. There are many 64-Bit compatibility issues lurking in cocos2d v2.0 and v2.1, which may rear their ugly head in weird bugs, visual glitches or more compile errors - depending on the app.

从 2015 年 2 月开始,Apple 将仅接受包含 64 位二进制文​​件的新应用和应用升级.因此强烈建议让您的代码和 cocos2d 在 64 位设备上正常工作.

Beginning in February 2015 Apple will only accept new apps and app upgrades which include 64-Bit binaries. So it's highly recommended to get your code and cocos2d to a proper working state on 64-bit devices.

编辑编译器抱怨的行,将 CGFloat 更改为 float 使其显示为:

Edit the line the compiler complains about, change CGFloat to float so that it reads:

extern float  __ccContentScaleFactor;

但这表明 xcode 正在构建 arm64 切片.对于 cocos2d-iphone v2.x,最好从支持的架构中禁用/移除 arm64,因为 Cocos2D v2.1 及更早版本不完全兼容 64 位设备!

However this indicates that xcode is building the arm64 slice. For cocos2d-iphone v2.x it is best to disable/remove arm64 from supported architectures because Cocos2D v2.1 and earlier are not fully compatible with 64bit devices!

运行 Cocos2D v2.1 或更早版本的应用程序编译为 64 位代码并在 64 位设备(iPhone 5S 和更新版本)上运行时,可能会出现奇怪的错误和副作用.在 iOS 模拟器上可能不会出现这些问题.

There can be weird bugs and side-effects when running a Cocos2D v2.1 or earlier app compiled as 64-bit code and running on a 64-Bit device (iPhone 5S and newer). These issues may not occur on the iOS Simulator.

这篇关于“语义错误:使用不同类型重新定义 '__ccContentScaleFactor'"在 Cocos2D v2 中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:“语义错误:使用不同类型重新定义 '__ccContentScaleFactor'"在 Cocos2D v2 中