iOS6 与 iphone5 已经发布一段时间了,那么对于cocos2dx在昨天发布的最新支持的Cocos2d-2.0-x-2.0.3 released版本之前的版本跑在iOS6中会出现两个问题(Himi 都已iphone5 真机调试验证并解决)
首先对于 libcurl.a 无法通过armv7s编译的问题给出解决方案:
下载最新的Cocos2d-2.0-x-2.0.3引擎包,然后找到已经支持armv7s的libcurl.a的文件,路径如下:http://cocos2d-2.0-x-2.0.3/cocos2dx/platform/third_party/ios/libraries/libcurl.a
将其替换你项目的旧libcurl.a即可。
对于iOS6中无法正常游戏横屏的解决方案如下:
1.首先在你项目根目录的ios/AppController.mm 类找到如下代码:
1
2
|
// Set RootViewController to window
[
window
addSubview
:
viewController
.
view
]
;
|
将其替换成如下代码:
1
2
3
4
5
6
7
8
9
10
11
|
// Set RootViewController to window
if
(
[
[
UIDevice
currentDevice
]
.
systemVersion
floatValue
]
&
lt
;
6.0
)
{
// warning: addSubView doesn't work on iOS6
[
window
addSubview
:
viewController
.
view
]
;
}
else
{
// use this mehod on ios6
[
window
setRootViewController
:
viewController
]
;
}
|
2. 然后在你项目根目录的 ios/RootViewController.mm文件中添加如下两个函数:
1
2
3
4
5
6
7
|
-
(
NSUInteger
)
supportedInterfaceOrientations
{
return
UIInterfaceOrientationMaskLandscape
;
}
-
(
BOOL
)
shouldAutorotate
{
return
YES
;
}
|
OK,问题解决。
官方在昨天已经发布的最新的Cocos2d-2.0-x-2.0.3 released版本,已经解决如上问题,针对ios6 和iphone5的。
如果还有项目报错,要检查是否因为第三方SDK类库造成,毕竟iOS6的更新带来各大第三方库的更新。