導航:首頁 > 操作系統 > cocos2dx調試android

cocos2dx調試android

發布時間:2022-09-21 07:24:49

1. 新手,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) 1VS2008: C:\Program Files\Microsoft Visual Studio 9.0\VC\vcprojects\ 2VC2008Express: C:\Program Files\Microsoft Visual Studio 9.0\VC\Express\VCProjects 3VS2010: C:\Program Files\Microsoft Visual Studio 10.0\VC\vcprojects\ 4VC2010Express: 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、打開Cygwincd 到/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。

2. 如何在eclipse下調試cocos2dx

cocos2dx程序移植到eclipse
必要組件:
1.macos gcc編譯器,若沒有,在xcode->preference->downloads中下載command line tools(在命令行下輸入g++,若顯示command not found 則沒有)
2. android sdk :本機目錄為 /Users/zhangyao/IDE/android-sdk-macosx
3.cocos2d-x:本機目錄為 /Users/zhangyao/Desktop/cocos2d-x-2.1.1
4.ndk 本機目錄為 /Users/zhangyao/Desktop/android-ndk-re8
地址:http://developer.android.com/tools/sdk/ndk/index.html
選擇macos 64bit
5.cdt 若沒有 則在help->install new software中下載
Programming Languages->C/C++ Development Tools.

1.配置環境變數
終端中 輸入 sudo vi ~/.bash_profile
輸入i進入編輯環境 輸入以下內容:
export COCOS2DX_ROOT=~/Desktop/cocos2d-x-2.1.1/
export NDK_ROOT=~/Desktop/android-ndk-r8e/
export ANDROID_SDK_ROOT=~/IDE/android-sdk-macosx/
export PATH=$PATH:$ANDROID_SDK_ROOT/tools
按下esc鍵退出編輯
輸入:wq保存退出

2.在eclipse中創建項目(設項目名稱為test)
cd Desktop/cocos2d-x-2.1.1
./create-android-project.sh
輸入工程標志符com.cwa.test
選擇android版本號:6
輸入工程名:test
cd test/proj.android/
./build_native.sh

打開eclipse,選擇file->new->other->Android->Android Project from Existing code->next->Browse->選擇目錄至cocos2d-x-2.1.4/test/project.android->finish

選擇file->new->other->c/c++->convert to a c/c++ Project->next->選擇上面建好的工程->finish

至此工程test創建完成
3.配置工程屬性
右鍵工程名->properties
3.1 c/c++ Build 把use default build command的勾去掉,在build command中寫(其中test為工程名):
bash ${workspace_loc:/test}/build_native.sh NDK_DEBUG=1 V=1

3.2 點開c/c++ Build 選擇Environment->add
name:NDK_ROOT
value:/Users/zhangyao/Desktop/android-ndk-r8e

3.3 c/c++ General->Path and Symbols->add
/Users/zhangyao/Desktop/android-ndk-r8e/sources/cxx-stl/system/include

全部修改完,點OK
在GUN C++中加入
/Users/zhangyao/Desktop/cocos2d-x-2.1.1/cocos2dx/include
/Users/zhangyao/Desktop/android-ndk-r8e/platforms/android-14/arch-arm/usr/include

在Android中 最好選擇最新的Android4.2.2(確保Andorid模擬機中已經下載好了4.2.2的API)

4.打開項目的AndroidMainfest.xml
把android:icon="@drawable/icon">一行改為android:icon="@drawable/ic_launcher">
android:minSdkVersion="8"
把8改成14
android:minSdkVersion="14"
關閉AndroidMainfest.xml save changes選yes
在src/org.cocos2dx.lib/Cocos2dxActivity.java中
在// ...add to FrameLayout
framelayout.addView(this.mGLSurfaceView);
這句後面加上一句(如果沒有):
this.mGLSurfaceView.setEGLConfigChooser(8 , 8, 8, 8, 16, 0);

打開工程jni目錄下的Android.mk
MY_CPP_PATH := $(LOCAL_PATH)/ \
$(LOCAL_PATH)/../../Classes/
MY_FILES_SUFFIX := %.cpp
My_All_Files := $(foreach src_path,$(MY_CPP_PATH),$(shell find $(src_path)/.))
My_All_Files := $(My_All_Files:$(MY_CPP_PATH)/./%=$(MY_CPP_PATH)%)
MY_CPP_LIST := $(filter $(MY_FILES_SUFFIX),$(My_All_Files))
MY_CPP_LIST := $(MY_CPP_LIST:$(LOCAL_PATH)/%=%)

LOCAL_SRC_FILES := $(MY_CPP_LIST)

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes
LOCAL_C_INCLUDES += $(shell ls -FR $(LOCAL_C_INCLUDES) | grep $(LOCAL_PATH)/$)
LOCAL_C_INCLUDES := $(LOCAL_C_INCLUDES:$(LOCAL_PATH)/%:=$(LOCAL_PATH)/%)

把cocos2d-x引擎的根目錄的cocos2dx/platform/android/java/src文件夾下org文件夾 復制到項目的src包(test/proj.android/src)下替換org文件夾

5.把xcode中所有的自建的類文件(包括.h和.cpp)復制到cocos2d-x-2.1.1/test/Classes
所有的資源文件復制到cocos2d-x-2.1.1/test/Resources
工程的圖標文件放在cocos2d-x-2.1.1/test/res下的文件夾中

至此工程配置完畢。
在對工程作出修改,比如加入/替換新的資源文件,class後,最好對工程clean一下,如果clean後還出現問題,可以重新執行一下build_native命令。

Test 的 模擬器配置

最後,執行以下步驟可以把xcode和eclipse相關聯,讓在xcode中做的更改,eclipse可以自動做出更改。
1.打開Xcode中的test項目(項目名和eclipse中的相同)
選擇classes分組,點刪除,選擇Move to Trash
2.在工程中添加新group,還命名為classes,右鍵classes->addFIles
然後把cocos2dx/test/classes中的類都添加回來,這樣eclipse和xcode就公用了這些文件,在一個中做出更改,另一個里就會自動更改,如下圖:

另:1. Android聯網
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
2.android中的R文件 ,是伴隨著加入資源等自動更新的
Android 在開發中會自動生成一個 R.java 文件 ,這個文件是自動生成的,最好不要去改。不過有時候這個 java 文件會跟我們捉迷藏,在程序中 R.xx.xxx 會出現經常報錯現象。
1 對著工程點擊滑鼠右鍵 選擇 Build Project,R.java 文件又回來。這樣R.xx.xxx 就能 X 的出來了。

如果不行 試用第二種 方法

2 選擇eclipse/myeclipse 的 clean 這樣R文件也會出現
如果還不行 試用第三種

3 經過上面兩種方法都不行 使用絕招 從別的工程中拷貝一份R文件過來 然後string.xml里隨便改動一下 即可更新R文件
如果還不行 試用第四種

4 經過上面的3種方法都不行 說明我們的工程有問題 好好檢查吧
比如resoure資源中的文件 命名,例result_main.xml,如果寫成Result_main.xml是錯誤的 需要全部小寫

3. 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系統比較蹩腳。

4. 如何解決cocos2dx 在android系統的音效bug

您好,很高興為您解答:
SimpleAudioEngine是cocos2d-x播放聲音、音效的引擎。像對於背景音樂會提供一個判斷當前背景音樂是否播放完畢的介面,但是查了半天,音效並沒有提供類似的介面, 大體看了下SimpleAudioEngine.cpp的實現,感覺自己寫一個是可以的,所以將代碼貼出來,跟大家分享下。

SimpleAudioEngine.h文件中添加以下函數定義:

//判斷當前音效是否已經播放完
bool getEffectIsPlaying(unsigned int nSoundId);

SimpleAudioEngine.cpp函數實現,比較簡單:
//判斷當前音效是否已經播放完
bool SimpleAudioEngine::getEffectIsPlaying(unsigned int
nSoundId)
{
EffectList::iterator p =
sharedList().find(nSoundId);
bool bRet = false;
if (p !=
sharedList().end())
{
bRet =
p->second->IsPlaying();
}
return bRet;
}復制代碼

註:修改後將libCocosDenshion類庫重新編譯一下。只要通過我們的soundid參數,便可找到MciPlayer,這樣就好處理了。

5. cocos2dx中怎麼調用android的代碼實現錄音功能

加入android有調用錄音功能的api的話 可以使用jni調用android的函數

6. cocos2dx c++調用android瀏覽器打開url如何實現,網上很多案例都不行!

使用java代碼寫一個static的函數,在java中調用android瀏覽器打開url,這樣才行,比如


publicstaticvoidstartURL(Stringurl){
IntentmIntent=newIntent(Intent.ACTION_VIEW);
mIntent.setData(Uri.parse(url));
startActivity(mIntent);
}

然後你在你的C++中調用startURL 就可以了

7. cocos2dx怎樣設置ios和Android橫屏豎屏的幾種方法

只需要在RootViewController.mm文件裡面
1
- (BOOL):(UIInterfaceOrientation)interfaceOrientation {

return ( interfaceOrientation );
}

// For ios6, use & shouldAutorotate instead
- (NSUInteger) {
#ifdef __IPHONE_6_0
return ;
#endif
}
- (BOOL) shouldAutorotate {
return NO;
}

2
if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) {

[[UIDevice currentDevice] performSelector:@selector(setOrientation:)
withObject:(id)];
}
}
//但是
- (BOOL) shouldAutorotate {
return NO;
}//一定要返回no

可以設置view與電池條方向保持一致
在AooController.mm中
<span style="font-size:18px;">- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions </span>

這個函數中加一句話

[[UIApplication sharedApplication] setStatusBarOrientation:UIDeviceOrientationPortrait animated: NO];

android項目修改為橫屏的方法是修改xml文件:
打開項目中的AndroidManifest.xml文件中,

screenOrientation="landscape" 為橫屏,
screenOrientation="portrait"為豎屏

8. 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路徑加入到系統路徑中也是為了好調取這兩個命令

閱讀全文

與cocos2dx調試android相關的資料

熱點內容
幻影伺服器怎麼樣 瀏覽:27
具體哪些廣東公司招程序員 瀏覽:867
嵌入式編譯器教程 瀏覽:302
ssl數據加密傳輸 瀏覽:86
51單片機定時器方式2 瀏覽:330
命令行查看開機時間 瀏覽:812
python微博復雜網路分析 瀏覽:550
rf3148編程器 瀏覽:505
浙江標准網路伺服器機櫃雲主機 瀏覽:587
設置網路的伺服器地址 瀏覽:600
java圖形界面設計 瀏覽:751
純前端項目怎麼部署到伺服器 瀏覽:538
瓜子臉程序員 瀏覽:505
如何保證伺服器優質 瀏覽:94
小微信aPP怎麼一下找不到了 瀏覽:299
演算法纂要學術價值 瀏覽:975
程序員你好是什麼意思 瀏覽:803
倩女幽魂老伺服器如何玩 瀏覽:563
電子鍾單片機課程設計實驗報告 瀏覽:1001
看加密頻道 瀏覽:383