cocos2d_x 問題彙總

1.生成so文件時,報「No rule to make target 」錯誤html

解決方法:將.\xxx[appname]\proj.android\obj\local\armeabi\objs中的文件所有刪除便可java

 

2.生成so文件時,報"multiple definition"錯誤linux

解決方法:檢查Andriod.mk文件是否寫了多遍同一個cpp文件android

 

3.cocos2d_x 多線程頭文件路徑bash

在cocos2dx   pthread.h的位置是在 include「pthread/pthread.h」這樣再win32下的確能夠編譯可是要交叉編譯到安卓的時候就出錯了,緣由是linux自帶pthread可是路徑pthread/pthread.h 找不到。網絡

解決方法:把  include「 pthread/pthread.h  改成  include「 pthread.h  便可經過編譯。

 

4.Andriod 聯網模塊連不上網多線程

解決方法:在AndroidManifest.xml文件中添加網絡權限<uses-permission android:name="android.permission.INTERNET"></uses-permission>app

 

5.移植屏幕自適應eclipse

解決方法:在方法bool AppDelegate::applicationDidFinishLaunching()中添加編輯器

pEGLView->setDesignResolutionSize(800, 480, kResolutionExactFit);

800x400表示實際背景圖片的大小

 

6.在進行Cocos2d-x開發Android遊戲的時候,常常會遇到的一個問題就是返回鍵和菜單鍵的處理!

解決方法:

1.在layer中調用:

[java]  view plain copy
 
  1. setKeypadEnabled(true);  


2.在layer中重寫如下兩個方法:

 

[html]
 
  1. virtual void keyMenuClicked();  
[html]
 
    1. virtual void keyBackClicked();  

 

7.cocos2dx API文檔 http://www.cocos2d-x.org/wiki/Reference

 

8.cocos2d-x 字體描邊CCRenderTexture glBlendFunc

http://blog.sina.com.cn/s/blog_a502f1a30101hvh7.html

 

9.Jni完整教程

http://jiangwenfeng762.iteye.com/blog/1500131

 

10.Andriod相關內容

http://secyaher.blog.163.com/blog/static/3895577201111275423382/

 

11.在Andriod線程中,使用handler句柄報錯

必須添加Looper.prepare Looper.loop

 

12.Andrord sd文件存儲

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

FILE *fp = fopen("/mnt/sdcard/xxx.xxx", "rb+");
//此時就能夠了,切記根目錄前綴:/mnt/sdcard/ 指代sd卡的根目錄

 

13.Tile map 繪製的地圖有黑線

在AppDelegate::applicationDidFinishLaunching方法中添加
pDirector->setProjection(kCCDirectorProjection2D);
最後添加便可

 

14.cocos2d-2.1rc0-x-2.1.2 到 cocos2d-x-2.2.1移植

基本都同樣,但proj.android中的main.cpp不同了,須要注意

 

15.eclipse 移植cocos2d-x工程 報錯: Program "bash" is not found in PATH

一、把cygwin/bin加入系統環境變量Path下

二、右擊工程-->properties-->C/C++ Build  確認右邊視圖選項Build command:ndk-build

三、右擊工程-->properties-->C/C++ Build -->ToolChain Edit
   確認右邊視圖的選項:Current toolchain:No Toolchain
                                           Current Builder:Android Builder    (若是仍是不行,能夠換成Gnu Make Builder試試)

 

16.cocoStudio 的UI編輯器內存泄露,添加代碼

GUIReader::shareReader()->purgeGUIReader();
DictionaryHelper::shareHelper()->purgeDictionaryHelper();
ActionManager::shareManager()->purgeActionManager();

  

17.CCClippingNode 不工做

for iOS:
in AppController replace the gl-view creation with:


    EAGLView *__glView = [EAGLView viewWithFrame: [window bounds]
                                     pixelFormat: kEAGLColorFormatRGBA8
                                     depthFormat: GL_DEPTH24_STENCIL8_OES
                              preserveBackbuffer: NO
                                      sharegroup: nil
                                   multiSampling: NO
                                 numberOfSamples: 0];


for Android:
in game activity:


    public Cocos2dxGLSurfaceView onCreateView() {
        Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this);
        glSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 16, 8);
        return glSurfaceView;
    }

  

 

 

 

待續

相關文章
相關標籤/搜索