------------------------
cocos2d-2.1beta3-x-2.1.0
android-ndk-r8c
------------------------
1.设置环境变量
cocos2d-2.1beta3-x-2.1.0\create-android-project.bat
set _CYGBIN=E:\software\dev\Android\cygwin\bin
set _ANDROIDTOOLS=E:\software\dev\Android\android-sdk-windows\tools
set _NDKROOT=E:\software\dev\Android\android-ndk-r8c
2.在新生成工程中设置环境变量
cocos2d-2.1beta3-x-2.1.0\Cocos2dxTest\proj.android
export NDK_ROOT=/cygdrive/e/software/dev/Android/android-ndk-r8c/
3.安装GNU make
Cygwin_setup.exe-》搜索make-》选择GNU make安装
4.权限错误
cc1plus.exe: fatal error: jni/hellocpp/main.cpp: Permission denied
工程目录-》右键-》属性-》安全-》所有用户-》完全控制-》高级-》更改权限-》使用可从此对象继承的权限替换所有子对象权限
5.引用cocos2d-2.1beta3-x-2.1.0\cocos2dx\platform\android\java错误“Cocos2dxActivity cannot be resolved to a type ”
cocos2d-2.1beta3-x-2.1.0\Cocos2dxTest\proj.android\project.properties中会记录引用的资源:android.library.reference.1=../../cocos2dx/platform/android/java
可以把cocos2d-2.1beta3-x-2.1.0\cocos2dx\platform\android\java当做一个工程导入eclipse和Cocos2dxTest并列
6.OpenGL ES版本问题
系统方面,从Android 2.2开始支持OpenGL ES 2.0,但还需要硬件支持。
OpenGL ES 2.0:cocos2d-2.1beta3-x-2.1.0
OpenGL ES 1.1:cocos2d-1.0.1-x-0.13.0-beta
---------------------------
cocos2d-1.0.1-x-0.13.0-beta
android-ndk-r8c
---------------------------
7.资源错误
Description Resource Path Location Type
error: Error: No resource found that matches the given name (at 'icon' with value '@drawable/icon'). AndroidManifest.xml /MyCocos2dx line 9 Android AAPT Problem
AndroidManifest.xml中
<application android:label="@string/app_name" android:icon="@drawable/icon">
改为
<application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
8.代码修改后每次都全部编译问题
android-ndk-r8c\build\core\definitions.mk
大约289行,$1: $$(__ndk_file_dir),改为:$1: | $$(__ndk_file_dir),r8c版本
9.win7下重新编译后assets目录下的文件访问权限问题
修改build_native.sh,将以下内容注释掉,然后从Resources目录手工复制相关资源到assets目录。
# make sure assets is exist
#if [ -d $GAME_ANDROID_ROOT/assets ]; then
# rm -rf $GAME_ANDROID_ROOT/assets
#fi
#mkdir $GAME_ANDROID_ROOT/assets
# copy resources
#for file in $RESOURCE_ROOT/*
#do
# if [ -d $file ]; then
# cp -rf $file $GAME_ANDROID_ROOT/assets
# fi
#
# if [ -f $file ]; then
# cp $file $GAME_ANDROID_ROOT/assets
# fi
#done
10.模拟器经常连不上
Device Disconnected
window -> Show Views -> device -> view menu -> Reset adb
11.get data from file(assets/) failed
cocos2d-1.0.1-x-0.13.0-beta的bug
const char* CCFileUtils::fullPathFromRelativePath(const char *pszRelativePath, ccResolutionType *pResolutionType) {
return "";
}
改为
const char* CCFileUtils::fullPathFromRelativePath(const char *pszRelativePath, ccResolutionType *pResolutionType) {
return pszRelativePath;
}
12.新增一个类,报undefined reference to...错误
cocos2d-1.0.1-x-0.13.0-beta\MyProject\android\jni\Android.mk
增加新加的类
13.读取xml文件
参考Himi的xml读取方案。但是依赖于cocos2d-x新版本,如果使用cocos2d-1.0.1-x-0.13.0-beta,需要修改如下文件:
E:\software\dev\cocos2d\cocos2d-1.0.1-x-0.13.0-beta\cocos2dx\include\CCString.h
增加以下方法:
/** get the C string */
const char* getCString() const
{
return m_sString.c_str();
}
14.触摸报错
error: 'class cocos2d::CCTouch' has no member named 'view'
CCPoint location = touch->locationInView(touch->view());
改为
CCPoint location = touch->locationInView();
15.com.cocos2dx.lib关于cocos2dx 2.0.3 及以上找不到com.cocos2dx.lib库的解决
参考:http://www.jesusbosch.com/2012/06/how-to-set-up-android-and-win32-cocos2d.html
http://www.raywenderlich.com/11283/cocos2d-x-for-ios-and-android-getting-started
http://blog.csdn.net/snakewarhead/article/details/8223169
http://cn.cocos2d-x.org/bbs/forum.php?mod=viewthread&tid=10043
http://www.cnblogs.com/over140/archive/2010/08/06/1793264.html
http://www.cocos2d-x.org/boards/6/topics/9944
http://blog.molioapp.com/2011/11/openfeint-and-admob-integrated-with.html
支持多分辨率:http://www.himigame.com/android-game/799.html
Himi xml:http://www.himigame.com/iphone-cocos2dx/694.html