cocos2dforandroid
1. cocos2dx怎麼編譯到android
如果你用的是windows系統作為開發環境,使用的是cocos2d-x3.2最新版的,你在一開始安裝cocos2d-x的時候,會要求輸入
NDK_ROOT
ANDROID_SDK_ROOT
ANT_ROOT
最新版的cocos2d-x使用了python來進行安裝和編譯程序的,所以你要先在你的windows系統上安裝上python.安裝好之後,下載最新版的cocos2d-x,然後,cd到這個目錄下,你會看到一個有一個setup.py的文件,.py後綴的文件就是python的腳本文件了。是要用python來運行的。如果你安裝好python之後設置好了python的環境變數,這個時候,你只要在命令行里運行:
python setup.py就可以了。
然後你就可以看到要求你輸入的這三個路徑了。
這三個工具的所在路徑,這幾個路徑輸入對了之後,你的cocos2d-x就安裝好了,這個時候,在cmd里創建一個新項目,創建的方法是在命令行里輸入:
cocos new youprojectname -p com.youcom,youprojectname -l cpp -d 你的新建項目所在路徑
然後回車,你就可以看你的的項目會在你的新建項目路徑下有一個youprojectname的文件夾,打開,你就可以看到里邊有各個系統的project文件夾了,還有一個Class和Resources的文件夾。這個時候,你在命令行里cd到你的proj.android文件夾下,使用命令:
python bulid_native.py
就可以對你的安卓新建的helloworld項目進行編譯了。不出意外,要不然一分鍾就編譯好了。會生成一個libcocos2dcpp.so在你的pro.android/libs/armabi的路徑下。然後打開你的ADT,也就是eclipse,進入pro.android目錄,導入android項目到eclipse。這個時候可能會報一個cocos2d-x的lib庫錯誤,只要把cocos2d-x的
cocos2d/cocos/platform/android/java/src
目錄下的文件夾復制到pro.android/src下就可以解決這個問題了。
然後,接上你的android手機,並且在手機中打開開發者模式。點擊程序遠行設置,選擇使用設備運行。在彈出的一個選擇手機設備的框時選擇run,不一會,你的helloworld項目就可以在手機上看到了。
如果要調試,你可以在eclipse中打開logcat,看到cocos2d-x的log輸出信息。
總的來說,android最好的開發環境還是mac系統。因為在mac系統下很多linux命令都可以使用。不像windows系統比較蹩腳。
2. 新手,cocos2dx移植到android平台不知道怎麼導入sqlite3庫
創建windows平台項目 一、 搭建windows開發環境 官網上顯示cocos2d-x支持win7、winxp、vista系統但我只在win7上用過以下說明均是在win7系統上的編譯器使用vs2010。
1、 安裝vs2010 2、 安裝Visual Assist X可選
3、 執行build-win32.bat編譯cocos2d-x
4、 運行cocos2d-x根目錄下的install-templates-msvc.bat將cocos2d-x模板加入vs模板庫。
5、將.\Debug.win32目錄下的所有dll文件拷貝至Windows\system32\ (iconv.dll libcocos2d.dll libcocosDenshion.dll libcuri.dll libEGL.dll libgles_cm.dll libxml.dll pthreadVCE2.dll zlib1.dll )6、 雙擊cocos2d-win32.vc2010.sln進入vs編譯環境
二、 新建win32項目
1、在「解決方案」上單擊右鍵選擇「添加」-〉「新建項目」。
2、選擇「左側Cocos2d-x模板」在右側列表中選擇「Cocos2d-win32 Application」輸入項目名稱「Cocos2dDemo」點「確定」。
3、在彈出的對話框中點擊「下一步」。
4、如果需要使用Box2D引擎則選中否則不要選。點擊「finish」創建成功。
三、 編譯運行
1、右鍵Cocos2dDemo項目選擇「生成」進行編譯。
2、右鍵Cocos2dDemo項目選擇「設為啟動項目」。然後F5或者點擊菜單欄的運行鍵 運行。
四、 創建新的解決方案 新建項目有兩種方式一是直接在cocos2d-x解決方案中添加新項目上面已經介紹過了。當你剛開始接觸cocos2d-x還在嘗試寫demo時用這種方式可以快捷的創建demo而且方便查看例子中的代碼。
另一種方式是創建一個新的解決方案方法如下
1、「文件」-〉「新建」-〉「項目」
2、進入新建項目的窗口選擇「左側Cocos2d-x模板」在右側列表中選擇「Cocos2d-win32 Application」輸入項目名稱「Cocos2dDemo」點「確定」。然後執行「下一步」。
3、使用Box2D引擎則選中否則不要選。點擊「finish」創建成功。
4、單擊左下角的屬性標簽或者選擇「視圖」-〉「屬性管理器」打開屬性管理器
5、在屬性管理器中雙擊「Microsoft.Cpp.Win32.user」彈出屬性頁在裡面設置VC++目錄即可。這樣該設置對所有VC項目都有效見下圖。
6、在「包含目錄」中, 加入下列項目 (D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32)
7、在「庫目錄」中, 加入下列項目(D:\adroid\cocos2d-2.0x-2.0.3\Debug.win32)(發布時用release目錄下的!!)
8、上面的第4、5、6、7條
也可以通過如下方法解決: 定位到%USERPROFILE%\appdata\local\microsoft\msbuild\v4.0可以通過運行或直接在windows資源管理器的地址欄中輸入使用其他文本編輯工具修改Microsoft.Cpp.Win32.user.props或Microsoft.Cpp.X64.user.props文件中的相關欄位。以下是我的文件內容 <IncludePath>D:\android\cocos2d-2.0-x-2.0.3;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\include;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\win32;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32\OGLES;D:\android\cocos2d-2.0-x-2.0.3\external\Box2D;D:\android\cocos2d-2.0-x-2.0.3\CocosDenshion\include;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\platform\third_party\win32;D:\android\cocos2d-2.0-x-2.0.3\cocos2dx\kazmath\include;$(IncludePath)</IncludePath><LibraryPath>D:\android\cocos2d-2.0-x-2.0.3\Debug.win32;$(LibraryPath)</LibraryPath> 第4至8條的作用是加入解決方案所依賴的頭文件和庫文件以保證項目的正常編譯運行。
五、 如何刪除vs里的cocos2d-x模板
1、 打開如下目錄 (Example as default install) 1VS2008: C:\Program Files\Microsoft Visual Studio 9.0\VC\vcprojects\ 2VC2008Express: C:\Program Files\Microsoft Visual Studio 9.0\VC\Express\VCProjects 3VS2010: C:\Program Files\Microsoft Visual Studio 10.0\VC\vcprojects\ 4VC2010Express: C:\Program Files\Microsoft Visual Studio 10.0\VC\Express\VCProjects
2、 刪除此目錄下的 Cocos2d-x文件夾 3、 刪除前綴為 CCAppWiz (0.8.0 or later) 或 CCXAppWiz (0.7.2 or earlier)的文件
將項目由win32移植到android平台
一、 快速搭建android開發環境
1、將伺服器上的eclipse、java、android sdk、android ndk、cygwin、cocos2d-x文件夾拷貝到本地請注意保存的路徑為英文、不包含空格、且不要過長。
2、 運行eclipse添加android-sdk的路徑。(preferences->Android:SDK Location)
3、 添加ADT(Help->Install New Software:Work with)
4、添加java環境變數。 新建變數JAVA_HOME變數值為java目錄的絕對路徑。 在path中添加 %JAVA_HOME%\D:\android\Java\jdk1.6.0_20\bin; %JAVA_HOME%\D:\android\Java\jdk1.6.0_20\jre\bin; D:\android\Java\jre6\bin;
5、運行一次Cygwin.bat
6、修改\cygwin\home\用戶名\.bash_profile文件添加NDK_ROOT=/cygdrive/d/android/android-ndk-r8b export NDK_ROOT
7、 修改\cocos2d-2.0-x-2.0.3\create-android-project.bat中的如下路徑 set _CYGBIN=e:\cygwin\bin set _ANDROIDTOOLS=e:\android\android-sdk\tools set _NDKROOT=e:\android\android-ndk-r8
二、 新建android項目
1、 運行create-android-project.bat創建新的android項目例如項目名稱為Cocos2dDemo。
2、 將win32下完成的.cpp和.h文件拷貝到\Cocos2dDemo\Classes
3、將win32下使用的資源拷貝到\Cocos2dDemo\proj.android\assets
4、將cpp文件的路徑、使用的頭文件的目錄加入到Android.mk文件。
5、打開Cygwincd 到/Cocos2dDemo/proj.android目錄下
6、執行./build_native.sh進行編譯
7、在eclipse中編譯打包。
三、 補充
1、2.0以上版本的引擎基本無法在android模擬器上運行建議在xcode和vs上調試好直接在真機上運行。
2、2.0以上版本的引擎要求android的開發和運行環境都要2.2以上的sdk。
將項目由win32移植到ios 一、 創建ios項目
1、 安裝XCode
2、執行install-templates-msvc.bat將模板添加到XCode
3、打開xcode選擇Create a new Xcode project選擇cocos2d-x模版
4、點擊next填入項目名稱Man
5、找到Man的主項目在這里新建一個iOS文件夾。點擊create創建完成
6、刪除Resource和Classes下的多餘文件Helloworld的代碼和資源
7、右鍵點擊Resource 選擇Add Files to "Man"... 7、將Man主項目文件夾下的Resource文件夾中的資源添加到當前工程。注意選擇create folder references for any added folders只是添加一個引用
8、同樣的方法添加源文件和頭文件到Classes下
9、點擊Run編譯運行
二、 補充
1、Mac 平台的OS X需要10.6及以上版本
2、IOS平台需要4.0及以上版本
3、IOS真機支持iPad 1、iPad 2、iPad 3、 iPhone 3GS、iPhone 4、iPhone 4S、iPhone 5、iphone6、iPod Touch 3 and iPod Touch 4 不支持iPhone and iPhone 3G。
3. cocos2d-x判斷文件是否存在for android
最近在做一款cocos2d-x的游戲,想用access去判斷文件是否存在,在windows和ios平台完全ok,但是android怎麼都不可以。後來發現,原來anroid的資源文件都還在apk中未解壓出來,cocos2d-x針對android時這樣讀取文件的: 1 unsigned char* CCFileUtcocos2d-x判斷文件是否存在for android
4. cocos2d的歷史起源
2005年,Ricardo和朋友萌生了用Python語言
「一星期編寫一個游戲」的想法。在2005~2007年間,他們設計了許多種這樣的游戲。值得注意的是,每次在設計一個新的游戲時,其游戲引擎都是重新開發的。
2008年2月,他們在阿根廷Córdoba市附近的Los
Cocos,決定基於以前的開發經驗,把技術進行整合,並組建了游戲引擎的原始開發團隊。一個月後,第一版的游戲引擎誕生了,根據其誕生地取名為Los
Cocos。一個月後Los
Cocos引擎發布了0.1版,其名稱從Los
Cocos更名為Cocos2D。
團隊將研究成果在PyCon
2008和EuroPython
2008上都做了展示,2008年正值喬布斯公布發展iPhone游戲的想法,因此他們決定抓住商機,在2008年6月宣布跟iPhone平台進行接軌,並在當月就公布了用Objective-C編寫的Cocos2D
for
iPhone
0.1版,它與Python版的Cocos2D擁有相同的設計思路。截止到2008年12月,App
Store上已有超過40個用Cocos2D引擎開發的游戲。
2009年,團隊設計了Cocos2D的世界編輯器Cocos2D-Python,這款所見即所得的編輯器使用起來十分方便。此時,Cocos2D的各種平台、各種編程語言移植版也開始涌現。
ShinyCocos(Ruby
bindings)、Cocos2D-Android(Java
based)、cocosNet(Mono
based)都誕生了。同時,英國的設計大師Michael
Heald為Cocos2D設計了新的LOGO,如圖1所示(此前Cocos2D的LOGO是一個奔跑的椰子)。
cocos2d是一個基於MIT協議的開源框架,用於構建游戲、應用程序和其他圖形界面交互應用。可以讓你在創建自己的多平台游戲時節省很多的時間。
Cocos2D也擁有幾個主要版本,包括Cocos2D-iPhone、Cocos2D-X,以及被社區普遍看好的Cocos2D-HTML5和JavaScript
bindings
for
Cocos2D-X。同時也擁有了非常優秀的編輯器(獨立編輯器),例如SpriteSheet
Editors、Particle
Editors
、Font
Editors
、
Tilemap
Editors。
另外,2012年發布的CocoStudio工具集是開源游戲引擎Cocos2d-x開發團隊官方推出的游戲開發工具,目前已經進入穩定版。CocoStudio吸取了他們自己在游戲製作中的經驗,為移動游戲開發者和團隊量身定做,旨在降低游戲開發的門檻,提高開發效率,同時也為Cocos2D-X的進一步發展打下基礎。
5. Cocos2d3.10跨平台Android生成的APK文件,一點擊直接黑屏,然後閃退,是怎麼回事
在studio上建立的新項目在win上可以運行,但是在手機上卻直接閃退。但是又不知道問題在哪裡,最後把項目在eclipse中打開之後,發現報如下錯:
Failed to load D:\Android\sdk\build-tools\26.0.0-preview\lib\dx.jar
具體原因我也不清楚,然後在網上找了好久,最後找到一個
解決辦法:
右鍵選擇剛剛建好的項目,選擇Run as--Android Application,第一次運行控制台可能會報錯: Failed to load D:\Android\sdk\build-tools\26.0.0\lib\dx.jar ,這個時候需要到android-sdk-windows\build-tools目錄下,找到26.0.0-preview包,將其移走(因為dx.jar位於該目錄下),重啟Eclipse即可。(鏈接:http://www.cnblogs.com/liuyouchun/p/6665393.html)
2.另外在跟新sdk的時候也遇到了
6. cocos2dx-lua 安卓返回鍵監聽問題,求助怎麼解決
創建工程的時候,裡面有寫好的,貼個我們項目的 function BaseScene:onEnter() self.layer:onEnter() if device.platform == "android" then -- avoid unmeant back self:performWithDelay(function() -- keypad layer, for android local layer = display.newLayer() layer:addKeypadEventListener(function(event) if event == "back" and not self.layer:getChildByTag(44444444) then Msg.new("是否退出遊戲?",handler(app,app.exit),function()end):setTag(44444444) end end) self:addChild(layer) layer:setKeypadEnabled(true) end, 0.5) end end 退出時加了一個彈出窗時候退出~~
7. cocos2d-x android怎麼真機調試
1、這個cocos自身已經做得非常自動化,在cocos引擎文件夾下雙擊一個setup.py,設置好ANDROID_SDK_ROOT,NDK_ROOT,ANT_ROOT基本就可以建立好編譯環境,當然別忘了setup是用Python來運行的。還用不懂就到網上找或者看cocos目錄下的README.md文件。
2、這里最好把NDK路徑加入到環境變數的系統路徑(即Path環境變數中)。因為本文會頻繁用到ndk-build和ndk-gdb.py(和ndk-gdb同個東西,但是也有點點區別,下文會提及)命令,把ndk路徑加入到系統路徑中也是為了好調取這兩個命令